Buone risorse e strumenti per lo sviluppo JavaScript moderno e pesante? [chiuso]


22

Sono interessato a realizzare alcuni progetti che prevedono un uso intensivo di JavaScript. Vale a dire giochi di tela basati su HTML5, che potenzialmente utilizzano anche node.js. Sono interessato ad apprendere le migliori pratiche, strumenti e risorse moderne per JavaScript.

JavaScript è difficile da ricercare perché finisci per sfogliare un sacco di materiale davvero obsoleto, proveniente dai tempi in cui "JavaScript" era una parola di quattro lettere.

Se sei fortemente coinvolto nella programmazione JavaScript ...

  • Quale editor di testo o IDE usi?
  • Quale framework di test unitari usi?
  • Usi il selenio o qualcos'altro?
  • Quali altri strumenti usi?
  • Quali comunità esistono che discutono dei recenti progressi in JavaScript?
  • A quali libri leggi / fai riferimento?
  • Quali blog leggi?


Un paio di fantastici blog che ho letto: dailyjs.com - Alcuni grandi post riguardanti nuove librerie e framework nell'arena JS con un forte focus su Node.js. perfectionkills.com - Non aggiornato molto spesso ma quando Kangax scrive un articolo, approfondisce molto, ti renderai conto di quanto JS non conosci.
Matt Molnar,

Web editor Adobe Brackets: github.com/adobe/brackets - scritto principalmente in javascript utilizzando il framework incorporato al cromo. Anche un articolo interessante su come hanno costruito l'editor di parentesi (parlando di strumenti, framework usati): ec2-174-129-28-157.compute-1.amazonaws.com/2012/06/26/…
Czarek Tomczak

Wow, questa domanda potrebbe usare un aggiornamento.
Erik Reppen,

Risposte:


19

La mia lista sarebbe:

I libri sono obsoleti non appena colpiscono gli scaffali (in genere).


7
A ciò aggiungerei anche il doc center di mozilla nella sezione di riferimento.
Trezoid,

2
+1, è praticamente la mia lista, ma aggiungerei anche YUI Compressor (o il compilatore di Google Closure).
Demian Brecht,

Pagespeed è anche buono per l'opzione "Profile Deferrable Javascript". Non strettamente uno strumento di codifica JS, ma comunque molto utile.
Ed James,

2
@RDL - quali sono i plug-in javascript usati per vim?
Mike H,

Noto che qui non sono stati raccomandati strumenti / framework di unit test, nonostante sia stato così altamente votato ...
NT3RP

9

Quale editor di testo o IDE usi?

Tutti hanno il supporto per funzionalità complete di sviluppo di app Web (JavaScript, HTML, CSS ecc.). Scegli Aptana, se stai cercando una soluzione freeware.

Quale framework di test unitari usi?

  • Selenio

    1. Dispone di supporto multi browser [IE, Firefox, Chrome, Safari, Opera e Konqueror] su più piattaforme [Windows, Linux, Macintosh ecc.].
    2. Supporto per molti linguaggi di programmazione per scrivere casi di test [HTML, Java, C #, Perl, PHP, Python, Ruby ecc.].
    3. Esecuzione remota (i casi di test si trovano su una macchina e l'esecuzione sul browser può avvenire su una macchina diversa).
    4. Puoi eseguire regressioni anche in modalità ridotta al browser

Quali altri strumenti usi?

  • Firebug, IE Dev Tool Bar ecc., Strumenti integrati nel browser per il debug
  • È possibile utilizzare alcuni framework di libreria UI come JQuery, YUI, ExtJS ecc. Per uno sviluppo rapido.
  • Fiddler / HTTP Watch per il debug di richieste e risposte HTTP.
  • JSLint per verificare alcuni problemi di sintassi javascript.
  • YUICompressor per la minimizzazione di codice HTML, CSS e Javascript.
  • DynaTrace / YSlow / Page Speed ​​- per test delle prestazioni
  • setaccio per rilevare perdite di memoria
  • IE Tester per testare l'applicazione su diverse versioni di IE.

A quali libri leggi / fai riferimento?

Di Più


1
Il selenio è uno strumento di test di integrazione, non un test unitario! Il resto di questo è praticamente perfetto secondo me: D
Ed James,

1
jQuery è una libreria per molto più dell'interfaccia utente, jQueryUI è una libreria completamente separata.
Stuper:

@StuperUser bugie. jQuery è una libreria per la manipolazione del DOM, tutto il resto lo utilizza come un grosso martello e uno "strumento d'oro che risolve tutti i problemi"
Raynos,

@Raynos, jQuery è un grosso martello quando viene utilizzato per la manipolazione del DOM quando JavaScript lo farà. Ha sicuramente guadagnato lo status di meme degno per la sua reputazione di panacea. Come abbiamo detto entrambi, definirlo una "libreria UI" non è preciso.
Stuper: l'

@StuperUser: suppongo che intendesse davvero l'interfaccia utente di jQuery
Lie Ryan,

6

Sento ancora che gli strumenti disponibili per un serio sviluppo di JavaScript sono molto indietro rispetto a dove dovrebbero essere, ma qui ci sono alcuni di quelli che uso.

  • Per lo sviluppo utilizzo VIM, ma potresti trovare netbeans da provare.
  • Per i test unitari il gelsomino è buono ma non perfetto.
  • EnvJs può darti un buon modo di eseguire i test unitari sulla riga di comando
  • Consiglio vivamente la parte webdriver di selenio 2
  • La suite di chiusura completa di Google è molto utile
  • Ti consiglio anche di sapere come utilizzare Google Chrome e IE per il debug lungo il firebug laterale in quanto tutti hanno le loro idiosincrasie che possono mandarti in ogni sorta di vicoli ciechi.
  • Ci sono alcune librerie eccellenti per JavaScript che sono praticamente essenziali per uno sviluppo serio. Ti consiglierei di iniziare con jQuery ma ce ne sono molti altri altrettanto buoni.
  • anche l'autore di jQuery John Resig ha un blog utile

stessa domanda che ho appena posto per RDL: quali (se presenti) plug-in vim usi per javascript?
Mike H,

@ Mike Non utilizzo alcun plug-in specifico per JavaScript per VIM. Consiglierei jsctags che si integrerà con tutti i plugin che usano ctags, ad esempio taglist-plus
Duncan Grant,

5

Bene ... sebbene lungi dall'essere completo, attualmente sono lo sviluppatore principale di un nuovo progetto open source multipiattaforma:

JS Studio

Ecco uno screenshot:

Alcune delle funzionalità sono più complete di altre ... ma ecco gli obiettivi previsti:

  • Evidenziazione della sintassi (praticamente completa)
  • Organizzazione del progetto (parzialmente implementata)
  • Completamento automatico (incluso il completamento per framework JS comuni come jQuery, ecc.)
  • Sistema di compilazione (per combinare file, minimizzazioni, ecc.)
  • GUI estensibile (tramite estensioni JavaScript)
  • Numerazione delle righe (tipo completo), a capo automatico, colori configurabili per l'evidenziazione della sintassi

Ho impostato build giornaliere per Windows e puoi trovare la build più recente qui: http://files.quickmediasolutions.com/jsstudio/


Questo sembra interessante. Ho cercato un buon IDE JavaScript. Esiste un file binario che può essere scaricato? Non ne ho visto nessuno sulla pagina web.
Jonas,

@Jonas: Sfortunatamente, in questa fase iniziale, esiste solo un binario per Ubuntu. Ma spero di avere il tempo di creare un binario di Windows più avanti.
Nathan Osman,

@Jonas: build Windows molto presto qui - alcune cose non funzionano ancora, ma puoi almeno aprire / salvare file e poche altre cose.
Nathan Osman,

qualche nuovo sviluppo su questo fronte?
Noctis,

@Noctis: Purtroppo no. Ho riscontrato alcune complicazioni nell'implementazione del completamento del codice e il progetto è rimasto sostanzialmente inattivo per l'ultimo o due anni.
Nathan Osman,

4

Nella categoria "altri strumenti", uso CoffeeScript (un linguaggio che si compila in JavaScript), perché toglie i dolori che la sintassi di Javascript mi ​​impone.

list.sort (a, b) -> a.isSmaller(b)

contro

list.sort(function(a, b) { return a.isSmaller(b) });

Si potrebbe obiettare, tecnicamente che non è più javascript, ma la "sensazione" di coffescript è che si tratta solo di un sottile strato.


3

L'API per la libreria jQuery http://api.jquery.com/ e una copia ben evidenziata di jQuery In Action . Leggi copertina per copertina e quindi segui http://twitter.com/jquery per ottenere gli aggiornamenti nelle nuove versioni.

Hai detto che i libri non sono aggiornati, ma dovrai acquisire un livello base di conoscenza su cui basarti, quindi una volta che sei aggiornato, tieniti aggiornato.

Qunit per unit testing e Firebug e evidenziazione della sintassi JavaScript per Firebug per il debug.



0

Spero che non si infiammino troppo per questo, ma se cose come IDE e strumenti sono importanti per te, ti consiglio vivamente di guardare Google Web Toolkit . Scrivi il tuo codice in Java in Eclipse, che aiuta davvero a scrivere il tuo codice. Fornisce un completamento del codice altamente efficace, utilità di refactoring e aiuta a eseguire il debug e navigare attraverso la base di codice.

Puoi ancora andare in Javascript non elaborato quando è necessario.

Il codice viene quindi compilato in JS ottimizzato e minimizzato. Ho usato questo approccio con successo in un ambiente DOMless JS simile a node.js.

Per i giochi HTML5, controlla PlayN che è una libreria che utilizza GWT proprio per questo.


Se hai intenzione di compilare JavaScript da un'altra lingua comunque, ci sono molte scelte: non devi assolutamente usare Java! Ad esempio, stiamo usando js_of_ocaml al lavoro in modo da poter scrivere il nostro codice in OCaml ed eseguirlo sul browser.
Tikhon Jelvis,

0

Faccio molto sviluppo JavaScript. Molti di questi sono menzionati ma, ecco quello che uso:

  • Notepad ++
  • Firebug
  • Debugger di IE (F12) e debugger di Chrome (F12 su Windows)
  • Uso Stack Overflow principalmente per domande. Anche venire qui si è rivelato utile.
  • Il primo libro che ho usato è stato JavaScript: la guida definitiva di quando. Attualmente non uso libri tanto quanto uso siti come documenti MDN o MSDN.
  • Usiamo alcuni jQuery in luoghi in cui ci semplifica la vita.
  • Per i test unitari costruiamo i nostri cablaggi di prova.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.