Ce trebuie să înveți pentru programarea web. Programarea de la zero: de unde să începem? Cum să înveți programarea de la zero în Java? Optimizați-vă învățarea cu tehnici psihologice

  • Traducere
  • tutorial

Drumul este lung și anevoios, dar interesant și plin de satisfacții!

Articolul a fost conceput ca ghid practic pentru cei care doresc să devină un dezvoltator web profesionist. Fac codificare pentru web de peste 20 de ani. Lucrez zilnic cu dezvoltatori web și îi ajut. În articol vă voi descrie ce trebuie să învățați, când trebuie să-l învățați și de unde să obțineți informațiile (cel mai adesea chiar și gratuit). Atunci voi da sfaturi pentru a obține experienta realași, cel mai important, să fiți plătit pentru scrierea codului.

De-a lungul articolului sunt împrăștiate multe link-uri către resurse gratuite și importante. Pentru simplitate, le-am adunat în PDF și le-am împărțit pe categorii. Nu sunt plătit să menționez site-urile la care am legat - vreau doar să vă recomand cele mai bune resurse pentru a vă ajuta să vă atingeți obiectivul.

Lucruri de amintit:

1. Articolul poate derula

Ghidul vă poate ajuta indiferent unde vă aflați pe drumul către dezvoltarea profesională. Derulați la titlul care descrie cel mai bine locul în care vă aflați astăzi și citiți de acolo. Dacă tocmai ați început această călătorie sau încă vă gândiți la ea, urmați sfatul regelui din Alice în Țara Minunilor:

Începeți de la început și continuați până ajungeți la sfârșit; și oprește-te acolo.

2. Încearcă puțin din toate și apoi alege o specializare.

Banii nu sunt cel mai important lucru. Trebuie să iubești ceea ce faci! Dar nu vei ști ce îți place până nu îl încerci.


Găsește-ți pasiunea și apoi monetizează-o

Ghidul vă va ajuta să vă familiarizați cu cum cantitate mare domenii de dezvoltare web cât mai repede posibil. Și apoi te ajută să alegi o specializare în zona care îți place. La început nu vei atinge perfecțiunea în nimic - vei învăța elementele de bază, iar apoi vei continua să studiezi. Găsește-ți pasiunea și îți voi arăta cum să mergi mai departe.

Am decis să scriu cod. Îmi place web-ul. Nu stiu de unde sa incep


Vei reusi!

Felicitări! Acesta este un prim pas serios și începutul a ceva foarte interesant. Dar poate fi și foarte dificil. Nu-ți face griji, te voi ajuta.

În primul rând, trebuie să vă familiarizați rapid cu elementele de bază ale tuturor domeniilor dezvoltării web (" ciclu complet"). Antrenamentul va fi variat, dar superficial. Acest lucru este necesar pentru a găsi o zonă care vă place, precum și pentru a dobândi abilități de bază în diferite domenii. Apoi veți putea înțelege și lucra cu un set mare de sarcini, indiferent de ceea ce alegeți.

Aflați elementele de bază ale HTML

Limbajul de marcare hipertext, Limbajul de marcare hipertext (HTML), controlează conținutul și marcarea a ceea ce vedeți într-un browser. Începând cu acesta, vă oferă o interfață de utilizator cu care puteți interacționa și să vedeți rezultatele codului dvs. Când învățați limbi mai complexe, importanța acesteia va crește. Nu trebuie să codificați orbește.

Iată ce trebuie să înveți despre HTML:

Cunosc deja elementele de bază ale HTML

Rece! Aceasta este foarte pas important. Acum studiază Bazele JavaScript.

Aflați elementele de bază ale JavaScript

JavaScript este limbajul web și toate browserele majore (Chrome, Firefox, Safari, IE, multe altele) îl acceptă. Fiecare site, fiecare aplicație web pe care o utilizați cel mai probabil conține o cantitate mare Cod JS. Ca să nu mai vorbim de faptul că limbajul câștigă popularitate și pe alte platforme – servere, computere desktop, Alte dispozitive.

Deocamdată, aveți nevoie de elementele de bază, iar următoarele resurse vor face truc:

Cunosc elementele de bază ale JavaScript și HTML

Minunat! Acum să adăugăm abilitățile tale CSS

Învață CSS

CSS sau Foi de stil în cascadă (foi de stil în cascadă). Folosit pentru a configura aspect elemente HTML Pe pagina. Consultați tutorialul gratuit al Mozilla, apoi consultați trucurile CSS pentru cele mai comune probleme dificile(este o cautare in dreapta sus).

Să mergem la backend

Până acum, ne-am uitat la ceea ce se numește „front-end” al dezvoltării web. Te-ai familiarizat cu principalele limbi care funcționează în browser. Este timpul să trecem la backend - codul care rulează pe server. Nu vă faceți griji, nu veți avea nevoie de un server - computerul se va ocupa de el.

Există o mulțime de limbi pentru back-end, dar deoarece sunteți familiarizat cu JavaScript, vă recomand să învățați cum să utilizați Node.js. Vă permite să rulați cod JS pe server, nu în browser.

În plus, trebuie să înveți Express și MongoDB.

Expres
Aceasta este o bibliotecă cu care Node.JS poate acționa ca un server web (ascultă solicitările din pagini și trimite răspunsuri la acestea).
MongoDB
Este o bază de date care vă permite să stocați și să preluați informații.

Puteți explora aceste trei subiecte cu următorul material de învățare excelent și gratuit și continuarea acestuia.

Trebuie să aleg între dezvoltarea frontend, backend și ciclu complet

După ce ați încercat ambele opțiuni de dezvoltare, este timpul să faceți o alegere. Dacă nu ați avut timp să le încercați, consultați secțiunea anterioară a articolului pentru a completa golurile din cunoștințele dvs.

Până acum, ați scris două tipuri de cod. Unul este pentru interacțiunea cu utilizatorul, celălalt este pentru date. Ce preferi?

Interacțiunea utilizatorului? Felicitări, ești un dezvoltator front-end!

Interacțiunea cu datele? Felicitări, ești un dezvoltator back-end!

Ambii? Felicitări, ești un dezvoltator cu ciclu complet!

Nu ți-a plăcut nimic? Felicitări, dezvoltarea web nu este pentru tine. Bucura-te ca ti-ai dat seama acum si nu ai pierdut mult timp si bani. Nu ești pregătit să renunți? Poate că nu ați întâlnit o limbă pe care v-ați dori? Încercați să învățați alte limbi în secțiunea „Vreau să fiu dezvoltator back-end”.

Vreau să fiu un dezvoltator de ciclu complet

Rece. Trebuie să vă familiarizați cu tot conținutul secțiunilor „Vreau să fiu dezvoltator back-end” și „Vreau să fiu dezvoltator front-end”.

Vreau să fiu dezvoltator frontend și cunosc elementele de bază ale JavaScript, HTML și CSS

Pentru munca eficientaÎn calitate de dezvoltator front-end, trebuie să cunoașteți HTML, CSS și JavaScript la nivelul clientului. De asemenea, va trebui să înțelegeți bine mai multe cadre importante. Veți dobândi abilitățile pe care angajatorii și clienții se așteaptă să le găsească la dezvoltatorii front-end.

Până acum, ar trebui să cunoașteți deja elementele de bază ale HTML. LA in caz contrar reveniți la Aflați elementele de bază ale HTML.

Învață HTML intermediar și avansat
Consultați tutorialul pe HTML intermediar, iar apoi - avansat .
Aflați JavaScript avansat la nivel de client


O serie excelentă de cărți despre JS și este gratuită

Pentru a vă duce competențele JavaScript la nivelul următor, vă recomand seria de cărți You Don't Know JS de Kyle Simpson. Autorul a postat întreaga serie online gratuit:

În plus, dvs cel mai bun prieten ar trebui să devină și MDN JavaScript.

[De asemenea, o traducere excelentă a cărții excelente „” vă este disponibilă complet gratuit - aprox.transl.]

Cunoașterea „trinității frontend”, HTML, CSS și JavaScript este, desigur, grozav. Dar pentru a face bani, va trebui să vă familiarizați cu niște cadre.

Învață jQuery
Este cea mai populară bibliotecă JS din toate timpurile. În timp ce unele cadre noi au redus importanța jQuery dacă sunteți în căutarea unui loc de muncă, sunt șanse ca jQuery să fie în descrierea abilităților (și menționat în interviurile de angajare) pentru mulți ani de acum înainte.

Recomand să înveți jQuery cu materiale FreeCodeCamp - este rapid și metoda eficienta. După aceea, accesați site-ul oficial de tutoriale pentru mai multe instrucțiuni.

Explorați cadrul popular JS
Framework-urile fac treaba cu anumit limbaj sau tehnologia este mai ușoară, pentru că ei decid cele mai mari probleme existente pentru tehnologia selectată. JavaScript a avut un efect foarte benefic asupra dezvoltării și popularizării cadrelor.

Apare aproape o dată pe săptămână noul cadru, care va înlocui noul standard de dezvoltare. Va trebui să cercetați site-urile de locuri de muncă și să căutați mult pe Google pentru a afla ce cadru este popular pe piața dvs. De asemenea, recomand un instrument de la Hacker News pentru evaluarea tendințelor pieței muncii.

La momentul scrierii acestui articol, următoarele cadre sunt populare:

După ce ai ales cel mai potrivit cadru și te-ai familiarizat complet cu acesta, merită să studiezi cadrul CSS care vine cu acesta. Cei doi cei mai mari jucători de pe această piață astăzi sunt Bootstrap și Material Design.

Bootstrap
Bootstrap a fost creat de dezvoltatorii Twitter și este deja destul de matur și popular. Există versiuni de Bootstrap pentru Angular, Angular 2 și React.
material
Material este un set de reguli de proiectare dezvoltate de Google. Câștigă popularitate, există versiuni pentru Angular și React. Deoarece Angular este, de asemenea, creația Google, Material se împerechează perfect cu acesta.

Iată câteva link-uri pentru tine:

Felicitări! Ai abilitățile cheie ale unui dezvoltator front-end!


Uită-te doar la el!

Vreau să fiu dezvoltator backend

Minunat! Primul pas este alegerea unei limbi. Există multe limbi pentru lucrul cu backend și fiecare are propriile sale avantaje și dezavantaje. Consultați tabelul limbajelor de programare sortate după popularitate. Toți sunt în top zece de zece ani. Marcate cu verde sunt limbile web care au câștigat popularitate de-a lungul anilor.


Indexul TIOBE al limbajelor de programare, www.tiobe.com/tiobe_index?page=index

Concentrează-te pe limbile ale căror nume le-am încercuit în verde. Dacă nu le cunoașteți, începeți din partea de sus a mesei și mergeți în jos. Oprește-te când găsești ceva care îți place și sapă adânc!

Dacă sunteți familiarizat cu una dintre cele marcate în verde limbi și îți place - concentrează-te asupra ei.

Îmbunătățiți abilitățile de care aveți nevoie pentru un interviu
Trebuie să vă pregătiți pentru mai mult decât pentru a scrie cod. Un articol bun de la Life Hacker conține o mulțime de informații utile și valoroase.
Principalul lucru este să câștigi un punct de sprijin pe piață
Nu vă faceți griji prea mult pentru a obține jobul de vis cu angajatorul de vis la salariul de vis. În primul rând, obțineți un loc de muncă în care scrieți cod pentru bani. Pe măsură ce câștigați mai multă experiență, veți putea planifica următorul pas.
Vreau să fiu freelancer
Să fii propriul tău șef este bine, dar este atât o presiune uriașă, cât și o mare provocare. cea mai bună sursă informații despre freelancing pe care le-am văzut - DoubleYourFreelancing.com. Are o serie de articole care să te ajute să devii un freelancer mai bun decât aș putea mine. Citit.

O altă opțiune, dacă ai încredere în tine, este serviciul Toptal. Acceptă doar 3% din toți cei care aplică și procesul este foarte dificil, dar dacă ajungi acolo, vei avea acces la locuri de muncă bine plătite la care poți lucra de la distanță.

Am început munca, dar simt că am ajuns într-o fundătură.
A intelege. Nu este ușor și dacă cineva ți-a spus altfel, fie nu a făcut-o, fie încearcă să te înșele din bani. Dacă simțiți că ați ajuns într-o fundătură, încercați următoarele opțiuni:
Reîmprospătați-vă intenția inițială
Întrebați-vă, scrieți pe hârtie de ce ați decis să mergeți pe această cale. Raspunsul tau mai este valabil? Dacă da, atunci de ce să te oprești? Redirecţiona!
  • Traducere
  • tutorial

Drumul este lung și anevoios, dar interesant și plin de satisfacții!

Articolul a fost conceput ca un ghid practic pentru cei care doresc să devină un dezvoltator web profesionist. Fac codificare pentru web de peste 20 de ani. Lucrez zilnic cu dezvoltatori web și îi ajut. În articol vă voi descrie ce trebuie să învățați, când trebuie să-l învățați și de unde să obțineți informațiile (cel mai adesea chiar și gratuit). Apoi voi da sfaturi despre obținerea unei experiențe reale și, cel mai important, să fiți plătit pentru a scrie cod.

De-a lungul articolului sunt împrăștiate multe link-uri către resurse gratuite și importante. Pentru simplitate, le-am adunat în PDF și le-am împărțit pe categorii. Nu sunt plătit să menționez site-urile la care am legat - vreau doar să recomand cele mai bune resurse pentru a vă ajuta să vă atingeți obiectivul.

Lucruri de amintit:

1. Articolul poate derula

Ghidul vă poate ajuta indiferent unde vă aflați pe drumul către dezvoltarea profesională. Derulați la titlul care descrie cel mai bine locul în care vă aflați astăzi și citiți de acolo. Dacă tocmai ați început această călătorie sau încă vă gândiți la ea, urmați sfatul regelui din Alice în Țara Minunilor:

Începeți de la început și continuați până ajungeți la sfârșit; și oprește-te acolo.

2. Încearcă puțin din toate și apoi alege o specializare.

Banii nu sunt cel mai important lucru. Trebuie să iubești ceea ce faci! Dar nu vei ști ce îți place până nu îl încerci.


Găsește-ți pasiunea și apoi monetizează-o

Ghidul vă va ajuta să vă familiarizați cu cât mai multe domenii ale dezvoltării web cât mai repede posibil. Și apoi te ajută să alegi o specializare în zona care îți place. La început nu vei atinge perfecțiunea în nimic - vei învăța elementele de bază, iar apoi vei continua să studiezi. Găsește-ți pasiunea și îți voi arăta cum să mergi mai departe.

Am decis să scriu cod. Îmi place web-ul. Nu stiu de unde sa incep


Vei reusi!

Felicitări! Acesta este un prim pas serios și începutul a ceva foarte interesant. Dar poate fi și foarte dificil. Nu-ți face griji, te voi ajuta.

În primul rând, trebuie să vă familiarizați rapid cu elementele de bază ale tuturor domeniilor dezvoltării web („ciclul complet”). Antrenamentul va fi variat, dar superficial. Acest lucru este necesar pentru a găsi o zonă care vă place, precum și pentru a dobândi abilități de bază în diferite domenii. Apoi veți putea înțelege și lucra cu un set mare de sarcini, indiferent de ceea ce alegeți.

Aflați elementele de bază ale HTML

Limbajul de marcare hipertext, Limbajul de marcare hipertext (HTML), controlează conținutul și marcarea a ceea ce vedeți într-un browser. Începând cu acesta, vă oferă o interfață de utilizator cu care puteți interacționa și să vedeți rezultatele codului dvs. Când învățați limbi mai complexe, importanța acesteia va crește. Nu trebuie să codificați orbește.

Iată ce trebuie să înveți despre HTML:

Cunosc deja elementele de bază ale HTML

Rece! Acesta este un pas foarte important. Acum, aflați elementele de bază ale JavaScript.

Aflați elementele de bază ale JavaScript

JavaScript este limbajul web și toate browserele majore (Chrome, Firefox, Safari, IE, multe altele) îl acceptă. Fiecare site, fiecare aplicație web pe care ați folosit-o, cel mai probabil conține o cantitate mare de cod JS. Ca să nu mai vorbim că limbajul câștigă popularitate și pe alte platforme - servere, desktop-uri, alte dispozitive.

Deocamdată, aveți nevoie de elementele de bază, iar următoarele resurse vor face truc:

Cunosc elementele de bază ale JavaScript și HTML

Minunat! Acum să adăugăm abilitățile tale CSS

Învață CSS

CSS sau Foi de stil în cascadă (foi de stil în cascadă). Folosit pentru a personaliza aspectul elementelor HTML pe o pagină. Consultați tutorialul gratuit al Mozilla, apoi consultați CSS-Tricks pentru cele mai dificile probleme (există o căutare în dreapta sus).

Să mergem la backend

Până acum, ne-am uitat la ceea ce se numește „front-end” al dezvoltării web. Te-ai familiarizat cu principalele limbi care funcționează în browser. Este timpul să trecem la backend - codul care rulează pe server. Nu vă faceți griji, nu veți avea nevoie de un server - computerul se va ocupa de el.

Există o mulțime de limbi pentru back-end, dar deoarece sunteți familiarizat cu JavaScript, vă recomand să învățați cum să utilizați Node.js. Vă permite să rulați cod JS pe server, nu în browser.

În plus, trebuie să înveți Express și MongoDB.

Expres
Aceasta este o bibliotecă cu care Node.JS poate acționa ca un server web (ascultă solicitările din pagini și trimite răspunsuri la acestea).
MongoDB
Este o bază de date care vă permite să stocați și să preluați informații.

Puteți explora aceste trei subiecte cu următorul material de învățare excelent și gratuit și continuarea acestuia.

Trebuie să aleg între dezvoltarea frontend, backend și ciclu complet

După ce ați încercat ambele opțiuni de dezvoltare, este timpul să faceți o alegere. Dacă nu ați avut timp să le încercați, consultați secțiunea anterioară a articolului pentru a completa golurile din cunoștințele dvs.

Până acum, ați scris două tipuri de cod. Unul este pentru interacțiunea cu utilizatorul, celălalt este pentru date. Ce preferi?

Interacțiunea utilizatorului? Felicitări, ești un dezvoltator front-end!

Interacțiunea cu datele? Felicitări, ești un dezvoltator back-end!

Ambii? Felicitări, ești un dezvoltator cu ciclu complet!

Nu ți-a plăcut nimic? Felicitări, dezvoltarea web nu este pentru tine. Bucura-te ca ti-ai dat seama acum si nu ai pierdut mult timp si bani. Nu ești pregătit să renunți? Poate că nu ați întâlnit o limbă pe care v-ați dori? Încercați să învățați alte limbi în secțiunea „Vreau să fiu dezvoltator back-end”.

Vreau să fiu un dezvoltator de ciclu complet

Rece. Trebuie să vă familiarizați cu tot conținutul secțiunilor „Vreau să fiu dezvoltator back-end” și „Vreau să fiu dezvoltator front-end”.

Vreau să fiu dezvoltator frontend și cunosc elementele de bază ale JavaScript, HTML și CSS

Pentru a fi un dezvoltator front-end eficient, trebuie să cunoașteți HTML, CSS și JavaScript la nivelul clientului. De asemenea, va trebui să înțelegeți bine mai multe cadre importante. Veți dobândi abilitățile pe care angajatorii și clienții se așteaptă să le găsească la dezvoltatorii front-end.

Până acum, ar trebui să cunoașteți deja elementele de bază ale HTML. În caz contrar, reveniți la Aflați elementele de bază ale HTML.

Învață HTML intermediar și avansat
Consultați tutorialul HTML intermediar și apoi tutorialul HTML avansat.
Aflați JavaScript avansat la nivel de client


O serie excelentă de cărți despre JS și este gratuită

Pentru a vă duce competențele JavaScript la nivelul următor, vă recomand seria de cărți You Don't Know JS de Kyle Simpson. Autorul a postat întreaga serie online gratuit:

De asemenea, MDN JavaScript ar trebui să fie cel mai bun prieten al tău.

[De asemenea, este disponibilă complet gratuit o traducere excelentă a cărții excelente „Expressive JavaScript” - aprox.transl.]

Cunoașterea „trinității frontend”, HTML, CSS și JavaScript este, desigur, grozav. Dar pentru a face bani, va trebui să vă familiarizați cu niște cadre.

Învață jQuery
Este cea mai populară bibliotecă JS din toate timpurile. În timp ce unele cadre noi au redus importanța jQuery dacă sunteți în căutarea unui loc de muncă, sunt șanse ca jQuery să fie în descrierea abilităților (și menționat în interviurile de angajare) pentru mulți ani de acum înainte.

Recomand să înveți jQuery folosind materialele FreeCodeCamp - este o metodă rapidă și eficientă. După aceea, accesați site-ul oficial de tutoriale pentru mai multe instrucțiuni.

Explorați cadrul popular JS
Framework-urile facilitează lucrul cu un anumit limbaj sau tehnologie, deoarece rezolvă cele mai mari probleme pe care le are tehnologia aleasă. JavaScript a avut un efect foarte benefic asupra dezvoltării și popularizării cadrelor.

Aproape o dată pe săptămână, apare un nou cadru, care este înclinat să ia locul unui nou standard de dezvoltare. Va trebui să cercetați site-urile de locuri de muncă și să căutați mult pe Google pentru a afla ce cadru este popular pe piața dvs. De asemenea, recomand un instrument de la Hacker News pentru evaluarea tendințelor pieței muncii.

La momentul scrierii acestui articol, următoarele cadre sunt populare:

După ce ai ales cel mai potrivit cadru și te-ai familiarizat complet cu acesta, merită să studiezi cadrul CSS care vine cu acesta. Cei doi cei mai mari jucători de pe această piață astăzi sunt Bootstrap și Material Design.

Bootstrap
Bootstrap a fost creat de dezvoltatorii Twitter și este deja destul de matur și popular. Există versiuni de Bootstrap pentru Angular, Angular 2 și React.
material
Material este un set de reguli de proiectare dezvoltate de Google. Câștigă popularitate, există versiuni pentru Angular și React. Deoarece Angular este, de asemenea, creația Google, Material se împerechează perfect cu acesta.

Iată câteva link-uri pentru tine:

Felicitări! Ai abilitățile cheie ale unui dezvoltator front-end!


Uită-te doar la el!

Vreau să fiu dezvoltator backend

Minunat! Primul pas este alegerea unei limbi. Există multe limbi pentru lucrul cu backend și fiecare are propriile sale avantaje și dezavantaje. Consultați tabelul limbajelor de programare sortate după popularitate. Toți sunt în top zece de zece ani. Marcate cu verde sunt limbile web care au câștigat popularitate de-a lungul anilor.


Indexul TIOBE al limbajelor de programare, www.tiobe.com/tiobe_index?page=index

Concentrează-te pe limbile ale căror nume le-am încercuit în verde. Dacă nu le cunoașteți, începeți din partea de sus a mesei și mergeți în jos. Oprește-te când găsești ceva care îți place și sapă adânc!

Dacă sunteți familiarizat cu una dintre limbile marcate cu verde și vă place, concentrați-vă asupra ei.

Îmbunătățiți abilitățile de care aveți nevoie pentru un interviu
Trebuie să vă pregătiți pentru mai mult decât pentru a scrie cod. Un articol bun de la Life Hacker conține o mulțime de informații utile și valoroase.
Principalul lucru este să câștigi un punct de sprijin pe piață
Nu vă faceți griji prea mult pentru a obține jobul de vis cu angajatorul de vis la salariul de vis. În primul rând, obțineți un loc de muncă în care scrieți cod pentru bani. Pe măsură ce câștigați mai multă experiență, veți putea planifica următorul pas.
Vreau să fiu freelancer
Să fii propriul tău șef este bine, dar este atât o presiune uriașă, cât și o mare provocare. Cea mai bună sursă de informații despre freelancing pe care am văzut-o vreodată este DoubleYourFreelancing.com. Are o serie de articole care să te ajute să devii un freelancer mai bun decât aș putea mine. Citit.

O altă opțiune, dacă ai încredere în tine, este serviciul Toptal. Acceptă doar 3% din toți cei care aplică și procesul este foarte dificil, dar dacă ajungi acolo, vei avea acces la locuri de muncă bine plătite la care poți lucra de la distanță.

Am început munca, dar simt că am ajuns într-o fundătură.
A intelege. Nu este ușor și dacă cineva ți-a spus altfel, fie nu a făcut-o, fie încearcă să te înșele din bani. Dacă simțiți că ați ajuns într-o fundătură, încercați următoarele opțiuni:
Reîmprospătați-vă intenția inițială
Întrebați-vă, scrieți pe hârtie de ce ați decis să mergeți pe această cale. Raspunsul tau mai este valabil? Dacă da, atunci de ce să te oprești? Redirecţiona!

De la autor: nimeni nu se îndoiește că profesia de programator web este prestigioasă și bine plătită. Acest lucru este dovedit de cererea uriașă de specialiști în programare web din partea proprietarilor de studiouri web, companii de software și alte domenii de afaceri. De aceea, pregătirea ca programator web poate fi văzută ca un pas solid și încrezător către recunoaștere, succes, bunăstare și muncă adecvat plătită. Cum să-ți începi cariera strălucitoare în lumea IT? Vom vorbi despre asta în articolul nostru de astăzi.

Rolul programatorilor web în lumea modernă

Necesitatea de a crea site-uri web pentru diverse companii și organizații este direct proporțională cu nivelul de dezvoltare a tehnologiilor web. Noi traim in era digitala iar unii dintre noi ne petrecem cea mai mare parte a timpului în realitate virtuala. Pe Internet, lucrăm, studiem, găsim cumpărători, parteneri, clienți.

Tendințele actuale de dezvoltare a afacerii sunt următoarele:

unele companii cresc pe internet în portaluri uriașe care aduc proprietarilor lor miliarde de profituri;

multe magazine achiziționează platforme de vânzare online sau chiar „se mută” complet de la offline la online;

tot mai mulți oameni preferă să „plimbe” cumpărăturile online, economisindu-și timp și bani.

De aceea, nevoia de specialiști în dezvoltarea de site-uri web a crescut vertiginos (și continuă să crească). De aceea s-a născut în tine o dorință firească de a te „alătura” acestui proces și de a deveni un programator web de la zero.

Bun specialistîn programarea web ar trebui să fie capabil să creeze corect arhitectura site-ului, să automatizeze munca de adăugare, ștergere și actualizare a conținutului, colectarea de informații de la vizitatori etc.

Ce este programarea web?

Unii spun că programarea web este un talent genetic, alții spun că este o artă. Și Wikipedia spune că aceasta este o secțiune de dezvoltare web axată pe crearea de aplicații web (programe care oferă site-uri dinamice pe Internet). Acum voi explica.

Un site web nu este un set de pagini web statice. Da, pot fi uimitor de frumoase, au conținut interesant, perfect organizat, dar asta nu este tot. Site-ul trebuie să fie interactiv, adică capabil să răspundă la acțiunile vizitatorilor, să colecteze și să prelucreze anumite date primite de la utilizatori.

Pe un site modern este imposibil să faci fără programe speciale- scenarii. Cu ajutorul lor, puteți adăuga un formular pe site părere, Zona personală, vot, căutare, filtrare etc. Astfel, sarcina unui programator web este de a „respira” viață paginilor web, astfel încât utilizatorul să le poată admira nu numai, ci și modul interactiv interactioneaza cu ei.

Componentele programării web

Web design.

Această subsecțiune este responsabilă pentru dezvoltarea conținutului grafic și funcțional al unei aplicații web personalizate care este creată utilizând standardele de marcare hipertext HTML și XHTML, precum și CSS (Cascading Style Sheets). Pentru cei care nu știu ce este, vă sfătuiesc să eliminați analfabetismul în această chestiune și să treceți prin. XHTML este o nouă generație de limbaj marcare hipertext.

Programare pe partea client (frontend).

Programare client- aceasta este crearea logicii din partea browserului (salvarea și procesarea datelor utilizatorului, schimbarea dinamică a paginii web fără reîncărcare, trimiterea cererilor Ajax către server). Este suportat urmatoarele tehnologii:

JavaScript. Este cel mai popular limbaj de programare și este acceptat de toate dispozitivele și browserele de internet. Pentru a învăța elementele de bază ale JavaScript, puteți utiliza, care explică în detaliu punctele principale ale limbajului. Dacă decideți să vă ocupați serios de programarea web front-end, vă recomand să parcurgeți curs JavaScript& jQuery pentru începători de la zero la pro;

PHP. Acest limbaj de programare web este cel mai simplu și cel mai utilizat. Este susținut de majoritatea furnizorilor de găzduire; a scris o mulțime de motoare pentru site-uri. Pentru studiu Fundamentele PHP pot recomanda;

ASP.NET. Aceasta este tehnologie de la Microsoft. Mediul său vă permite să creați ușor și rapid diverse aplicații web. Cadrul ASP.NET are grijă de reîmprospătarea asincronă a paginii AJAX, de ambalare apeluri de la distanță la alte servicii web în mesaje SOAP, generare de clase Proxy de Descrierea WSDL, conversia controalelor în Cod JavaScriptși HTML;

Python, Ruby, Perl și alte limbaje de programare pentru backend.

Unde și cum să înveți programarea web?

Mulți începători speră să urmeze cursuri care îi vor învăța cum să creeze site-uri web și să devină programatori web, iar apoi să obțină imediat un loc de muncă bine plătit. Ei trimit CV la diferite companii dar nu primesc niciun răspuns.

Faptul este că, pentru a deveni un programator web de la zero, trebuie să bati la mai multe uși deodată. Iată câteva dintre ele:

Dacă decideți să absolviți facultatea, vă sfătuiesc să alegeți una dintre următoarele specialități, în fiecare dintre care vi se vor preda principalele limbaje de programare:

Sisteme de informareși tehnologie;

softwareși administrarea sistemelor IT;

securitate IT;

informatica si Limba engleză / Inginerie calculator.

Cu toate acestea, cunoștințele universitare nu vor fi suficiente pentru a lucra cu succes ca programator web. Va trebui să vizionezi o mulțime de videoclipuri educaționale, să citești un munte de literatură limbi diferite, discutați cu o grămadă de programatori profesioniști (și uneori destul de aroganți), călcați pe o duzină de rake-uri și petreceți multe nopți nedormite scriind cod înainte să deveniți programator web și să puteți crea site-uri bune și grozave.

Între timp, te vei apropia din ce în ce mai mult de obiectivul tău prețuit. Profesionalismul tău va crește și odată cu el și câștigurile tale. Așa că învață lucruri noi tot timpul, dezvoltă și umple Internetul cu site-uri demne! Asta e tot. Abonează-te la actualizările blogului nostru și fii primul care află cele mai interesante. Ne vedem în curând!

Tendințe și abordări moderne în dezvoltarea web

Aflați algoritmul pentru creșterea rapidă de la zero în construirea site-ului web

Iar crearea de site-uri web devine din ce în ce mai populară și atrage atenția unui număr foarte mare de oameni. Chiar și o persoană fără educatie speciala, principalul lucru este dorința și dorința de a învăța material nou și practică constantă.

Opțiuni de studiu

De unde să începeți să învățați să codificați de la zero? Există mai multe moduri de a învăța materiale noi în acest domeniu. Profesorii particulari vă vor arăta cum să începeți să învățați programarea de la zero și vă vor învăța aspecte importante codul constructiilor. in orice caz aceasta metoda destul de scumpe, prin urmare, se folosesc în principal următoarele metode de antrenament:

  1. Cursuri de specialitate. Costul lor este mult mai mic decât lecțiile unui tutor personal. Este de remarcat faptul că mulți angajatori reacționează pozitiv la disponibilitatea diferitelor certificate de absolvire a pregătirii în academiile de informatică. Acordați atenție cursurilor companiilor de renume mondial Microsoft și Cisco.
  2. Cursuri gratuite de la distanță. Internetul este foarte un numar mare de servicii cu care puteți vizualiza cursuri de curs de la Oxford, Harvard și alte eminente institutii de invatamant pace. Există, de asemenea, platforme speciale pentru formarea abilităților practice de programare. Aflați mai multe despre învățământul la distanță și servicii de internet utile citeste mai departe in articol.
  3. Auto-învățare. De unde să înveți programarea de la zero dacă nu intenționezi să te înscrii la cursuri și să cheltuiești bani? În acest caz, cel mai ușor este să faci autoeducație. Ar trebui să începeți să învățați citind elementele de bază, nu vă aprofundați în teorie, începeți imediat să exersați, deoarece numai în procesul de creare a unui program veți dobândi abilitățile necesare.

După ce ai ales opțiunea de antrenament care ți se potrivește, ar trebui să te decizi asupra domeniului subiectului, deoarece programarea are o gamă destul de largă de ramuri diferite.

Cum să alegi direcția corectă?

Depinde direct de tipul de software pe care îl veți crea în viitor:

Dacă dimensiunea contează cel mai mult pentru tine salariile, îndreptați-vă atenția către piața muncii. Acum cei mai populari sunt dezvoltatorii care se specializează în Java, C#, ASP.NET, C++.

Limbi de nivel scăzut și înalt. Diferență și aplicații

Se crede că toate limbajele de programare sunt împărțite în nivel înalt și nivel scăzut. Codul nivel scăzut mai ușor de procesat de către un computer, dar scrierea necesită mult timp și necesită mai multe cunoștințe domeniul subiectului. Astfel de limbi (de exemplu, limbajul de asamblare) sunt folosite pentru a scrie software pentru microcircuite digitaleși microcontrolere. Nu sunt foarte convenabile pentru a învăța programarea de la zero. De unde să începeți să scrieți primele programe, vă vor spune următoarele din articol servicii utileși literatură de la autori de renume mondial.

Limbile de nivel înalt sunt mult mai ușor de utilizat, deoarece folosesc biblioteci încorporate pentru a simplifica și vizualiza codul. Majoritatea software-ului modern sunt scrise folosind limbaje nivel inalt.

Programare de la zero: de unde să porniți aplicațiile?

Procesul de creație programe mobile permite programatorilor să lucreze cu cele mai noi instrumenteși, ca rezultat, câștigați o sumă decentă de bani prin monetizare. Mai întâi trebuie să alegeți site-ul unde veți lucra:

  1. Google play. Magazin de aplicații pentru utilizatorii sistemului de operare Android. Acest sistem de operare are cea mai mare cotă de utilizatori de pe piață. Limbajele Java și C/C++ sunt folosite pentru a dezvolta aplicații și jocuri. Cele mai populare aplicații sunt mesageria instant, clienții retele sociale, Stocare in cloud, jocuri.
  2. Magazin Windows Mobile. Acest magazin câștigă rapid popularitate împreună cu smartphone-urile de la Microsoft. În țările CSI, majoritatea utilizatorilor preferă tabletele pe platformă Windows Phone. Programarea aplicațiilor pentru un astfel de magazin ajută la câștig mai mulți bani pe monetizare, deoarece, spre deosebire de Android, aproape toate programele în Magazin Windows distribuite pe bază de comision.
  3. Magazin de aplicații. O altă platformă profitabilă pentru dezvoltare (limbaj - Objective-C). Procesul de creare a programelor pentru dispozitive Măr necesită un mediu de dezvoltare preinstalat numit Xcode. urmatorul pas trebuie să înveți programarea Objective-C de la zero. De unde să începeți să scrieți cod, cartea lui David Mark „Learning C pentru Mac. A doua editie".

limbajul Java

Majoritate dezvoltatori profesionisti Este recomandat să începeți să învățați programarea cu limbajul Java. Este ușor de învățat și, în același timp, este solicitat pe piață. Utilizați sfaturile de mai jos dacă decideți să învățați programarea de la zero. Cum să începem dezvoltarea Java?

Java este un limbaj de programare la nivel înalt, orientat pe obiecte, necesar pentru dezvoltarea celor mai moderne aplicații și jocuri web. În timpul procesului de compilare (transformarea codului scris într-un limbaj pe care dispozitivul îl înțelege), codul este transformat într-o secvență de octeți, astfel încât programul este ușor de testat pe orice mașină virtuală Java.

Programare de la zero. De unde să începeți codarea Java și Web?

Limbajul Java este utilizat pe scară largă în dezvoltarea web. Înainte de a începe un proces de programare cu drepturi depline, ar trebui să înveți Java, PHP, MySQL, HTML, CSS. Mai mult transcriere detaliată aceste concepte sunt prezentate mai jos:

  1. Java - utilizat în scrierea utilităților pentru site-uri și prescrierea logicii funcționalității paginilor web.
  2. PHP - limbaj pentru creație pagini personale site-uri. Are o structură de script. Limba principală în site-urile web dinamice populare de astăzi. PHP este necesar pentru a înțelege scripturile și programarea de la zero. Unde sa încep? Din cartea lui Josh Lockhut PHP: The Right Way.
  3. MySQL este un sistem pentru gestionarea elementelor de bază ale datelor. Utilizat pe scară largă în crearea de site-uri web care necesită stocare volume mari date grupate.
  4. HTML nu este un limbaj de programare. Acesta este limbajul de marcare folosit pentru a scrie baza unei pagini web (blocuri de construcție, distribuirea textului și a paragrafelor și așa mai departe).
  5. css- masă în cascadă stiluri. Folosit numai împreună cu HTML pentru a da stil și aspect limbajului de marcare.

Doar știind Noțiuni de bază etape ale acestor tehnologii, veți putea începe să creați site-uri web profesionale dinamice, care sunt la mare căutare astăzi.

Programare web. Relevanță și caracteristici

Tema programării web este deosebit de relevantă astăzi. După cum am menționat mai sus, pentru a începe să dezvoltați elemente web, trebuie să aveți o cantitate destul de mare de cunoștințe despre limbaje de marcare, scripting, logică și stiluri.

Acum nu vei surprinde pe nimeni cu site-uri care sunt create doar cu folosind HTMLși CSS, prin urmare, dezvoltatorii web care sunt capabili să facă site-ul frumos vizual, precum și să-l umple cu toate funcționalitățile necesare utilizatorilor, au devenit solicitați.

Acest tip de dezvoltare necesită crearea a două tipuri de același program: părți server și client. Programatorul trebuie să înțeleagă principiul de funcționare al așa-numitelor prize - pachete de date care vă permit să transferați fluxurile de informații necesare prin rețea între server și client.

Crearea de aplicații pentru sistemul de operare Windows

Pentru a dezvolta astfel de programe, veți avea nevoie de cunoștințe de limbaj C#. Serviciu gratuit de la Microsoft numit Virtual Academy vă va permite să învățați toate caracteristicile limba datăși exersați scrierea aplicațiilor simple.

Conform noua politica Microsoft, toate aplicațiile sunt așezate în magazinul de software, astfel încât să puteți obține acces la monetizarea proiectului dvs.

Familia de limbaje C (C, C++, C#). Particularități

Programare de la zero - de unde să începeți să alegeți o limbă? Răspunsul la această întrebare poate fi obținut analizând mai detaliat tipurile de tehnologii de creare a aplicațiilor. De asemenea, ar trebui luată în considerare relevanța unei anumite limbi.

Limbile C, C++, C# au unul trasatura comuna- prezența funcției OOP (programare orientată pe obiect). Această tehnologie simplifică foarte mult procesul de scriere a codului programului. Fiecare obiect program este descris într-o anumită clasă și are propriii parametri, metode și proprietăți. Astfel, programatorul nu trebuie să scrie bucăți uriașe de cod de fiecare dată dacă același obiect trebuie folosit de mai multe ori.

Servicii Internet utile pentru învățarea principiilor de bază ale programării și a structurii de cod a oricărei aplicații

În prima etapă de învățare, aproape orice serviciu web vă va oferi să încercați capacitățile sale folosind Pascal, cel mai simplu dintre limbajele de nivel înalt. Este folosit în scopuri educaționale, este predat în școli și școli tehnice pentru ca elevii să înțeleagă programarea de la zero. Cum să pornești codarea Pascal? În primul rând, trebuie să descărcați mediul de dezvoltare pe computer. Este mic fisier executabil, în care să scrie cod de programare. Utilizați TurboPascal, deoarece este cel mai popular mediu de învățare a acestui limbaj de programare.

HourOfCode este un serviciu web de la Microsoft. Este conceput pentru a le arăta în mod clar elevilor ce sunt un ciclu, o variabilă, o clasă, condiții. Procesul de învățare este ca un joc.

CodeAcademy este o resursă puternică pentru a învăța aproape orice tehnologie de codare. Dedicând doar o oră pe zi, nu vei observa cum înveți să programezi și să creezi propriile proiecte.

Udacity este un serviciu care oferă utilizatorilor săi acces liber la prelegeri susținute de profesori și dezvoltatori eminenti.

Dobândirea experienței inițiale. Independent

După ce ați învățat principiile de bază ale limbii alese, puteți trece în siguranță la primele proiecte. Începeți să profesați independent, pentru că așa vă umpleți portofoliul și câștigați experiență în comunicarea cu clienții. Astfel de abilități vor fi utile în viitor dacă doriți să obțineți un loc de muncă într-o companie pentru o poziție oficială de dezvoltator de software.

Rezultat

Programarea de la zero: de unde să începem? Pentru manechini, profesorii de la universități de renume mondial vă sfătuiesc să exersați cu structurile de bază care stau la baza oricărui limbaj de programare. Înscrieți-vă la cursuri de specialitate sau auto-studiu ascultând prelegeri online.

Dezvoltator, educator și autor al cursurilor de programare Bill Soror publicate pe blogul FreeCodeCamp instrucțiuni detaliate pentru cei care doresc să învețe dezvoltarea web de la zero. În fiecare paragraf, Soror oferă link-uri către materiale de instruire și vorbește despre motivul pentru care este nevoie de un anumit limbaj de programare sau cadru.

Soror spune că codifică de 20 de ani. Și-a împărțit instrucțiunile în mai multe secțiuni pe baza obiectivelor de învățare - pentru învățarea de bază a limbajelor de programare și obținerea cunoștințe în profunzime pentru domenii specifice de dezvoltare.

„Am decis să învăț programarea. Îmi place internetul, dar nu știu de unde să încep"

Ca în orice altă disciplină, învățarea programării ar trebui să înceapă cu elementele de bază ale tuturor domeniilor dezvoltării web - adesea denumite „stiva completă”. „Acest lucru va ajuta la determinarea domeniului în care sunteți mai interesat să studiați și vă va oferi cunostinte de baza pentru a începe”, scrie Soror.

Bazele HTML

Dezvoltatorul sfătuiește să începeți prin a studia Bazele HTML. „Începând cu asta, vei stăpâni dezvoltarea interfețe cu utilizatorulși interacțiunea cu ei. În plus, veți vedea imediat rezultatul codului dvs. ”, notează profesorul.

„Cunosc elementele de bază ale HTML”

Bazele JavaScript

JavaScript este limbajul web browsere populare(Chrome, Firefox, Safari, IE) au încorporat Suport JavaScript. Fiecare site web sau aplicație web pe care o utilizați are o mulțime de JavaScript în interior. În plus: limbajul devine acum popular pe alte platforme - de exemplu, servere, desktop-uri și dispozitive.

„Cunosc elementele de bază ale JavaScript și HTML”

css

În continuare, Soror sugerează să treceți la învățarea CSS pentru a personaliza aspectul elementelor HTML. Pentru a face acest lucru, puteți folosi tutorialul gratuit de la Mozilla pentru a afla elementele de bază și site-ul CSS-Tricks pentru a rezolva probleme de bază.

Backend

„Până la acest punct, ați dobândit cunoștințele pentru așa-numita dezvoltare front-end. Acum puteți trece la „backend”. Acesta este codul care rulează pe server”, scrie Soror. - Există multe limbi back-end, dar, deoarece sunteți deja familiarizat cu JavaScript, vă recomand să învățați Node JS ( platforma software- aprox. ed.). Pe lângă Node JS, Express și Mongo DB pot fi explorate.”

Express este o bibliotecă care facilitează interacțiunea Node JS cu un server web. Mongo DB este o bază de date pentru stocarea și preluarea informațiilor.

jQuery

cadre JS

Framework-urile vă permit să simplificați munca cu limbajul de dezvoltare și să rezolvați probleme mari folosind tehnologie gata făcută. Există pe piață un număr foarte mare de cadre din cauza popularității excesive a JavaScript-ului, scrie Soror.

ReactJS

React a fost dezvoltat de Facebook și funcționează cu arhitectura Flux. Este o bibliotecă JavaScript pentru crearea de interfețe. Recent, React a depășit o altă bibliotecă comună, Angular, în popularitate, așa că este un loc bun pentru a începe să învețe framework-uri cu ea, notează Soror. Curs gratuit pentru a învăța React.

unghiulară și

Angular este dezvoltat de Google. Cadrul este încă popular printre dezvoltatori. După anunțul Angular, Google a decis să rescrie complet cadrul și a lansat Angular 2, care a dus la două dezvoltări complet diferite cu același nume.

Cadrul Angular 1 poate fi învățat gratuit la Code School. Puteți face cunoștință cu Angular 2 cu ajutorul videoclipurilor gratuite.

Ember JS

Cadrul nu este la fel de puternic ca Evoluții Googleși Facebook, dar câștigă popularitate în rândul dezvoltatorilor. Documentație oficială Ember JS.

„Vreau să devin un dezvoltator backend”

„Există multe limbi în dezvoltarea back-end, fiecare are propriile sale avantaje și dezavantaje”, scrie profesorul. El oferă, de asemenea, un grafic al popularității lor în ultimii 10 ani:


Limbajele de programare cu chenar verde sunt cele pe care trebuie să ne concentrăm, spune Soror.

Java

Un limbaj de programare foarte popular dezvoltat de Sun Microsystems (deținut acum de Oracle). Java este folosit pentru a dezvolta aplicații pentru Android. Poate fi folosit și pentru a crea aplicații pentru computer și web.

Deoarece este un limbaj popular printre dezvoltatori, există un număr mare de instrucțiuni pentru acesta pe web. Soror recomandă să începeți cu un curs pentru începători.

C#

Limbajul conceput de către Microsoft ca alternativă la Java. La fel ca Java, C# este un limbaj de programare orientat pe obiecte și poate fi folosit nu numai pentru a dezvolta aplicații web, ci și aplicații desktop. sisteme de operare. Curs C# gratuit de la Microsoft Virtual Academie.

Piton

Pentru Python nu există marcă mare. Cu toate acestea, acest limbaj permite dezvoltare rapida. Site de la lecții gratuite pentru a învăța Python.

rubin

Printre dezvoltatori există mulți fani ai Ruby - ei fac reclamă și admiră în mod activ acest limbaj, scrie Soror. Cu toate acestea, popularitatea sa crește într-un ritm lent. În esență, limbajul este un amestec de programare funcțională și imperativă.

Cel mai bun loc pentru a învăța Ruby este RubyMonk, potrivit dezvoltatorului.

Practică

Înainte de a efectua sarcini practice, Soror vă recomandă să creați imediat un profil pe site-ul GitHub - un depozit online pentru stocarea, gestionarea și publicarea codului. Puteți începe cunoașterea platformei cu instrucțiunea „Hello World” sau un curs interactiv.

Puteți începe dezvoltarea creând propriul blog(instrucțiune pentru programarea unui blog în React și Node) sau calendar (instrucțiune pentru programarea unui calendar în C# și .Net).

Lecții gratuite pot fi găsite și la Free Code Camp:

  • Timer Pomodoro (frontend).
  • Club de tranzacționare (full stack).
  • Serghei Savenkov

    un fel de recenzie „rare”... parcă s-ar grăbi undeva