În articolul Vreau să devin un programator am detaliat ce ar presupune meseria de programator și dacă tu te potrivești în acest mediu. Acum vreau să vă dau o listă de puncte care v-ar putea ajuta pe drumul pe care bănuiesc că l-ați început sau vreți să îl începeți.
1. Să fii programator înseamnă să știi mai mult de un limbaj de programare de cele mai multe ori.
2. Să fii programator înseamnă să fii la curent cu noile versiuni ale tehnologii cu care lucrezi.
3. Să fii programator înseamnă să fii curios și să încerci lucruri noi.
4. Să fii programator înseamnă să cauți soluții la probleme.
5. Să fii programator înseamnă să acorzi atenție detaliilor și să poți transpune o cerință de business în algoritmi.
6. Să știe să lucreze cu cel puțin un sistem de operare Windows, dacă plănuiește să învețe .Net sau Java și Linux dacă plănuiește să înveți Python, PHP, Node.js și altele.
7. Să știe să lucreze cu cel puțin un tip de baze de date: Oracle, PostgreSql, Sqlite, MySql, MongoDB etc.
7. Să știe să lucreze cu GIT (Github.com, https://bitbucket.org/, https://about.gitlab.com/), care este absolut necesar chiar și atunci când ești la început.
9. Să știe foarte bine structuri de date și ce înseamnă un algoritm, cum poate construi unul.
10. Să ai rabdare și să vii perseverent.
Ce înseamnă să fii programator mai în detaliu.
Să știi mai mult de un limbaj de programare de cele mai multe ori
Vă spun din prima, în caz că nu știați. HTML nu este un limbaj de programare. HTML = Hyper Text Markup Language
O listă mai detaliată cu limbaje de programare găsiți aici
Fiecare nișă de programare presupune un set de limbaje de programare esențiale. Eu de exemplu lucrez în web development. Asta cuprinde construire de website-uri, magazine online, bloguri, platforme online și altele. Pentru asta este absolut necesar să știu HTML pentru că în final construiesc pagini web. Trebuie să știu javascript, pentru că trebuie să creez acțiuni dinamice pe o pagină. Trebuie să știu CSS, SASS, LESS pentru a face modificări în modul cum arată o pagină.
Limbajul principal pe care lucrez este PHP. Cu el pot salva informații în baza de date, care presupune astfel și cunoștințe pentru MySql de cele mai multe ori în cazul unui web developer.
Mai mult de atât orice web developer, trebuie să știe un sistem de operare, de cele mai multe ori Linux, pentru a putea executa acțiuni pe acel server.
În cazul unui programator care activează în domeniul dezvoltării de jocuri probabil acest diferă și la fel va diferi și în cazul celor care construiesc aplicații mobile.
Sper că acum înțelegeți necesitatea cunoașterii a mai multor limbaje de programare.
Să fii la curent cu noile versiuni ale tehnologii/lor cu care lucrezi
Ce este o versiune? Am găsit aici o lucrare care detaliază acest principiu.
Limbajele de programare, ca orice alt produs fizic, este îmbunătățit cu timpul. Pe măsură ce mai mulți programatori îl folosesc ei găsesc erori, probleme de securitate, sau metode mai eficiente, mai rapide de a folosi acel limbaj de programare. Prin urmare dacă avem versiunea 1.0.0, folosit într-un site, și cineva descoperă o metodă sa obțină toate parolele datorită unei greșeli în limbajul de programare, cineva va veni și va rezolva problema respectivă și se va trece la o nouă versiune 1.0.1.
Tu ca programator trebuie să fii la curent cu aceste noi versiuni și să faci modificările astfel încât probleme să fie rezolvate.
Ca în multe alte meserii, la doctori apar noi aparate mult mai exacte și mai precise, la avocați atunci când se schimbă legile, și programatorii trebuie să fie la zi cu noile versiuni.
Să fii curios și să încerci lucruri noi
Limbajele de programare ca și telefoanele spre exemplu, îmbătrânesc tehnologic sau pur și simplu nu mai sunt populare. Apar noi limbaje care sunt mult mai rapide și mai simple de scris, sau folosesc mult mai puțină putere de calcul pentru a rezolva probleme pe care le rezolvau cele vechi.
De aceea ca programator este recomandat tot timpul să încerci noi limbaje de programare, noi tehnologii sau principii. Este foarte posibil să poți face mult mai multe lucruri mai ușor.
Este foarte posibil ca odată ce anii trec, un limbaj să nu mai fie folosit și astfel probabilitatea ca tu să obții un nou loc de muncă sau să mai fii relevant pe piața muncii să fie mult mai mică.
Să cauți soluții la probleme
Să știi un limbaj de programare însemnă să știi să scrii cod în acel limbaj, dar asta nu înseamnă că vei putea rezolva probleme. Soluțiile le dezvoltă programatorul și ține foarte mult de modul personal de gândire, de logică și desigur de experiență. După ce acumulezi mai multă experiență vei vedea anumite tipare în problemele pe care trebuie să le rezolvi, și vei ști să le faci dar desigur va exista și problema resurselor de care dispui și a cerinței clientului final.
Să spunem că lucrezi la un magazin și cerința clientului, sau a task-ului, este să listezi toate produsele pe o pagină cu prețul corespunzător și stocul acestuia. Aici va trebui să știi ce algoritm să aplici, care este cel mai potrivit, și de asemenea cel care îndeplinește criteriile. Asta este destul de simplă pentru un începător dar să spunem că avem următoarea cerință: ia informațiile despre toate comenzile livrate dintr-un alt sistem, doar câte zece pe rând, doar în intervalul 1-3 noaptea și trimite notificări către clienții care au optat să fie notificați. Parcă se complică puțină problema. De multe ori principii de genul Divide et impera te vor ajuta să găsești soluții.
Să acorzi atenție detaliilor și să poți transpune o cerință de business în algoritmi
Documentația existentă pentru anumite limbaje nu este întotdeauna cea mai corectă sau cea mai exactă sau explicită. Vei găsi funcții care fac exact ce vrei tu, dar consumă multe resurse, sau care necesită mult timp pentru a se executa. Este posibil ca folosind alte două funcții să ajungi la același rezultat și să obții un timp de execuție de timp. De multe ori apar diferențe de secunde, dar imaginează-ți că o aplici pe un set de sute de mii sau milioane de intrări/rânduri.
De multe ori în codul unui proiect este posibil să găsești două funcții care se numesc la fel, dar în părți diferite. Este posibil ca una să primească anumiți parametrii și alta să nu primească. Trebuie să fii foarte atent la început ce folosești și cum transpui în cod ceea ce vrei să faci.
De multe ori, va fi nevoie să reiei codul scris pentru că apar probleme de sintaxă, sau probleme de necompilare, și neînchiderea unei acolade, a unui rând poate genera astfel de erori.
View Comments (0)