În această perioadă cu toții avem suficient timp să învățăm ceva nou, să ne reprofilăm, sau pur și simplu să încercăm programarea web.
La o prima căutare pe orice rețea de socializare sau motor de căutare, vei găsi o mulțime de informații, și îți va fi foarte greu să iei o decizie cu ce anume să începi.
Am o veste bună pentru tine: am pregătit un roadmap / ghid despre cum poți să devii php developer / javascript developer într-un timp cât mai scurt. Poți parcurge singur acest roadmap sau cu prietenii. Dacă ai pe cineva lângă tine vei simți o provocare, vei vrea să devii mai bun și în același timp vei putea discuta provocările apărute. Dacă alegi să înveți singur, vei avea nevoie de multă ambiție, perseverență și de un laptop decent.
1. Bazele limbajului PHP
Primul pas este să învățăm bazele limbajului PHP, este important să știi ce este o variabilă, o instrucțiune, o funcție, noțiuni de OOP (programare orientată pe obiecte) și cum te poți conecta la o bază de date MySQL.
Îți recomand 2 siteuri:
– www.php.net – Site oficial
– w3schools.com – Este un site prietenos, unde și cel mai leneș poate învăța, pentru că sunt exerciții rezolvate și poți da click pe Try Now.
Totuși, te rog să rescrii toate exercițiile utilizând un editor de text (nu Microsoft Word) și să le salvezi în fișiere separate.
Pentru a rula script php ai nevoie de php instalat pe calculator. Pentru utilizatorii de Windows recomand XAMPP, WAMPP orice software similar, pe Linux avem LAMP iar pentru MacOS avem MAMP.
2. OOP în PHP – nivel avansat
Programarea orientată pe obiecte este o cerință importantă, majoritatea aplicațiilor fiind construite obiectual. OOP înseamnă ca funcționalitățile și variabilele le poți grupa în așa numite clase PHP. Un obiect este instanța unei clase.
Pe w3schools găsești mai multe informații și exemple aici, pentru manual OOP accesați siteul oficial PHP.
3. Laravel 6+
Laravel este un framework PHP stabil, rapid și ușor de învățat. Se pot construi atât aplicații simple cât și aplicații foarte complexe. Pentru baze de date folosește MySQL și are ORM propriu Eloquent. Prin Eloquent este foarte ușor să citești, să scrii, să editezi și să ștergi date.
Se instalează ușor, ai nevoie doar de composer – package manager pentru php. Prin composer instalezi tool-ul laravel, iar pentru un proiect nou rulezi comanda:
laravel new nume-proiect
Laravel are un tool mișto care se numește artisan și îți ușurează munca. Acest tool se rulează în linia de comandă, pentru asta, dacă ai Windows, neapărat să instalezi git bash.
4. REST API
Pe scurt, un API îți permite să comunici cu alte aplicații. De exemplu, majoritatea aplicațiilor mobile folosesc un API să interacționeze cu aplicația web/desktop și să trimită/primească informații din baza de date.
REST înseamnă Representational State Transfer.
API vine de la Application Programming Interface.
Sună complicat, de fapt sunt niște requesturi care returnează un JSON – obiect sub formă de string. Majoritatea limbajelor de programare cunosc acest format.
Cel mai bun site de unde poți afla mai multe este restfulapi.net .
5. jQuery + Ajax
jQuery este o librărie javascript care ne ușurează munca. Limbajul javascript este complex și greu de învățat, în jQuery același lucru este simplu și ușor de învățat. Dacă întrebi un programator web cu experiență, probabil că o să-ți spună să nu înveți/folosești jQuery. Dezavantajul este că e vorba de o librărie mare ca dimensiune și e relativ lent.
Eu totuși îți recomand, depinde de proiect, dacă folosești sau nu. De exemplu în Laravel avem inclus și configurat jQuery și framework de css Bootstrap.
AJAX vine de la Asynchronous Javascript and XML și înseamnă că poți să faci requesturi fără să reîncarci pagina de fiecare dată. Este un best practice de câțiva ani buni.
6. Javascript ES6+
Javascript-ul avansează constant, în fiecare an fiind adăugate funcționalități noi. Cele mai multe schimbări s-au întâmplat în 2015 când a fost introdus standardul ES6.
Este vorba despre javascript pur mai deștept, mai bine gândit, și din acest moment au început să se nască frameworkuri JS care permit să implementezi o aplicație server side în javascript.
7. NodeJS / ExpressJS / MongoDB / Rest API
Dacă ai studiat și ai înțeles primele 6 cursuri, urmează să construiești un REST API folosind NodeJS, framework-ul ExpressJS și MongoDB pentru bază de date. Pe scurt, MongoDB este o bază de dată tip document iar MySQL este o bază de date relațională.
Pentru acest curs îți recomand să folosești Visual Studio Code ca și editor text.
8. VueJS
VueJS este un framework Javascript popular, permite realizarea aplicațiilor complexe real-time. Sintaxa se învață într-un weekend și se poate integra în orice aplicație existentă în PHP.
Este conceput pentru SAP – single page application – dar se poate folosi și la alte tipuri de proiecte.
9. VueCli / VueRouter / Vuex
VueJS este un fișier js mic ca și dimensiune, din acest motiv anumite lipsesc anumite funcționalități de bază cu care te-ai obișnuit deja în framework-uri PHP, cum ar fi: tooluri in terminal, router, central storage.
VueCLI îți permite să creezi un schelet de aplicație care include câteva module javascript și setări.
Prin VueRouter poți să creezi multi page application.
Vuex stocheaza datele într-un loc centralizat.
10. VueJS / Laravel 6+
Framework-ul Laravel are pregătit tot pentru integrare VueJS. Tot ce ai de făcut este să-ți instalezi modulele javascript prin rularea comenzii:
npm install
Poți să folosești toate funcționalitățile din VueJS, VueRouter, Vuex. Eu personal cred că este cea mai bună combinație pentru a implementa o aplicație complexă real-time cu un API stabil.
Interviu de angajare
După ce ai parcurs și învățat învățat cele 10 cursuri în ordinea menționată, poți să începi pregătirea pentru angajare ca și programator web junior. Este important să ai un portofoliu cât mai mare și cu multe funcționalități.
Dacă nu-ți place să înveți singur sau dorești să înveți într-un ritm mai rapid, scrie-mi un email sau contactează-mă pe whatsapp.