CoffeeScript er JavaScript uten hodepine
Jeg har aldri likt å skrive JavaScript Hva er JavaScript og hvordan fungerer det? [Teknologi forklart] Hva er JavaScript og hvordan fungerer det? [Teknologi forklart] Les mer alt så mye. Fra den dagen jeg skrev min første linje ved hjelp av den, har jeg alltid irritert at det jeg skriver i det ender opp med å se ut som et Jackson Pollock-maleri. Blegh.
Jepp. Til tross for sin kraft og fleksibilitet er JavaScript på ingen måte et pent språk. Det krever ekstreme ekstreme og har så mange quirks og idiosyncrasies, selv den mest berømte boken om JavaScript-programmeringsspråket nikker til sin iboende nastiness med tittelen 'JavaScript: The Good Parts'.
Et bedre JavaScript
Det trenger ikke å være denne måten skjønt. JavaScript har et vell av fantastiske verktøy og biblioteker, og hvis du bruker CoffeeScript, kan du lage briljante nettsteder og verktøy uten å håndtere syntaks som gjør at hornhinnen bløder. Det er også CoffeeScripts tid å skinne, ettersom flere og flere nybegynnere ser på JavaScript for sitt morsmål på grunn av bruk i klient- og tilbakeleveringsnettutvikling, så vel som mye av HTML5.
Estetisk ser CoffeeScript ut og føles som Python eller Ruby. De 5 beste nettstedene å lære Python programmering De 5 beste nettstedene å lære Python programmering Ønsker du å lære Python programmering? Her er de beste måtene å lære Python på nettet, hvorav mange er helt gratis. Les mer Det er oppriktig, utrolig vakkert, og vedtar visse språkkonvensjoner som gjør det enkelt å lære. Det føles mer som en Rembrandt enn en Pollock. Og likevel kompilerer det ned til JavaScript, slik at du kan bruke det overalt hvor du bruker det, inkludert frontend-utvikling og node.js. Du kan til og med bruke den med jQuery jQuery Tutorial - Komme i gang: Grunnleggende & Selectors jQuery Tutorial - Komme i gang: Grunnleggende og Selectors I forrige uke snakket jeg om hvor viktig jQuery er for enhver moderne webutvikler og hvorfor det er kjempebra. Denne uken, jeg tror det er på tide at vi fikk våre hender skitne med noe kode og lærte hvordan ... Les mer .
Å få tak i CoffeeScript er enkelt. Det finnes en rekke måter du kan installere på. For det første, hvis du bruker en nylig versjon av Ubuntu Linux, kan du installere den ved hjelp av den innebygde pakkebehandleren. Erfaring, forteller meg imidlertid at det er sannsynlig at versjonen i dine arkiver er en eldre versjon.
Som et resultat er det sannsynligvis en god ide å ta tak i det med Node Package Manager. Node Package Manager (npm) er litt som apt-get eller Brew, men er bare virkelig brukt for å få Javascript-pakker og biblioteker. Handily kommer NPM med node.js og er tilgjengelig for OS X, Windows og alle smaker av Linux.
For å installere den ved hjelp av NPM, kjør følgende kommando som root:
$ npm installere -g kaffe-script
'-G' utløseren installerer den globalt, slik at du kan bruke CoffeeScript hvor som helst på datamaskinen, og å påkalle den fra kommandolinjen uansett hvor du er. Du er nå klar for en god del CoffeeScript-moro.
“Det er bare JavaScript”
Det er viktig å huske at den gyldne regelen for CoffeeScript er “Det er bare JavaScript”. Dette er både en fordel, men også en ulempe. Hvis du har hatt sjansen til å se Gary Bernhardts morsomme snakk, 'Wat', vil du vite at JavaScript har sin andel av vorter og raritet. For det meste deler CoffeeScript disse. Tross alt er det egentlig en abstraksjon av JavaScript.
Dette er imidlertid ikke helt en dårlig ting. For det første kan du bruke CoffeeScript med dine Node-, Angular-, Express- eller Backbone-prosjekter. I tillegg til dette kan du også bruke Googles V8 JavaScript-motor, som er en veldig rask tolk for Javascript. Uansett hva du gjør, kan du være trygg på at det er ansiktssmeltende raskt.
Jeg må tilstå at jeg kan være litt partisk. Etter å ha hatt muligheten til å bruke de siste par månedene til å skrive mye CoffeeScript i dagjobben, kan jeg bekrefte hvor nydelig det er. Faktisk, gitt min tidligere eksponering for det, vil jeg oppriktig oppfordre nybegynnere og reisearrangører til å se på som startspråket.
Kanskje en av de mest overbevisende grunnene til at jeg er så ivrig etter å espouse CoffeeScript-dydene, er fordi jeg føler at den har vedtatt noen utrolig innovative språkdesignvalg som krever god programvareutviklingspraksis. Dette betyr at uansett kode du skriver, er odds bra at det blir ganske lesbart.
Spesielt krever CoffeeScript at du strekker inn all kode på en fornuftig og logisk måte. Uansett hvilken kode du produserer, må den følge et logisk hierarki. Hvis den ikke klarer det, roper CoffeeScript-kompilatoren på deg og nekter å utføre koden din. Dette vil begynne å føle seg altfor kjent hvis du noen gang har skrevet noen kode i Python.
Jeg har observert at CoffeeScript ble tydelig opprettet med et mål om å være virkelig uttrykksfulle. Synaktisk er det bemerkelsesverdig som vanlig engelsk, om enn med noen ekstra parenteser og piler forsiktig spredt rundt i stedet. En fordel for dette er at det blir trivielt å uttrykke strømmen av programmet muntlig. Hendig hvis du er en nybegynner som prøver å få tilbakemelding på koden din fra noen mye mer erfarne, eller jobber for et programvareutviklingsselskap som i stor grad bruker parprogrammering, for eksempel den jeg gjør.
Videre legger til sin nybegynnervennlige legitimasjon, i den korte perioden som den har eksistert, har CoffeeScript klart å utvikle et ganske aktivt og vennlig fellesskap. Stakkede nybegynnere er mer enn velkommen til å få tilgang til dem med spørsmål, og for det meste er de vanligvis glade for å svare. I tillegg til en sterk tilstedeværelse på Stack Overflow, et offisielt nettsted som inneholder en CoffeeScript-tolk på selve siden og mange publikasjoner om det, ville du bli presset hardt for å finne deg selv fast for lenge.
Et vakkert språk
Greg Pollack, grunnleggeren av Code School, definerer et vakkert programmeringsspråk som en som gjør det mulig for utvikleren å få mest mulig utbytte mens man bruker en minimal mengde kode. Ved denne definisjonen er CoffeeScript et vakkert programmeringsspråk. Fra bakken føles det bare bemerkelsesverdig godt utformet.
Kanskje et av de mest fornuftige valgene det gjør, er å forlate JavaScript's vanvittige prototypebasert måte å gjøre objektorientering på. I stedet erstattes det med et langt mer elegant system som er basert på klasser, som vil være kjent for alle som har dabbled i noen av de mest populære OOP-baserte språkene der ute. Dette reduserer barrieren for oppføring for mange programmerere drastisk. Det gjør også dette, mens det ikke er fullstendig jettisoning dets funksjonelle legitimasjonsbeskrivelser.
Språket i seg selv føles litt mindre vektig også. Store skiver av CoffeeScripts bulk er ekskludert. Variabler er ikke deklarert med "var". Parenteser og krøllete braces er nesten like sjeldne som en Bengal tiger. Du trenger ikke engang parenteser å passere i parametere til en funksjon. Hver funksjon returnerer noe, noe som gir deg en mindre ting å bekymre seg for. Mind blåser ting.
Til tross for den åpenbare ungdommen har CoffeeScript fått stor oppmerksomhet, og av meget gode grunner. CoffeeScript ble nylig inkludert som standard i Ruby on Rails, nettverket som driver nettsteder som Github og Groupon. Det er ikke bare selskaper som flocker til det i kjedene, da utviklere har begynt å omfavne det og har skapt et vell av CoffeeScript-plugins, inkludert for Sublime Text 2 Prøv ut Sublime Text 2 For Kors-Platform Kod Redigering Trenger Prøv Sublime Tekst 2 For Kryssplattform Kode Redigeringsbehov Sublime Tekst 2 er en korsplattformskodeditor som jeg nylig har hørt om, og jeg må si at jeg er veldig imponert til tross for beta-etiketten. Du kan laste ned hele appen uten å betale en krone ... Les mer og Vim. Dette betyr at du ikke trenger å gå uten syntaxutheving og kodeavslutning for å bruke den nyeste, skinneste hipster-webteknikken.
Konklusjon
CoffeeScript er et frisk pust, og er et godt tillegg til noen utviklere verktøykasse. Det er imidlertid små niggles som forringer erfaringen med å utvikle seg i den som håper vil bli løst i senere iterasjoner av produktet ...
For det første, til tross for at feilhåndtering er fantastisk eksplisitt om problemet du har møtt, er det ikke alltid så klart hvor problemet er. Da får du beskjed om linjen som har feil kode, det er sjelden i CoffeeScript-koden du har opprettet, men det er heller ikke i kompilert JavaScript. Dette betyr at du må gå gjennom den irriterende prosessen med å kompilere koden til JavaScript for å feilsøke den. Utrolig unhelpful.
Jeg har siden lært at hvis du kompilerer koden din og piper den til 'nl -ba', er de utgitte resultatene betydelig lettere å lese og inneholder fornuftige linjenumre.
En annen irritasjon jeg personlig opplevde var når du leser dokumentasjon er skrevet i Javascript, må du mentalt oversette den til CoffeeScript. Selv om dette i utgangspunktet er en viktig årsak til frustrasjon og irritasjon, fant jeg ut at dette eksisterer når du begynner å bli vant til språket. Det er bare et spørsmål om utholdenhet.
CoffeeScript gjenoppretter hjulet. Det er ingen tvil om det. Det gjenoppliver imidlertid hjulet, og omdanner det til et rhinestonesat, bedazzled, sparkly hjul. CoffeeScript er virkelig et vakkert hjul. Vil du flytte til CoffeeScript for din daglige utvikling? Gi meg beskjed i kommentarene.
Utforsk mer om: JavaScript, Programmering, Webutvikling.