The Cure to Javascript Træthed - og alle andre trætheder

Lær dine grundlæggende ting, og bekymre dig aldrig igen.

Nye værktøjer bekymrer mig

Når JavaScript kommer ud af dagens skinnende værktøj, overreagerer jeg nogle gange.

lære-eller-miste-job-1

Og efter 15 minutter, hvor min fantasi løber vild, bliver trangen til at udforske den uudholdelig.

Ligegyldigt hvilket værktøj, det hele er den samme historie.

  • Jeg må lære denne teknologi!
  • Jeg har brug for enhver fordel i dette konkurrencedygtige jobmarked!
  • Jeg er nødt til at forblive relevant, ikke?

jeg-skal-lære-det

Nå ja, men nej.

Mine seniorer bekymrer sig aldrig

Nogle gange deler jeg denne stemning med seniorudviklere på kontoret og får en standardreaktion fra dem.

et andet værktøj-så-hvad-lol

Efter nok møder som dette begyndte jeg at tænke ...

Hvorfor forskellen?

Hvorfor springer jeg ængstelig ned i dagens topværktøj, tilsyneladende dømt til at gentage dette for evigt ...

måske-jeg-kan-lære-det-før-den næste

Mens mine seniorer roligt lader JavaScript-stormene passere, skal jeg hente værktøjer efter behov?

seniorer-er-hurtige-elever

Det er fordi de ser fælles tråde blandt disse værktøjer. For dem, selv efter alle disse år, er landskabet ikke så anderledes.

Hvor kommer disse fælles tråde fra? Grundlæggende.

Det hele er grundlæggende

De bedste udviklere, jeg har mødt, er ikke faset af JavaScript's lyshastighedsudvikling. De er ikke udmattede af JavaScript-træthed, fordi de faldt ud af det løb.

kan ikke blive træt-hvis

I stedet for at lære rammer for at øge deres karriere, fokuserede de på de grundlæggende og skyrocket deres karriere.

Din yndlingsramme kan styrtes ned en dag, og du bliver til sidst nødt til at hente en anden.

Men det grundlæggende er stedsegrønne. De går tilbage til datalogiske ressourcer fra årtier siden. Uanset alder, udgør disse principper stadig grundlaget for computing.

Denne tweet, jeg snuble over, opsummerer det perfekt.

At læse computerpapirer fra 50'erne, 60'erne og 70'erne er som at grave på et arkæologisk sted og finde en sonisk skruetrækker.

- - = fogus = - (@fogus) 4. juni 2019

Vi bygger alle bare på de grunde, der er etableret for længe, ​​længe siden.

Hvad er de grundlæggende?

yoda-grundlæggende

Dette er ikke en omfattende liste, men den, der tackler den, bliver en fantastisk programmør. Det holder dig travlt i de kommende år.

  • At lære flere programmeringssprog
  • Algoritmer og datastrukturer
  • Design mønstre
  • Anti-mønstre
  • Applikationsarkitektur

At lære flere programmeringssprog

Sprog løser problemer på forskellige måder. Ingen af ​​dem er perfekte, det er derfor, vi har så mange.

Hvis du laver JavaScript, kan du blive ubehagelig ved at lære C #. Hvis du virkelig vil skubbe dig selv, så prøv Haskell.

Sammenlign de løsninger, hvert sprog tilbyder. Jo mere du tackler, jo hurtigere lærer du nye ting, fordi de alle trækker fra hinanden.

Algoritmer og datastrukturer

lets-skip-algoritmer

Folk elsker at hade på dette emne.

  • "Hvornår har jeg brug for dette?"
  • "Dette er ubrugeligt."
  • "CS-grader er spild af penge."

Du har muligvis aldrig brug for dem, men det gør ikke læringsalgoritmer og datastrukturer til en dårlig investering.

Som IT-major ønsker en del af mig, at jeg kunne gå tilbage og tage nogle CS-kurser, især algoritmer og datastrukturer. Kraften, jeg følte efter at have lært dem, var fantastisk. Det er som at sætte briller på, som du aldrig vidste, du havde!

jeg-kender-binære træer

Den største fordel er efter min mening forbedrede færdigheder til problemløsning.

Evnen til at roe sig ned, gå til en notesbog / whiteboard og arbejde hen imod en løsning er et aktiv, der sparer dig utallige timer med frustreret hacking.

Før det ville jeg galopere ind i redaktøren som en klassisk kodende cowboy, kode mig ind i et hjørne og derefter prøve at finde ud af en god løsning.

Design mønstre

Fra Addy Osmanis strålende bog - Learning JavaScript Design Patterns

Et mønster er en genanvendelig løsning, der kan anvendes på almindeligt forekommende problemer i softwaredesign ...

Disse kamptestede løsninger har stået tidstesten. At lære dem hjælper dig med at skrive kode, der er mere kendt og vedligeholdelig for andre udviklere.

Du har muligvis ikke indset det, men moderne JavaScript-stakke udnytter populære designmønstre.

  • Bundlers som Webpack og Parcel lade dig bruge Modul mønster for at adskille JavaScript i organiserede filer.
  • Biblioteker som RxJS og Redux bruger Observer-mønsteret til at sende og modtage "underretninger".
  • Biblioteker som React-Redux og Recompose giver dig mulighed for at forbedre dine komponenter, ellers kendt som Decorator-mønsteret .

Anti-mønstre

Hvis designmønstre er så gode, at vi skal dele dem, er anti-mønstre så dårlige, at vi skal advare imod dem.

anti-vs-design-mønstre

Træk fra Addy Osmanis bog igen, her er nogle almindelige JavaScript-antimønstre.

  • Definere mange globale variabler
  • Ændring af Objectklassens prototype
  • Ved brug af document.write
  • Brug af indbygget JavaScript. For eksempel...
 Click Me 

Applikationsarkitektur

Her er hvor akronymerne bliver vanvittige

  • MVC (Model-View-Controller)
  • MVP (Model-View-Presenter)
  • MVVM (Model-View-ViewModel)
  • MVU (Model-View-Update)
  • MVI (Model-View-Intent)

Her er et eksempel på MVC.

mvc-diagram

Deres fælles kerne adskiller dine bekymringer . De fleste applikationer har en model (data) og en visning (UI), og det er vigtigt, at de ikke taler til hinanden. Det er her controlleren sidder, og den formidler deres frem og tilbage kommunikation.

Resumé - Værktøjer er fantastiske ❤️

Et ægte vidunder inden for software engineering. Forøg din produktivitet ved at lære og nyde dem!

Men glem ikke dine grundlæggende.

  • At lære flere programmeringssprog
  • Algoritmer og datastrukturer
  • Design mønstre
  • Anti-mønstre
  • Applikationsarkitektur

Jeg efterlader dig med en sidste tweet.

Rammer er bladene på et enormt træ kaldet datalogi.

Undersøg det?, Ikke kun det?, For at rodfæste dit fundament dybt som softwareudvikler.

Snart nok forbinder du så mange prikker, at "ny" teknologi ikke skræmmer dig mere.

- Yazeed Bzadough (@yazeedBee) 14. august 2019

Tak for læsningen

For mere indhold som dette, se //yazeedb.com. Og lad mig vide, hvad du ellers gerne vil se! Mine DM'er er åbne på Twitter.

Indtil næste gang!