Învățarea programării funcționale m-a făcut să fiu un dezvoltator de 10 ori mai bun. M-a ajutat să învăț cum scriu un cod curat, ușor de întreținut și scalabil.

Acest lucru este deosebit de important în zilele noastre aplicațiile software devin din ce în ce mai complicate. Zilele de construire și întreținere a unei aplicații web simple s-au încheiat.

În calitate de dezvoltator, așteptările pe care ți le-ai propus sunt mai mari ca niciodată. Acum cade pe umerii noștri să construim, să testăm, să menținem și să scalăm aplicații complexe care au impact pe milioane de oameni zilnic. Acest lucru poate fi deosebit de descurajant ca începător, deoarece noi doar primim blocajul de a scrie codul care de fapt lucrări, darămite să scriem un cod ușor la înțelegeți, scrieți, depanați, refolosiți și întrețineți.

Aici programarea funcțională a făcut o diferență pentru mine – m-a ajutat să învăț cum să codez ușor de înțeles, de scris, de depanat, de reutilizat și de întreținut. Drept urmare, mă simt mult mai încrezător în abilitățile mele de codare.

Chiar dacă nu utilizați un limbaj de programare funcțional la locul de muncă sau în proiectele dvs. secundare, cunoașterea elementelor de bază ale programării funcționale vă oferă un set puternic de instrumente pentru a scrie un cod mai bun.

În noul meu carte electronică, Vă voi învăța noțiunile de bază ale programării funcționale, astfel încât să aveți toate cunoștințele fundamentale de care aveți nevoie pentru a aplica principiile la locul de muncă, în următorul interviu de angajare sau în următorul dvs. proiect secundar.

Restul postării vă va oferi o explicație simplă a ceea ce este programarea funcțională, pe care va trebui să o cunoașteți înainte de a vă scufunda în carte electronică. ?

Hai să intrăm direct în asta! ?

Ce este programarea funcțională?

Asa de. Ce este mai exact „programarea funcțională”?

Programarea funcțională nu este un cadru sau un instrument, ci un cale de scriere a codului. În programarea funcțională, punem un accent major pe scrierea codului folosind funcționează ca „blocuri de construcție”.

Programul dvs. este definit în termenii unei funcții principale. Această funcție principală este definită în termeni de alte funcții, care sunt la rândul lor definite în termeni de mai multe funcții – până când la nivelul inferior funcțiile sunt doar primitive de limbaj precum „număr” sau „șir”.

Invatarea programarii functionale m a facut sa fiu un dezvoltator de

Dacă citești această gândire, „Hmm, dar așteptați? Nu fiecare limbă folosește funcții pentru a scrie cod? ” atunci bine ?. Înseamnă că ești atent.

Ai dreptate – fiecare limbaj de programare are funcții. Dar programarea funcțională o duce la un nivel întreg ?

1612070707 261 Invatarea programarii functionale m a facut sa fiu un dezvoltator de

Pentru a înțelege ce vreau să spun, să revenim și să începem cu elementele de bază.

Fiecare program software are două lucruri:

  1. Comportament (ce face programul)
  2. Date (date, este bine, date)

Când aflăm despre o paradigmă de programare – cum ar fi programarea funcțională – este adesea util să luăm în considerare modul în care paradigma abordează comportamentul și respectiv datele.

Comportament, în programarea funcțională, este tratat pur folosind funcții în programarea funcțională. Funcții sunt bucăți de cod „autonome” care îndeplinesc o sarcină specifică. Acestea definesc o relație între un set de intrări posibile și un set de ieșiri posibile – de obicei, primesc date, le procesează și returnează un rezultat. Odată ce o funcție este scrisă, aceasta poate fi utilizată din nou și din nou.

Date, în programarea funcțională, este imuabil – ceea ce înseamnă că nu poate fi schimbat. În loc să schimbe datele pe care le iau, funcțiile din programarea funcțională iau datele ca intrare și producție nou valorile ca ieșire. Mereu.

Funcții și imuabil date sunt singurele două lucruri de care trebuie să te ocupi vreodată în programarea funcțională. Pentru ao simplifica și mai mult, funcțiile nu sunt tratate diferit decât datele.

Altfel spus, funcțiile din programarea funcțională pot fi transmise la fel de ușor ca datele. Vă puteți referi la ele din constante și variabile, trece-le ca parametrii la alte funcții și le returnează ca rezultate din alte funcții.

Acesta este cel mai important lucru de înțeles atunci când abordăm programarea funcțională.

1612070707 432 Invatarea programarii functionale m a facut sa fiu un dezvoltator de

Tratând funcțiile ca fiind nimic mai special decât o bucată de date și folosind doar date imuabile, ni se oferă mult mai multă libertate în ceea ce privește modul în care putem folosi funcțiile.

Anume, ne permite să creăm funcții mici, independente, care pot fi refolosite și combinate împreună pentru a construi o logică din ce în ce mai complexă. Noi putem descompuneți orice problemă complexă în subprobleme mai mici, rezolvați-le folosind funcții și combinați-le în cele din urmă pentru a rezolva problema mai mare.

Având în vedere complexitatea în continuă creștere a aplicațiilor software, acest tip de abordare „de bază” face o mare diferență în menținerea programelor simple, modulare și de înțeles. Acesta este și motivul pentru care dezvoltatorii se străduiesc să își îndeplinească funcțiile scop general pe cât posibil, astfel încât să poată fi combinate să rezolve probleme mari, complexe și reutilizat pentru a accelera timpul de dezvoltare pentru programele ulterioare.

1612070708 453 Invatarea programarii functionale m a facut sa fiu un dezvoltator de

În cele din urmă, motivul pentru care funcțiile sunt atât de puternice în programarea funcțională este că funcțiile urmează anumite principii de bază. Aceste principii vor face obiectul cursului meu de e-mail:

  • Funcțiile sunt pure
  • Funcțiile folosesc date imuabile
  • Funcțiile garantează transparența referențială
  • Funcțiile sunt entități de primă clasă

După aceea, voi aborda pe scurt modul în care programarea funcțională aplică aceste principii pentru a ne încuraja să ne gândim cu atenție la datele noastre și la funcțiile care interacționează cu acestea.

Până la final, veți putea înțelege modul în care această abordare duce la codul care este:

  • Mai ușor de înțeles (adică „expresiv”)
  • Mai ușor de reutilizat
  • Mai ușor de testat
  • Mai ușor de întreținut
  • Mai ușor de refactorizat
  • Mai ușor de optimizat
  • Mai ușor de raționat

Sunteți interesant? Dacă da, îți va plăcea noul carte electronică. ?

1612070708 86 Invatarea programarii functionale m a facut sa fiu un dezvoltator de

carte electronică va fi lansat pe 13 decembrie. Puteți comanda în avans cartea electronică acum doar pentru 49 $! Și ca ofertă specială pentru comunitatea gratuită FreeCodeCamp, vă ofer 10 $ reducere cu codul de reducere “freecodecamp“.

Ne vedem acolo! ?? ✍️