ugrás a tartalomhoz

javascript IDE

Burnee · 2011. Okt. 24. (H), 10.02
Sziasztok!

Keresek javascript-hez olyan fejlesztőkörnyezet, amely kielégíti az alábbi igényemet:
Ha definiálok egy file-ban egy osztályt/függvényt, és a projectben egy másik file-ban példányosítom azt, akkor annak használatát segítse a kódkiegészítés a definíció szerint.

Tehát, ha az egyik file-ban szerepel ez:
  1. var Cucli = new Function() {  
  2. this.type = "Cucli";  
  3. this.cucliMethod = function() { alert( this.type );};  
  4. }  

és a projectben egy másik file-ban pedig ez:
  1. var cucli = new Cucli();  
  2. cucli.//... itt már ajánlja fel, a type tulajdonságot és a cucliMethod metódust!  
Tud valaki segíteni, vagy a nyelv sajátosságai miatt nem is létezik ilyen környezet?
 
1

Több lehetőség

Poetro · 2011. Okt. 24. (H), 11.15
A ActiveState Komodo, NetBeans és az Eclipse JavaScript kiadása részben teljesítik ezt. Amennyiben jobbra vágysz, ott van például az Aptana és a JetBrains WebStorm, amik kifejezetten jó ezekben.

Viszont a new Function részt nem értem. Az ugye nem komoly? Mert azt szerintem semmi nem fogja kezelni. Helyette
  1. function Cucli() {    
  2.   this.type = "Cucli";    
  3.   this.cucliMethod = function() { alert( this.type );};    
  4. }  

vagy
  1. var Cucli = function () { /*... */}  
A new Function dolgot legjobb, ha el is felejted.
2

Kis f-fel működik (3. eset).

Hidvégi Gábor · 2011. Okt. 24. (H), 12.29
3

de mégsem

Burnee · 2011. Okt. 24. (H), 13.13
re!

Aptanát tettem fel, mert ezt ajánlották, de valamiért mégsem működik. Ha simán egy file-ban létrehozok egy objektumot, akkor azzal okosan bánik, de ha egy külön file-ba mondjuk behúzom a raphael.js-t, azzal már nem tud mit kezdeni.
Sokat keresgéltem, de valahogy nem jutok tovább.
Van valami pontos leírás? (esetleg tudsz segíteni online?)

(a kód lényegtelen, csak gyorsan begépeltem, csodálkozom, h csak ennyi hiba van benne)
4

Olyat keress, ahol lehet

Hidvégi Gábor · 2011. Okt. 24. (H), 13.21
Olyat keress, ahol lehet projekteket kezelni, mert az képes felismerni és beolvasni a projekt másik fájlját, és a kiegészítést abból (is) venni.
5

Az Eclipse és a rá épülő

Karvaly84 · 2011. Okt. 24. (H), 15.14
Az Eclipse és a rá épülő dolgoknál ügyelni kell a megfelelő projekt típusra. Ha csak simán egy natúr projektet készítesz akkor nem kezeli a JavaScript-et csak a szintaxis kiemelés fog működni, ha leszeded a PHP, vagy WTP, verziót akkor tudsz olyan projektet készíteni ami támogatja a JavaScript-es kód kiegészítést is. Ezen felűl van egy olyan az Eclipse-ben, hogy Faceted Project ami egy olyan projektet hoz létre amihez te tudsz támogatást hozzá adni menet közben, A Static Web, és a JavaScript projektek alapból támogatják a kód kiegészítést, a JavaScript Core, és a DOM level 1-es szintig, de ezt tudod bővíteni a Mozilla specifikus dolgokkal is pl, vagy saját likebkel, ha a projektbe definiálod azokat a könyvtárakat ahol a fájlok megvannak, ha dokumentálva is van akkor a tolltip-ben fel is ugrik a dokumentáció gépelés közben, Viszont ha pl. úgy hozol létre egy osztályt mint mondjuk Prototype.js-ben, hogy:
  1. var MyClass = Class.create({  
  2.    myMethod : function() {}   
  3. });  
Akkor a kód kiegészítés nem fog működni. Én külön fájlba szoktam írni a dokumentációt és annak a útvonalát adom a projekthez.
  1. /** 
  2.  * MyClass 
  3.  * @class 
  4.  */  
  5. function MyClass() {}  
  6.   
  7. /** 
  8.  * Metódus leírás... 
  9.  * @param a Első paraméter. 
  10.  * @param b Második paraméter. 
  11.  * @return Visszatérési érték. 
  12.  */  
  13. MyClass.prototype.myMethod = function(a, b) {};  
6

+1 Komodo Edit

rrd · 2011. Okt. 25. (K), 17.41
+1 Komodo Edit