Javascript – In lumina reflectoarelor

Javascript - In lumina reflectoarelor
by

Ti-a trezit vreodata curiozitatea termenul Javascript? In acest articol facem o prezentare a ce este JavaScript, de ce ar trebui sa il inveti si de ce a ajuns in lumina reflectoarelor.

Prima si cea mai comuna confuzie cand vine vorba de JavaScript este asocierea cu Java. Suna cam la fel, dar e ca si cum am spune ca mic e acelasi lucru cu microfon; doar pentru ca primul cuvant exista in al doilea, nu inseamna ca au aceeasi semnificatie.
Exista multe diferente intre cele doua limbaje de programare, de la sintaxa (felul si ordinea scrierii), la scopul folosirii.

Javascript este un limbaj de programare care ruleaza in primul rand in browser, si este destul de usor de invatat (comparand cu cele low level, cum ar fi C++ sau Java), care din anumiti factori va creste tot mai mult ca fiind unul dintre cele mai cautate limbaje de programare.
Totusi, ca sa intelegem asta mai bine, trebuie sa ne uitam putin in trecut, sa putem observa de ce a ajuns JavaScript in acest punct.

ECMAScript
JavaScript (numit oficial ECMAScript) a aparut in 1995 si a fost creat cu scopul de a oferi, printre altele, un anumit nivel de interactivitate pentru developeri (programatori), ramanand folosit la un nivel relativ mic in website-uri (ex: in trimiterea informatiilor din formulare de contact). Pe parcursul anilor, a tot crescut, avand tot mai multi developeri (si firme mari) care adaugau diferite facilitati limbajului.

jQuery
Dupa multi ani de zile si multe framework-uri, unul a iesit in evidenta, jQuery (2006). jQuery a ajutat JavaScript sa fie mult mai folosit in crearea de site-uri dinamice, in special din cauza Ajax-ului. Ce a oferit Ajax-ul a fost abilitatea de a schimba pagini fara full page refresh. Cand navighezi pe mare parte din site-uri si dai click pe un link, vei vedea ca inainte ca pagina sa se incarce, totul dispare pentru o secunda sau mai putin, dupa care apare pagina noua — acesta e un full page refresh. Cu AJAX, asta nu se mai intampla, si se incarca doar ce avem nevoie.
Partea mai interesanta e de ce a devenit faimos acest framework; nu pentru ca a adus ceva ce nu exista deja in JavaScript, ci doar facea toata treaba mult mai usoara.
Domeniul care a primit cel mai mult ajutor de la jQuery a fost si este cel al front-end developerilor (cei care fac partea pe care o vedem pe site-uri, cum ar fi afisarea corecta a paginilor web, adaugarea de comentarii, mesajele de notificare, site-uri responsive, etc.)

MVC Frameworks
In anii recenti, au aparut multe frameworkuri de front-end bazate pe tiparul MVC; EmberJS, AngularJS, ReactJS, toate avand la baza un principiu simplu; **crearea de site-uri dinamice, usor de folosit si mentinut**. Partea cea mai buna? Toate sunt bazate pe JavaScript.

NodeJS
The new kid on the block
Cam asta ar fi insumarea NodeJS (2009) cand a aparut (noul copil din cartier), si poate fi numit asa si in momentul de fata.
Bazat pe Google V8 Engine, Ryan Dahl, creatorul NodeJS, a facut o platforma pentru a construi aplicatii rapide si scalabile, care a venit cu solutii la problemele cu care industria se confrunta; scalabilitatea, push capabilities, websockets, si altele.
Back-end developerii (dar si multe afaceri) au fost avantajati de noua tehnologie si de plusurile pe care le aducea. Back-end developerii sunt cei care creeaza logica din spatele site-urilor pe care noi le vizitam si folosim, au grija ca sistemele sa fie rapide, sigure si sa functioneze la parametri optimi.

MongoDB
Bazat tot pe Google V8 engine, MongoDB, baza de date SQL bazata pe documente, a fost adoptat rapid pentru ca oferea solutia potrivita pentru baze de date scalabile, dinamice, usor de modificat si folosit.
Back-end developerii si administratorii de baze de date au devenit avantajati de usurinta si scalabilitatea oferita de noul sistem.
MongoDB si NodeJS sunt bazate pe Google V8 Engine; ceea ce inseamna ca functioneaza pe aceeasi baza — scriem cod in JavaScript pentru baze de date si back-end. Impreuna cu diversele framework-uri MVC ne permit sa scriem JavaScript si pe front-end, iar asta inseamna ca avem nevoie de un singur limbaj de programare sa putem face sisteme complexe de orice fel.
In general, firmele folosesc platforme prin care au nevoie de oameni care sa stie cel putin 3 limbaje diferite de programare (PHP, MySQL, JavaScript), plus HTML, CSS, in unele cazuri e nevoie de invatarea multor diferite framework-uri si/sau limbaje de programare, deci se poate intelege entuziasmul programatorilor spre mutarea de infrastructura la JavaScript.
Nici nu am mentionat ca se pot face aplicatii pentru mobil, aplicatii pentru Windows, Linux si Mac, jocuri de mobil si calculator, pe Raspberry Pi (un calculator foarte mic, din care poti face chiar orice; telecomanda pentru casa, server mic, robotel, samd.), si toate in JavaScript.
Plus ca firme cum ar fi eBay, Microsoft, Google, Walmart, il folosesc pentru multe proiecte sau parti ale sistemelor interne.
La prima vedere, asta pare sa insemne ca toata lumea ar trebui sa sara si sa invete JavaScript.

Dar JavaScript are anumite capricii, cum are orice alt limbaj de programare, care fac adoptarea unor principii si rezolvarea unor sarcini sa fie problematice, pentru ca este inca un produs care nu a ajuns la maturitatea obisnuita ca si alte limbaje de programare, cu mult mai multi ani in spate.
Cum nu se poate si nu se va putea muta o industrie intreaga intr-un singur loc, orice alt limbaj de programare este inca bun de invatat. Experienta pe care un programator o acumuleaza in multi ani de zile din limbaje de programare sau framework-uri se insumeaza intr-o calitate mai buna, sigura si rapida a unui produs.
NodeJS spre exemplu, sau front-end MVC frameworks nu se potrivesc oricarui proiect.
Crearea proiectelor pe aceste sisteme complexe necesita sume considerabile de bani, oameni experimentati si, desigur, timp.
Cineva care doreste un site simplu de prezentare (fie ca e vorba de o firma sau o persoana fizica.) nu ar avea absolut nimic de castigat dintr-un site dinamic.

Concluzie
JavaScript a devenit in ultimii 8 ani unul din competitorii majori de pe piata limbajelor de programare, iar nevoia de locuri de munca unde JavaScript se va numara printre cerinte va tot creste in urmatorii ani.
Se vor cere joburi cum ar fi back-end developer, front-end developer, pe NodeJS, AngularJS, JavaScript, ReactJS, Express, MEAN stack.
Asta nu inseamna ca experienta sau invatarea oricarui alt limbaj de programare e un lucru de care ar trebui sa te feresti, ba chiar dimpotriva; intelegerea avantajelor si dezavantajelor diverselor limbaje de programare, feluri de lucru, iti vor deschide ochii catre drumul care ti se potriveste tie, cat si clientului mai bine.
In cel mai rau caz, in cazul in care esti deja un programator experimentat, adaugarea de JS in portfoliu nu va face nimic altceva decat sa fie un plus pentru experienta personala.

 

Share

Recommended Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *