12 kirjaa Jokaisen JavaScript-kehittäjän tulee lukea

Huomautus: Kuvassa satunnainen web-kirjojen kokoelma.

Olen suuri JavaScripti-kirjojen fani. Koska olen pitkään opiskellut JavaScriptiä, minulla on ollut ilo lukea paljon markkinoilla olevia suosittuja JavaScript-kirjoja. Nykyään ohitan yleensä aloittelijoille suunnatut, mutta luen silti paljon JavaScriptin kehittäjille tarkoitettuja kirjoja, joilla on vähän kokemusta.

Tämä on outo aika JavaScript-kirjoille. Koska olemme juuri saaneet merkittävän päivityksen JavaScript-kieleen ES6: ssa, tämän päivän JavaScript-syntaksi ja tyyli näyttävät aivan erilaisilta kuin useimmissa kirjoissa keskusteltu ES3-ES5-tyylin JavaScript, mutta koska ES6 on oikeastaan ​​vain ES5: n yläjoukko, vanhoista kirjoista löytyy edelleen oppimismääriä.

Toisin sanoen, vanhat kirjat eivät ole vanhentuneita, ne vain osoittavat ikäänsä vähän - jopa ne, jotka julkaistiin vasta 2 vuotta sitten. Vaikuttaa siltä, ​​että puhumme vanhuselle, joka käyttää edelleen 60-luvun slängia. Jos olet uusi JavaScriptiä, voi olla hauskaa löytää kaikki hulluja hakkereita, joita vanhat ajattelijat käyttivät sietääkseen vain argumenttien taulukkomenetelmien käyttämiseen. Nauti JS: n historiatunnista.

Jotkut JavaScript-yhteisön kirjoittajat ovat kirjoittaneet kirjoja, joiden tarkoituksena on opettaa sinulle ES6. Suosittelen lukemaan ne sen jälkeen, kun olet tottunut tuntemaan JavaScriptin perustiedot. Jos et vielä tiedä ES6: ta, lue “Kuinka oppia ES6: ta”.

Lopulta kaikki uudet JS-kirjan kirjoittajat pitävät ES6: ta itsestään selvänä ja sitten JS-kirjan maailma normalisoituu. Luetan suositukseni karkeasti oppimisjärjestyksessä.

Kuten muissakin kirjaviesteissäni, myös Amazon-linkit ovat kumppanilinkkejä, ja osa kuluttamasi rahaa käytetään kodittomuuden torjuntaan JSHomesin kanssa.

Tarpeeksi puhetta. Tuo kirjat esiin!

Kirjat

  1. Nick Morganin "JavaScript lapsille: leikkisä johdanto ohjelmointiin"

Tosin otsikko, tämä kirja on hassu etsintä hyvin perusohjelmoinnin käsitteitä, mutta älä anna sen huijata sinua. Lasten kirjat eivät ole vain lapsille tarkoitettuja kirjoja. Jos et ole koskaan koskenut koodia aiemmin, tämä on hyvä paikka aloittaa, vaikka oletkin kaikki aikuinen. Sukellus syvään päähän ennen kuin opit uimaan, voi olla turhauttavaa. On parempi, että aloitat harjoituksesi joihinkin helpoihin voittoihin.

2. Eric Elliottin "Säveltämisohjelmisto" (vastuuvapauslauseke: se olen minä) on toiminnallisen ohjelmoinnin ja esineiden koostumuksen etsintä JavaScriptillä. Kaikki ohjelmistosuunnittelu on koostumus: monimutkaisten ongelmien jakaminen pienemmiksi ongelmiksi ja näiden ratkaisujen muodostaminen. Suurimmalla osalla kehittäjiä on rajoitettu käsitys koostumustekniikoista. Sen on aika muuttua.

”Säveltävän ohjelmiston” osiossa Eric Elliott jakaa koostumuksen perusteet, mukaan lukien sekä funktion koostumuksen että esineiden koostumuksen, ja tutkii niitä JavaScriptin yhteydessä. Kirja kattaa sekä toiminnallisen ohjelmoinnin että olio-ohjelmoinnin perusteet, jotta lukija ymmärtää paremmin, kuinka rakentaa ja rakentaa monimutkaisia ​​sovelluksia yksinkertaisten rakennuspalikoiden avulla.

3. Marijn Haverbeken ”Eloquent JavaScript: moderni johdanto ohjelmointiin”

Tämä kirja on taideteos. Se opastaa tärkeät käsitteet läpi selkeän etenemissuunnitelman avulla selkeää kieltä. Se on mestarillisesti sävelletty ja muokattu, ja toisin kuin useimmat ohjelmointikirjat, se on täynnä harjoituksia, joita voit harjoittaa. Jos opettaisin ohjelmoinnin perusteita lukiossa tai yliopistossa, käyttäisin sitä oppikirjana.

4. “JavaScript: hyvät osat”, kirjoittanut Douglas Crockford

Se voi näyttää nyt järjetöntä, mutta kun tämä kirja kirjoitettiin, JavaScript oli silti nuori kieli, joka aloitti elämän pienenä komentosarjojen kielenä selaimissa. Tuolloin selaimet olivat vasta alkamassa tutkia vakavia sovelluskehittäjiä.

Ennen vuotta 2004 oli hyvin harvinaista nähdä todellisia sovelluksia käynnissä selaimessa. Selain oli tuskin vuorovaikutteinen. Tietojen siirtämiseksi palvelimelle tarvittiin sivujen uudelleenlataus, sillä ei ollut omaa tallennuskapasiteettia, josta olisi puhuttava. JavaScriptiä käytettiin ensisijaisesti triviaalien käyttöliittymätehosteiden, kuten hiiren hover-tilojen, luomiseen.

JavaScript oli kohde monille villeille "oikeilta ohjelmoijilta", jotka kirjoittivat koodia käännetyillä kielillä, kuten C / C ++, C # ja Java. Jos halusit tehdä mitään selaimen todellista ohjelmointia, käytit salamaa.

Noina päivinä JavaScriptiä oli helppo pilkata, ja kaikki näyttivät tekevän sen, mutta Douglas Crockford myönsi, että Brendan Eich piilotti joitain huppuja kielelle, jota ohjelmointijoukot ovat vasta alkaneet arvostaa. Tämä kirja tutkii näiden ominaisuuksien perusteita ja saattaa antaa sinulle uuden arvion siitä, kuinka erityinen ja tyylikäs JavaScript todella on.

5. “JavaScript-sovellusten ohjelmointi: vankka verkkoarkkitehtuuri solmu-, HTML5- ja moderni JS-kirjastojen kanssa”, kirjoittanut Eric Elliott (se olen minä)

Kun aloin palkkaamaan JavaScriptin kehittäjiä sovellusten rakentamiseen, ihmettelin todella, kuinka harvat heistä ymmärsivät kuinka JavaScripti valjastaa vankan sovellusarkkitehtuurin rakentamiseksi. Tätä silmällä pitäen päätin kirjoittaa kirjan, joka kattaa joitain JavaScriptin parhaita käytäntöjä, esittelee ihmisille prototyyppejä, esineiden koostumusta ja ainakin toiminnallisen ohjelmoinnin peruskäsitteitä (tarpeeksi ymmärtämään, kuinka rakentaa ja ylläpitää tyypillistä JavaScript-sovellusta) , ja soveltaa sitten näitä käsitteitä rakentaaksesi joitain yleisiä huolenaiheita, jotka ilmenevät suurimmassa osassa sovelluksia, sovellusliiketoiminta-alueesta riippumatta.

Paljon kirjoja vastataan kysymykseen, "kuinka käytän JavaScriptiä?". Halusin vastata kysymykseen, "kuinka voin käyttää JavaScriptiä todellisen sovelluksen luomiseen?"

Teknologia muuttui paljon kirjan julkaisemisen jälkeen kuluneiden kahden vuoden aikana, mutta rehellisessä mielessäni (niin objektiivisena kuin kirjoittaja voi olla) se on edelleen paras katsaus JavaScript-sovellusarkkitehtuuriin nykyään markkinoilla. Sen lisäksi, että syventät JavaScript-ymmärrystäsi, opit myös solmujen perusteista, RESTful-sovellusliittymistä, todentamisesta ja valtuuttamisesta, ominaisuuksien vaihtamisjärjestelmistä, kirjaamisesta ja muusta.

6. ”Tehokas JavaScript: 68 erityistä tapaa hyödyntää JavaScriptin voimaa”, kirjoittanut David Herman

Kun olet jo altistunut JavaScriptille, ”Tehokas JavaScripti” vie sinut perusteellisemmalle kielikohtaiselle kiertomatkalle, joka näyttää esimerkkejä hänen käsityöstään maustetun master-ohjelmoijan opettamista tunneista.

Heti sinut esitetään joihinkin JavaScript-siruihin, liukulukun numerotarkkuudesta (koska JavaScriptillä on vain yksi numerotyyppi, ja se on liukuluku), tyyppisten pakkojen ja puolipisteiden lisäyksen omituisuuksiin. Loput kirja jatkuu samalla tyylillä, tutkimalla parhaita käytäntöjä toimintojen, esineiden, ryhmien, kirjasto- ja API-suunnittelun sekä samanaikaisuuden käsittelemiseksi. Taitotasostasi riippumatta lupaan oppia jotain uutta.

7. “JavaScript: lopullinen opas”, kirjoittanut David Flanagan

Lopullinen opas on syvällinen JavaScriptin ja verkkoalustan sovellusliittymän ominaisuuksien tutkiminen joku, joka on kiinnostunut rakentamaan verkkosovelluksia. Se on melko perusteellinen yleiskuva monista kielitoiminnoista, joihin on ripustettu varoituksia vanhoista IE-versioista, joita voit todennäköisesti sivuuttaa tässä vaiheessa. Kirjaa on ollut kuusi, ja toivon, että tulossa on vielä paljon muita julkaisuja. Olen omistanut aiemmat painokset ja opit aina jotain uutta, kun uusi julkaistaan.

8. Kyle Simpson “Et tiedä JS: tä”

Tämä on todella sarja kirjoja - ne kaikki ovat tyyliltään ja laajuudeltaan samanlaisia, osa niistä suurempi kuin toiset ja kaikki erittäin hyviä.

Olen ohjelmoinut JavaScriptiin jo pitkään. Olen tutkinut useita JavaScripti-eritelmien versioita ja seurannut eritelmän uusien versioiden kehitystä tarkkaan, mutta Kylen syvä kiehtovuus tutkia kaikkia pieniä nokkeja ja kallioita onnistui paljastamaan useita kieliä, joita en ollut vielä löytänyt tai tutkinut .

Jos luulet, että ”Lopullinen opas” oli syvä sukellus, tee sukellusvarusteesi ja valmista syvänmeren vedenalainen merimatkailija. Näet joitain JavaScriptilajeja, joita ihminen ei ole koskaan tavannut aiemmin (joka tapauksessa, ennenkin tämän sarjan kirjoittamista).

Mitä et löydä tästä sarjasta, on paljon puhetta ohjelmistoarkkitehtuurista, syvästä ohjelmoijan viisaudesta tai runsaasta ohjelmistosuunnitteluperiaatteista, jotka kattavat helposti monia eri kieliä. Mutta se auttaa varmasti saamaan uuden arvion ja ymmärtämään JavaScriptiä entistä paremmin. Kylen keskittyminen syvään sukellukseen kielipiirteisiin on harvinainen aarre, josta uskon, että jopa TC39-joukkue voisi oppia jotain.

9. “JavaScript Allongé: The Six Edition”, kirjoittanut Reginald Braithwaite

JavaScript Allongé on pohjimmiltaan kirja toimintojen ajattelusta. Joustavien ohjelmistojen rakentaminen pienistä, erillisistä yksiköistä.

Toisin sanoen se ei yritä olla liian määräävä tai mielipiteellinen. Lainata johdannosta:

"JavaScript Allongé ei yritä käsitellä JavaScriptin parhaiden käytäntöjen kysymystä laajemmassa ohjelmistokehityksen yhteydessä, koska JavaScript Allongé ei ole kirja harjoittelusta, se on ajattelua käsittelevä kirja."

Kun luet kirjaa, huomaat, että kirjailija pitää lupauksensa. Tämän ei todellakaan pitäisi olla ensimmäinen lukemasi JavaScript-kirja. Reginald esittelee yksinkertaiset käsitteet, kuten "const", hitaasti rakentamalla välitoimintojen laajuusaiheisiin, kuten IIFE ja sulkemiset, osittaisten sovellusten ja karhennettujen funktiolausekkeiden esittelyn jälkeen.

Useimmat johdattavat JavaScript-kirjat alkavat viisaasti puhumalla arvoista ja siitä, kuinka ne esitetään sidoksilla käyttämällä "var", "anna" tai "const". Reginald kääntää sykkeen syystä - hän saa aivosi tanssimaan. Kirja yrittää auttaa sinua ajattelemaan eri tavalla ja syvällisesti toimintoja, ja se toimii.

Sinun tulisi lukea se sen jälkeen, kun olet perehtynyt JavaScriptiin, kun olet valmis aloittamaan tutkimuksen siitä, kuinka yhdistää toiminnalliset ja olio-ohjelmointitekniikat JavaScriptin sovellusten rakentamiseksi.

10. ”Node.js toiminnassa”, kirjoittanut: Mike Cantelon, Marc Harter, TJ Holowaychuk ja Nathan Rajlich

“Node.js toiminnassa” on loistava johdanto solmujen perussovelluskehitykseen, joka kattaa tärkeät aiheet, kuten HTTP / HTTPS, Connect / Express-väliohjelmisto, reaaliaikaiset viestit Socket.IO: n kanssa, tietokantojen käyttö ja niin edelleen. Jos olet uusi Node-palvelu, tämä on loistava paikka aloittaa.

11. ”High Performance Browser Networking”, kirjoittanut Ilya Grigorik

Suuren sovellussuorituksen merkitystä on vaikea yliarvioida. Rajaaminen millisekuntia sivun latausaikoista ja käyttöliittymäprosentin vähentäminen tuottavat sijoitetun pääoman tuoton, joka voidaan saavuttaa vain suuren käyttöliittymäsuunnittelun avulla.

Tämä kirja kattaa tehokkaat suorituskykynäkökohdat, kuten HTTP2, tiedonsiirto, WebSockets, WebRTC, DataChannel ja niin edelleen.

Toisin sanoen tämä kirja on lopullinen opas onnistuneemman sovelluksen rakentamiseen optimoimalla sen suoritusprofiili.

12. Boris Smus “Web Audio API”

Jokainen todellinen JavaScript Rock Star tarvitsee tämän kirjan. Loppujen lopuksi et ole todellinen JS-rocktähti, ennen kuin kytket kitaran verkkoselaimeesi. Tiedän, että sanoin, että nämä olivat kirjoja, joiden "jokaisen JavaScriptin kehittäjän tulisi lukea", mutta tämä on tarkoitettu vain JavaScriptin kehittäjille, jotka rakastavat leikkiä äänillä ja musiikilla. Suurin osa JavaScriptin kehittäjistä voisi päästä eroon oppimatta tätä sovellusliittymää, ja se ei vahingoittaisi heitä ollenkaan - mutta se on tylsää.

Tämä kirja on luettelossani ensisijaisesti siksi, että rakastan musiikkia ja äänitekniikkaa. Web audio -sovellusliittymä on oikeastaan ​​liittyvien sovellusliittymien järjestelmä äänen luomiseksi ja käsittelemiseksi verkkoalustastandardeja käyttämällä. Voit käyttää sitä selaimissa ja Solmussa.

Web audio -sovellusliittymän käyttämiseksi manipuloidaan solmuja kaaviossa. Yleensä haluaisin vain viitata sinulle kätevään viitteeseen, mutta ellet ole ääniinsinööri, saatat tuntea olevani hieman uupunut. Tämä kirja opastaa sinut erityyppisten äänisolmujen läpi ja opettaa kuinka kutoa niitä yhdessä, työskennellä ajoitussovellusliittymän kanssa äänien ajoittamiseksi tarkasti, parametrien käsittelemiseksi ajan myötä, äänitehosteiden käyttämiseksi ja jopa ääni-visualisointien luomiseksi.

Toisin sanoen, se on todella hauskaa.

Aloita ilmainen oppitunti EricElliottJS.com-sivustossa

Eric Elliott on kirjojen kirjoittaminen, ”Composing Software” ja “Programming JavaScript Applications”. EricElliottJS.com: n ja DevAnywhere.io: n perustajana hän opettaa kehittäjille välttämättömiä ohjelmistokehitystaitoja. Hän rakentaa ja neuvoo kehitystyöryhmiä salaustekniikkaprojekteihin ja on osallistunut ohjelmistokokemuksiin Adobe Systemsille, Zumba Fitnessille, The Wall StreetJournalille, ESPN: lle, BBC: lle ja huipputalostajille, mukaan lukien Usher, Frank Ocean, Metallica ja monille muille.

Hän nauttii kauko-elämäntavasta maailman kauneimman naisen kanssa.