Sommario
CoffeeScript è un linguaggio che ci permette di scrivere codice JavaScript migliore, questo unificandolo e inquadrandolo sotto la stessa struttura, dove saremo sicuri che il codice JavaScript creato da CoffeeScript da un altro sviluppatore sarà identico al nostro.Ma questo non è tutto ciò che offre CoffeeScript, inoltre ha uno strumento chiamato Torta, simile a Grunt che ci consente di definire semplici compiti per aiutarci con i nostri progetti, poiché è possibile che abbiamo bisogno di un compito per eseguire test o semplicemente uno per costruire i nostri file e possiamo fare tutto questo con Torta attraverso un file chiamato file torta.
RequisitiPer completare questo tutorial dobbiamo avere un'installazione funzionale di CoffeeScript, abbiamo anche bisogno delle autorizzazioni per scrivere file ed eseguire CoffeeScript sul computer dove stiamo facendo il tutorial. Abbiamo bisogno di un editor di testo come Testo sublime poter scrivere il codice dei nostri esempi e non fa mai male dare un'occhiata ai tutorial passati del linguaggio.
Prima di iniziare è importante ricordare che non è necessario installare Torta, al momento della nostra installazione iniziale di CoffeeScript lo strumento è installato allo stesso modo, quindi non è necessario fare altro per iniziare a lavorarci.
Sapendo questo possiamo iniziare a lavorare con Torta, ma dobbiamo capire che tutte le attività che creiamo devono trovarsi in un file chiamato file torta, che deve avere esattamente lo stesso nome poiché cakefile sarà un file completamente diverso e non verrà riconosciuto dal compilatore.
Questo file deve essere alla radice del nostro progetto ed è estremamente importante che il suo contenuto sia solo codice CoffeeScript. Chiarito questo, vediamo come creare il nostro primo compito con Torta.
Creeremo una cartella chiamata cakefile_esempio e lì creeremo un file chiamato Cakefile.caffè e conterrà il seguente contenuto:
task "saluto", "Diamo il benvenuto alla grande comunità di Solvetic", -> console.log "Hello, World!"Prima di spiegare il nostro codice lo compileremo e vedremo il contenuto generato in JavaScript, questo non è necessario poiché non vedremo mai questo codice, ma questa volta potremmo usarlo per capire meglio cosa sta facendo CoffeeScript, vediamo l'output:
INGRANDIRE
L'esempio precedente era solo per controllare cosa stava facendo il compilatore, ma il nostro file file torta non deve avere alcuna estensione. Possiamo inoltre vedere quali attività abbiamo a disposizione con il comando torta Nella console dei comandi, vediamo come appare:
La prima cosa che dobbiamo fare nel nostro compito è definire l'opzione, lo facciamo con la funzione opzione a disposizione Torta. Questa funzione richiede tre argomenti, il primo è la forma breve dell'opzione, il secondo è la forma lunga e l'ultimo è una descrizione di cosa fa l'opzione, qualcosa di importante se stiamo sviluppando come una squadra e vogliamo documentare i nostri compiti. Apportiamo quindi le modifiche al nostro compito per definire l'opzione:
option '-n', '--name [NOME]', 'nome da salutare' task "saluto", "Diciamo ciao a qualcuno", (opzioni) -> messaggio = "Ciao", if options.name? message + = options.name else message + = "World" console.log messageCome vediamo prima della definizione di compito abbiamo la nostra funzione opzione, seguito dalla forma breve che sarebbe -n, quindi abbiamo la forma lunga che sarebbe -name specificando che si aspetterà un valore e infine la descrizione. Eseguiremo il comando cake e vedremo l'output nella nostra console:
Inoltre possiamo definire se è richiesta un'opzione e lo facciamo nella definizione dell'attività controllando se il valore esiste e se non generiamo un errore, vediamo come appare questo codice:
opzione '-n', '--name [NOME]', 'nome che vuoi salutare' task "saluto", "Verifica che l'opzione esista", (opzioni) -> genera un nuovo errore ("[NOME] è un valore richiesto ") a meno che options.name? console.log "Ciao, # {opzioni.nome}"Eseguiamo quindi il nostro compito ma questa volta ignorando l'opzione come argomento e vediamo la risposta dalla console:
Avendo già visto come creare le nostre attività e definire le opzioni per esse, è importante vedere come possiamo eseguire le attività che si trovano all'interno degli altri. Ad esempio, possiamo avere due attività in comune in un progetto in cui una delle attività è responsabile della pulizia delle directory che abbiamo creato per il progetto e l'altra è responsabile della compilazione e della costruzione, vediamo come queste due attività che abbiamo appena finito di assomigliare a descrivere:
task "clean", "Questo task esegue la pulizia delle directory", -> console.log "cleaning the dir …" task "build", "Crea e compila i file per il progetto", -> console.log "costruzione…"Stiamo per eseguire il comando torta e vediamo la risposta attraverso la console:
Il problema è che questa soluzione non è ottimale, se per qualche motivo ci dimentichiamo di chiamare l'attività pulita o peggio, la nostra attività di compilazione avrà problemi con la nostra terza attività, fortunatamente Cake ci consente di chiamare un'attività all'interno di un'altra con la funzione invocare, quindi vediamo come appare il nostro file file torta con il nuovo compito e le modifiche:
task "clean", "Questo task esegue la pulizia delle directory", -> console.log "cleaning the dir …" task "build", "Crea e compila i file per il progetto", -> console.log "costruzione … "task" pack "," clean, build and pack our project ", -> invoke" clean "invoke" build "console.log" pack … "Ora non ci resta che chiamare il nostro packaging e in questo modo ci assicuriamo che gli altri due task richiesti vengano chiamati senza problemi, vediamo l'output nella console dei comandi:
Con questo concludiamo questo tutorial, dove abbiamo imparato a creare i nostri compiti, eseguirli, dare loro opzioni e persino come invocare altri compiti all'interno di altri, ampliando così le nostre conoscenze in questo linguaggio efficace che contribuisce alle migliori pratiche di qualsiasi sviluppo.Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo