Cand inveti programare, este de la sine inteles ca intreg procesul iti va fi presarat cu nenumarate greseli pe care cu siguranta nu le vei constientiza pe moment. De observat este faptul ca erorile respective se gasesc, sub aceeasi forma si in aceeasi masura, la majoritatea programatorilor aflati la inceput de drum. Iata o lista cu cele mai frecvente greseli intalnite, lucru prin care ne propunem sa va usuram pasii dedicati reperarii si depanarii acestora.
1. Frica
Principalul dusman al programatorului incepator il reprezinta insasi teama. Teama de a nu fi suficient de bun, de inteligent, teama de a esua, teama ca nu va reusi niciodata sa inteleaga limbajul extraterestru care se pozitioneaza in fata sa.
Invatarea programarii va arata ca un lucru imposibil de accesat. Lucru care, bineinteles, este normal. Dar piesa cu piesa vei ajunge sa completezi puzzle-ul programarii, pe bune! Programarea o poate invata oricine prin efort si dorinta de munca.
Controleaza-ti teama, nu o lasa sa iti distruga sperantele! Poti oricand sa accesezi platforme online ce iti ofera posibilitatea sa te joci cu programe tip drag and drop, precum Scratch. Programe care te pot ajuta sa intelegi mai bine buclele, “if”-urile, metodele, variabilele, etc
2. Cod formatat gresit
O modalitate prin care un programator profesionist poate detecta un programator incepator este codul scris intr-un mod neglijent, codul nu este scris corespunzator sau, in mod inconstient, sunt introduse spatii goale, acolade si paranteze puse la intamplare. Multe limbaje de programare, precum JavaScript, nu impun o restrictie asupra modalitatii de scriere a codului, motiv pentru care incepatorii pot scrie codul intr-un mod haotic, neacordand atentie detaliilor. JavaScript iti permite sa definesti functii in interiorul altor functii, motiv pentru care este foarte usor sa comiti o greseala, poti sa ajungi sa nu iti mai dai seama de unde porneste o functie si unde se termina.
Un alt act de neglijenta il reprezinta liniile de cod comentate, linii care te ajuta atunci cand incerci mai multe variante de rezolvare sa stii ce ai incercat deja. Probabil datorita nesigurantei sau a neatentiei, programatorii incepatori, aleg sa lase aceste linii acolo “in caz ca…” si dupa ce trec la urmatorul pas in proiect. Este de preferat sa recitim codul in intregime si sa excludem acele pasaje care nu vor mai fi necesare pentru a nu incarca suplimentar codul si a-l face greu de citit.
3. Denumirea variabilelor
Putem sa radem de programatorii .NET/Java, definesc variabile folosindu-se de cuvinte lungi, in locul abrevierilor (precum celebrul AbstractSingletonProxyFactoryBean). Daca privim in perspectiva, acesta modalitate de denumire a claselor și al variabilelor are un scop bine definit: Codul devine mult mai clar si este cu mult mai putin posibil ca acesta sa aiba doua entitati diferitite cu acelasi nume in locuri diferite.
Cand scrii un cod, trebuie sa fii consecvent si sa nu folosesti slang sau limbaj propriu cand vrei sa definesti o variabila. Trebuie sa o faci in asa fel incat oricine altcineva sa il poata citi. Aici castigi si puncte bonus pentru ca atunci cand folosesti un nume mai lung si descriptiv vei evita sa redefinesti o variabila.
4. Folosirea unui “depanator”/”debugger”
Daca lucrezi cu un limbaj de programare (Java, C#, JavaScript), ar trebui sa folosesti un “debugger”. Aceste limbaje de programare iti ofera erori detaliate pe care le poti “prinde” cu un “debugger” pentru a le identifica si rezolva din codul tau mult mai usor. Deoarece operatiunea de “debugging” este destul de vasta vom realiza un articol dedicat ei.
5. Nu asigura backup codului scris
Expresiile “Tocmai am pierdut x ore de lucru” ; “Calculatorul meu a cedat si tocmai am pierdut luni de munca” sunt atat de anii ’90! Nu mai exista scuze pentru astfel de situatii. Ca programator incepator trebuie sa te asiguri ca folosesti un program care sa te sustina in astfel de situatii. Pentru cei ce detin acces la internet, pot pastra o copie a codului sursa si toate celelalte documente intr-un service comercial, tip cloud, gen: Git, TFS etc chiar si DropBox poate fi o solutie.
6. Pastrarea unui istoric al actiunilor anterioare
Multi dintre incepatori nu isi creaza un istoric al actiunilor aplicatiei, ne referim aici la Log-uri. Acesta este unul dintre motivele pentru care, de cele mai multe ori, programatorul poate ajunge in situatia in care ii este imposibil sa identifice de ce aplicatia nu a functionat conform asteptarilor.
Cand informatia pe care o primeste se rezuma la “Nu functioneaza”, raman putine actiuni pe care le mai poate interprinde intr-un timp dat. Din acest motiv, generarea log-urilor si pastrarea acestora este cea mai buna metoda prin care pot fi detectate greselile. Pastrarea log-urilor poate fi ca o masinarie a timpului, atunci cand in codul scris apar erori. Ne putem folosi de acestea pentru a “calatori in timp”, a identifica momentul producerii erorii si interveni asupra cauzei care a determinat aparitia acesteia, fara sa fie necesara reanalizarea intregului cod.
Cu siguranta fiecare dintre noi s-a lovit de problemele enumerate mai sus, fie generate de noi fie de colegii nostri. Totusi problema cea mai mare este atunci cand nu invatam nimic din confruntarea cu aceste problele.
Hint-uri utile poti gasi in articolele:
7 sfaturi atunci cand vrei sa inveti programare
Ce asteptari are recruiterul de la un programator junior
Ce poti face ca programator junior dupa o respingere la interviu?