Att behärska modern JavaScript: omfamna tillväxt, övervinna utmaningar och bygga starka grunder
Låt oss ta en stund att diskutera ditt förhållande till JavaScript innan vi går in i tekniska aspekter.
Om du är något som jag har du jobbat med HTML under lång tid, ibland med hjälp av JavaScript på ett grundläggande sätt för att lägga till interaktivitet till webbsidor. Du kanske vågade dig på att bygga komplexa webbplatser genom att lära dig språk som PHP, Ruby eller Java för backend-utveckling.
Men JavaScript fångade alltid din uppmärksamhet. Med introduktionen av jQuery, Prototype och liknande ramverk blev JavaScript mer avancerat och överträffade sitt rykte som ett enkelt verktyg för att öppna fönster. Även om det var bekvämt att ha jQuery till ditt förfogande för att förbättra webbplatser, var du i huvudsak en JavaScript-användare snarare än en JavaScript-utvecklare.
Sedan kom Node.js.
JavaScript på serversidan? Hur coolt är inte det?
Du insåg att det var dags att återvända till JavaScript, men den här gången med ett nytt perspektiv. Att skriva applikationer för Node.js är en sak, men att förstå varför de är strukturerade som de är kräver en djup förståelse av JavaScript.
Och jag menar verkligen att förstå det den här gången.
JavaScript leder flera liv: de tidiga dagarna av att vara en udda DHTML-hjälpare, dess roll i frontend-ramverk som jQuery, och nu dess intåg i utveckling på serversidan. Följaktligen är det inte alltid lätt att hitta rätt resurser för att lära sig JavaScript och skriva Node.js-applikationer på rätt sätt. Som en erfaren utvecklare vill du inte lära dig en ny teknik genom att bara imitera eller missbruka den. Du söker ett heltäckande tillvägagångssätt.
På samma sätt, när du börjar lära dig modern JavaScript, är det mycket troligt att lösningen på ditt problem redan arbetas på. Faktum är att paketet du använder kanske bara har en nyligen sammanslagen kodgranskning som löser problemet.
När du arbetar med ett äldre språk som PHP leder en snabb Google-sökning dig ofta till ett Stack Overflow-svar eller en grundlig dokumentationsdiskussion från fem år sedan som löser ditt problem. Men med JavaScript kan du hitta dig själv att bläddra igenom GitHub-kommentarer, viktiga problem och källkod, bara för att stöta på motstridig information som motsäger föråldrad dokumentation.
Att lära sig JavaScript 2017 hade en annan utmaning: det kunde ta lika lång tid som att bygga själva applikationen. Det stora antalet och variationen av verktyg, plugins, paket, beroenden och nödvändiga redigeringsinställningar och konfigurationer kan överväldiga dig innan du ens har börjat.
Jag var personligen tvungen att släppa tanken på att göra saker på “rätt” sätt från början. Istället tillät jag mig själv att experimentera med amatörinställningar för att bli bekväm med individuella verktyg. Allt eftersom jag upptäckte bättre tillvägagångssätt, införlivade jag dem gradvis i varje nytt projekt.
I detta avseende finns det fortfarande mycket arbete kvar att göra i JavaScript-världen.
När du lär dig ett nytt språk skriver du kod, gör misstag och lär dig av dem. Min resa genom modern JavaScript-utbildning innebar att följa tutorials, arbeta med små lösbara projekt, sammanställa listor med frågor och frågor, söka input från kollegor och upprepa processen med större projekt, fler frågor och ytterligare diskussioner.
Den viktigaste läxan jag lärde mig under den här upplevelsen var att göra är att lära. Även om du kämpar initialt, är det fortfarande en del av inlärningsprocessen.
Att lära sig modern JavaScript kan ibland kännas som ett överväldigande träningspass för din hjärna. Om du någonsin känner dig avskräckt, ta del av råden från Googles Addy Osmani:
“Jag uppmuntrar folk att anta detta tillvägagångssätt för att hålla jämna steg med JavaScript-ekosystemet: först gör det, gör det sedan rätt och gör det sedan bättre. […]“
Att bemästra grunderna i ett nytt ämne kräver tid, experiment och skicklighet. Nybörjare ska inte känna sig misslyckade för att de inte omedelbart hoppar in på veckans senaste bibliotek eller reaktiva mönster. Det tog mig veckor att förstå Babel och React, och ännu längre tid att förstå Isomorphic JS, WebPack och alla omgivande bibliotek. Börja med enkelhet och bygg på den grunden.
Resan att lära sig modern JavaScript kan ibland kännas som en oändlig jakt på WTF-ögonblick. Men i dessa ögonblick är det viktigt att komma ihåg att du fortfarande gör framsteg. När du snubblar genom utmaningar och söker efter lösningar, är allt en del av inlärningsprocessen.
Om du någon gång känner dig överväldigad, kom ihåg att det är okej att ta saker steg för steg. JavaScript-ekosystemet utvecklas ständigt, med nya bibliotek, ramverk och mönster som dyker upp regelbundet. Det är omöjligt att lära sig allt på en gång. Fokusera istället på att förstå kärnkoncepten och bygga en stark grund.
Börja med att fördjupa dig i handledningar och praktiska övningar. Smutsa ner händerna och skriv kod. Omfamna små projekt som låter dig utforska olika aspekter av JavaScript och lösa specifika problem. Längs vägen, sammanställ en lista med frågor och utmaningar du stöter på. Sök vägledning från erfarna kollegor eller onlinegemenskaper för att få insikter och förklaringar.
Var inte rädd för att göra misstag när du utvecklas. Det är genom dessa misstag som du verkligen lär dig och växer. Ta dig tid att reflektera över din kod, identifiera förbättringsområden och upprepa dina lösningar. Sträva efter tydlighet, läsbarhet och underhållbarhet i din kodbas.
Även om det är frestande att jaga efter de senaste trenderna och populära biblioteken, kom ihåg att de bara är verktyg. Det är viktigt att förstå de underliggande principerna och koncepten bakom dem. Prioritera att lära dig “varför” snarare än att blint följa “vad”. Detta kommer att göra det möjligt för dig att anpassa och anamma nya verktyg och ramverk när de dyker upp utan att känna dig överväldigad eller vilsen.
Ha tålamod med dig själv. Att behärska vilket ämne som helst tar tid. JavaScript är ett kraftfullt och mångsidigt språk, men det kräver engagemang och övning för att verkligen utnyttja dess potential. Fira dina segrar, oavsett hur små, och fortsätt pressa dig själv för att lära dig och förbättra.
Sammanfattningsvis är att lära sig modern JavaScript en pågående resa. Det kräver ett tänkesätt av kontinuerlig tillväxt, experiment och anpassning. Omfamna processen att göra, lära av misstag och gradvis förfina dina färdigheter. Börja med grunderna, bygg en solid grund och utöka sedan dina kunskaper när du får självförtroende. Kom ihåg att det inte handlar om att nå perfektion över en natt; det handlar om att gå vidare mot mästerskap ett steg i taget.