Front-end developer - sfaturi

Salut, salut! Vreau sa ma apuc de web development, in special front-end development.

Eu vreau sa ma axez pe front-end development, HTML/CSS si Javascript, dar in special vreau sa ma duc pe Javascript. Programare client (browser)-side.

Cand zic Javascript, nu zic doar jQuery care din cate am inteles este destul de simplu ca framework, ci cat mai multe framework-uri, niste tools/librarii, niste cunostinte, aplicate in Javascript, de design patterns si OOP.

Ce pareri aveti?

Tin sa precizez ca sunt boboc. :smiley:

Multumesc anticipat! Multa bafta si spor la treaba!

In momentul in care ajungi la un anumit nivel cu HTML & CSS , aprofundeaza responsive design-ul. In momentul de fata cam toate paginile web necesita sa fie scalabile pentru toate dispozitivele ( mobil , tableta , etc ).Invata cum functioneaza CSS-ul si Javascript-ul pur si doar dupa aceea avanta-te sa folosesti diferite tool-uri care sa iti usureze munca.

Esti in momentul in care ai timp sa explorezi mult mai mult decat partea de front-end , poate ca ar fi bine sa nu te limitezi doar la atat. Daca am gresit cu ceva , sigur colegii mai experimentati de pe acest forum ma vor corecta.
Succes ! :slight_smile:

2 Likes

Dacă ar fi să învăț azi să scriu HTML/CSS, aș porni de la bun început cu responsive. Dacă aș învăța un limbaj nou, aș porni din start cu TDD[1].

Atât responsive cât și TDD pleacă de la niște idei ușor diferite decât variantele „clasice” și nu are rost să înveți anumite paradigme doar pentru a te dezvăța. :slight_smile:

[1] Îți recomand acest curs. Chiar dacă nu ești familiar cu JS (sau cu programarea, în general), îți va face o idee despre avantajele și modul în care se folosesc testele.


@Cristi09: O completare la partea cu responsive: dimensiunea ecranelor se poate duce și în sus, nu doar în jos:

4 Likes

Va multumesc mult amandurora pentru sfaturi! Voi tine cu siguranta cont de fiecare lucru pe care mi-l spuneti.

@Cristi09, multumesc! Mult succes si tie in planurile tale! :slight_smile:

@iamntz, eu vreau sa ma axez pe Javascript. Insa, eu stiu ca Javascript fara HTML & CSS nu pot face treaba. Am nevoie si de ele. Tu ce ma sfatuiesti sa fac? Sa pornesc din start, dupa cum ai spus si tu, cu responsive design sau sa merg cu TDD?

Tin sa precizez faptul ca pe viitor sunt sigur ca nu ma voi axa pe HTML / CSS, ci voi incerca cat mai mult sa fac treaba in Javascript.

Nu ma voi crampona doar in HTML & CSS si JS, cu siguranta. Odata cu experienta pe care o acumulez, voi invata si cate ceva din back-end si cate ceva pentru back-end-ul cu JS (node.js etc.). Daca gresesc, ma puteti corecta.

Multumesc!

Javascript rulează foarte bine și pe partea de server (cu NodeJS); de câțiva ani nu mai există separarea asta cu JS e pe frontend, orice altceva e pe backend. :slight_smile:

Ce am zis eu cu responsive & tdd nu sunt lucruri care se exclud simultan. Le poți face pe amândouă în paralel.

Dacă vrei să înveți, evită framework-uri de orice fel. Nu bootstrap, nu jQuery, nu altceva.

Poți începe direct cu ES6, deși cred că toată bătaia de cap necesară până a putea scrie prima linie de cod este extrem de descurajantă…

1 Like

@iamntz, tu, daca ai fi fost in locul meu, ce ai fi facut?

Dintotdeuna ceea ce mi-am propus nu am lasat balta. Cand vreau sa realizez cu adevarat ceva, lupt, muncesc pana reusesc sa ajung la acel ceva.

Sigur, nu m-as crampona doar in front-end cu Javascript-ul. Pana la urma, daca vreau sa ma specializez, axez pe JS, trebuie sa stiu de toate cu el :slight_smile:

Sounds good to me.

O singura mentiune: intre cele trei tehnologii nu exista o ierarhie. Sunt facute sa fie folosite in concert pentru realizarea de site-uri si aplicatii web. HTML descrie structura unei pagini, CSS layout-ul si “stilul”, iar JavaScript partea de interactiune. Intr-o aplicatie moderna interactiunea ia partea leului din timpul de dezvoltare si este, pe buna dreptate, partea cea mai complicata, dar nu as numi-o mai importanta. Este similar cu separarea de pe Android in codul Java, fisierele .xml de layout si fisierele .xml de stil. E defapt, un pattern destul de comun pentru constructia de aplicatii “client”. Asa ca cel mai bine e o abordare “difuza”. Inveti ceva HTML, ceva CSS, ceva JS, si repeti.

4 Likes

Multumesc! :slight_smile:

Ai dreptate, fiecare are rolul lui. Ce poti face cu Javascript nu poti face cu HTML si invers. Fiecare reprezinta cate o piesa importanta. Fara una din ele, se rupe firul. :slight_smile:

iamntz mi-a zis ca pot invepe direct cu ES6. Ce parere ai? :smiley: (@iamntz, iti respect sfatul, insa cat mai multe opinii ma ajuta. sper ca ma intelegi. multumesc inca o data pentru ajutor)

E o idee buna. E putin mai laborios, dupa cum spune si el, setup-ul initial, dar merita. ES6 este un limbaj decent.

Merita sa faci si un tutorial cu metoda veche (probabil ceva de pe w3schools :slight_smile: ) ca sa stii cum era “pe vremuri”.

1 Like

Cand spuneti sa incep direct cu ES6 va referiti la inceperea cu ES6 inaintea HTML-ului si CSS-ului sau sa incep cu ES6 si sa nu mai fac Javascript-ul “normal”? (intreb pentru ca vreau sa fiu sigur :smiley: )
Eu cred ca va fi bine indiferent de situatie, daca imi propun sa fac asta. Vreau sa urmez treaba asta, deci pot. Nu puteam sa imi aleg drumul asta daca stiam ca nu pot reusi :slight_smile:

Daca vrei sa te axezi pe web development, recomand mai intai sa inveti ideile de baza a HTML.
Dupa ce stii etichetele HTML de baza, ar trebui sa incepi sa inveti CSS si cum sa combini cele 2 structuri.
Dupa aceasta, te-ai axa pe CSS responsive.
Apoi vine partea frumoasa cu JS. @iamntz spunea foarte bine sa inveti direct ES6 (noua versiune de JS). Aici e de preferat sa aplici de la inceput TDD.
Abia dupa aceea ai putea aborda si limbajele backend (NodeJS, PHP, Ruby, Python sau orice altceva doresti tu sau ti se recomanda)
In final vei avea nevoie si de solutii de stocare SQL sau NoSQL. Cand vei fi ajuns la acest punct vei sti exact in ce directie sa apuci mai departe :slight_smile:

1 Like

In acest raspuns o sa incerc sa rezum cam tot ceea ce as putea spune despre ceea ce imi doresc sa fac. Eu cred ca dupa acest raspuns o sa va puteti da seama exact unde imi doresc sa ajung. :smiley:

Eu vreau sa ma axez pe front-end development, HTML/CSS si Javascript, dar in special vreau sa ma duc pe Javascript. Vreau sa aprofundez JS-ul.

Cand zic Javascript, nu zic doar jQuery care din cate am inteles este destul de simplu ca framework (mi-au spus cativa prieteni, eu, personal, nu stiu cum este :slight_smile: ), ci zic mai multe framework-uri, niste tools/librarii, niste cunostinte, aplicate in Javascript, de design patterns (as putea urma cursul recomandat de iamntz) si OOP, care o sa fie mai greu pentru mine daca nu o sa invat niste C++, cred.

iamntz mi-a spus sa evit framework-urile in perioada de invatare. Stiind ca el are cunostinte in domeniu, cu siguranta sfatul lui ma va ajuta. Totusi, odata cu avansarea in Javascript, cred ca pot trece si la framework-uri. Nu stiu. Poate gresesc in totalitate.

Ce pareri aveti?

Multumesc!

Si eu sunt de acord cu @iamntz ca frameworkurile trebuie invatate dupa ce stapanesti (la un nivel acceptabil) limbajul de baza. Vezi articolul Unchiului Bob pe tema asta: Clean Coder Blog

Nu ai nevoie sa stii C++ ca sa inveti OOP. E exact pe dos: trebuie sa stii OOP ca sa inveti C++. In plus, OOP este o paradigma care se aplica la mai multe limbaje de programare, nu doar la C++.

1 Like

Am inteles. Cam care ar trebui sa fie drumul meu exact? Cu ce trebuie sa incep exact, cu ce continui etc.?

Eu m-am gandit asa:

  • HTML & CSS, apoi

  • TDD ES6, dupa care

  • Aprofundare ES6 (tools/librarii, OOP, frameworks - Numai dupa ce voi avea cunostinte destul de solide :slight_smile:

Cu siguranta toate acestea nu sunt batute in cuie. :slight_smile:

Multumesc!