Cum să devii un dezvoltator Full-Stack: Partea 2

Publicat: 2017-12-02

Acesta este al doilea dintr-o serie de postări despre a vă învăța programarea și dezvoltarea full-stack. Dacă nu ați verificat prima parte, despre învățarea Fundamentelor CS, Algoritmii, Principiile de proiectare și Dezvoltarea front-end, puteți face acest lucru aici.

Motivația

Acum știți cum să creați site-uri web statice folosind HTML, CSS și Javascript. Deși internetul a fost conceput inițial pentru a partaja pagini web statice, capacitățile (și așteptările) unei aplicații web moderne au crescut uriaș. Aproape fiecare aplicație necesită autentificarea utilizatorilor, răspunsul la acestea și replicarea scenariilor din lumea reală cât mai aproape posibil.
Pentru a face cele menționate mai sus, trebuie să obțineți date de la un utilizator (sau un API), să le procesați și să produceți o ieșire. De asemenea, trebuie să salvați aceste date și să aveți un mecanism pentru a identifica utilizatorul data viitoare când acesta revine pentru a utiliza aplicația dvs. Pentru a îndeplini aceste funcții, stiva noastră actuală nu este suficientă.
Interviu cu Ankit Tomar, co-fondator și CTO, Bizongo

Serverele trebuie să proceseze datele utilizatorului, să stocheze fișiere, să le convertească în HTML/CSS/JS. Apoi, aceste servere îl oferă browserului într-o formă care poate fi prezentată utilizatorului. Este necesară o bază de date pentru a stoca date importante pentru aplicația dvs. Pentru a programa serverul, avem nevoie de un limbaj de scripting pe partea de server, iar pentru baza de date, avem nevoie de o bază de date (duh) și un limbaj pentru a comunica cu acesta. Acesta este exact ceea ce vom face în următorii pași. Pentru primele șapte, consultați postarea anterioară!

Cuprins

Pasul 8: Limbaje de scriptare pe partea serverului

După cum am menționat anterior, pentru a programa și a comunica cu serverul dvs., va trebui să cunoașteți o limbă pe care o înțelege. Spre deosebire de front-end, unde Javascript este singura opțiune, există o multitudine de opțiuni disponibile pentru a le programa pe backend. Cele mai populare sunt Java, PHP, Python, JavaScript și Ruby.
PHP are deficiențele sale, dar are cea mai blândă curbă de învățare dintre toate limbajele și cadrele pe care le-am folosit până acum. Și PHP este despre codificarea soluțiilor rapide (și murdare). Deci, într-o perioadă extrem de scurtă de timp, puteți construi o aplicație web de care să fiți extrem de mândri.
Cum să devii un dezvoltator de software web full stack UpGrad Blog front end backend
Java este un limbaj de programare de uz general și probabil cel mai popular limbaj din toate timpurile. Este extrem de popular pentru construirea de aplicații mobile (pe platforma Android) și utilizat pe scară largă în majoritatea companiilor tehnologice importante. Head First Java este un loc excelent pentru a învăța acest limbaj omniprezent.
Pentru a învăța Python, aș recomanda cu căldură Learn Python The Hard Way de la Zed Shaw și Automate the Boring Stuff cu Python de Albert Sweigart. Dacă te-ai hotărât să folosești PHP, poți învăța elementele de bază ale limbajului pe Codecademy.
Cunoașteți deja suficientă sintaxă JavaScript pentru a vă murdari mâinile cu framework-urile Node și backend JS (cum ar fi Express). Voi aborda Ruby mai târziu împreună cu Rails, deoarece este rareori folosit ca limbaj de sine stătător.

Pasul 9: Învață SQL

Pentru următorul pas, probabil că ar trebui să luați puțin SQL (Structured Query Language). Este baza de date lingvistică cu care comunică. Și, deși s-ar putea să nu îl utilizați direct atunci când treceți la utilizarea cadrelor, totuși vă ajută să știți cum să comunicați direct cu baza de date. Vestea bună este că SQL este incredibil de ușor de învățat. Ar trebui să puteți înțelege bine în câteva ore. Head First SQL este o resursă excelentă în acest scop.
Cum să devii un dezvoltator Full Stack: Partea 1

Pasul 10: Aflați un cadru web „convențional” Full-Stack

Acum este un moment bun pentru a experimenta cadre web care pot face cea mai mare parte a muncii de nivel inferior pentru tine.
Nu există lipsă de cadre grozave care ar putea satisface orice scop imaginabil. Rails (scris în Ruby), Spring (scris în Java) și Django (scris în Python) sunt printre cadrele utilizate în mod popular astăzi. Puteți arunca o privire la Tutorialul The Rails al lui Michael Hartldisponibil gratuit.
În ceea ce privește Django, tutorialul de pe site-ul oficial este un loc bun de început. Odată ce simțiți că vă simțiți confortabil cu elementele de bază ale cadrului, citiți Two Scoops of Django . Este una dintre cele mai bune cărți de tehnologie de până acum.
Dacă te-ai hotărât să mergi pe traseul de primăvară, îți sugerez insistent să te înscrii la programul de dezvoltare software al UpGrad și IIIT-B. Programul vă oferă o imagine de ansamblu foarte holistică a cadrului și vă ajută să construiți un backend robust și scalabil.

Pasul 11: Cadre Javascript Full-Stack și Stiva MEAN

Nu cu mult timp în urmă, Backend Development se baza pe conceptul de ciclu cerere-răspuns. De exemplu, browserul a trimis o solicitare și serverul a răspuns scuipat o pagină web în HTML. Cu toate acestea, de la începutul lui 2010, tot mai multe aplicații au devenit în timp real.
Structura unei întregi pagini web se schimbă fără reîmprospătare și se comportă dinamic în funcție de intrarea și interacțiunea utilizatorului (Gândește-te la chat, apreciere, comentare, videoclipuri și reacții live etc.).
Cum să devii un dezvoltator de software web complet Back-end UpGrad Blog
Într-un astfel de scenariu, un simplu ciclu cerere-răspuns pur și simplu nu este suficient. Prin urmare, a existat o creștere recentă a interesului față de programarea asincronă și de a face cererile AJAX norma. Cadrele Javascript tind să exceleze în acest sens. Deci, este logic să vă familiarizați cu unul dintre cadrele JS majore disponibile pe piață. Cele mai populare două sunt MEAN Stack și MeteorJS.
Interviu cu Farooq Adam, co-fondator, Fynd

Învățarea MEAN este puțin mai complicată din cauza naturii sale asincrone și a iadului callback Node tinde de obicei să se dezlănțuie. Dar acum că ești un dezvoltator experimentat, ești suficient de matur pentru a face față idiosincraziilor sale.
Meteor este un framework JS full-stack cu care experimentez în prezent. Conceptul de Meteor este absolut încântător – un cadru într-o singură limbă care are grijă de toate componentele unei aplicații (front-end, back-end și bază de date). Cu toate acestea, acest lucru vine cu prețul libertății de personalizare. Odată ce ați construit ceva în Meteor, este practic imposibil să schimbați baza de date sau cadrul de backend dacă alegeți să faceți acest lucru. Cu toate acestea, încă cred că aceasta este o tehnologie utilă de învățat. Meteorul este cunoscut ca fiind extrem de puternic. Este capabil să facă lucruri în sute de linii de cod acolo unde alte cadre convenționale ar fi necesitat o mie.

Concluzie

Acesta este sfârșitul părții 2. În această postare, am acoperit resursele referitoare la dezvoltarea backend și diferitele tehnologii full-stack disponibile. Acum vă puteți numi cu mândrie un dezvoltator full-stack. Felicitări!
Dar povestea dezvoltării web full-stack nu se termină aici. Odată cu introducerea iPhone-ului, a avut loc o revoluție a smartphone-urilor pe tot globul. Din ce în ce mai mulți oameni se îndreaptă spre utilizarea smartphone-urilor în locul desktop-urilor. Într-un astfel de scenariu, este imperativ să înveți să construiești aplicații pentru două dintre cele mai populare platforme de acolo: Android și iOS. Vom acoperi acest lucru în următoarea și ultima parte a acestei serii. În plus, vom analiza și cadrele care ne permit să construim aplicații native folosind Javascript (Ionic, React Native etc.).
Până atunci, e la revedere.
Comentariile și sugestiile dumneavoastră sunt binevenite!

Deveniți un dezvoltator Full Stack

UpGrad și IIIT-Bangalore's PG Diploma in Software Development
Aflați mai multe