Ce este programatica si cum poti ajungi un programator bun.
Programarea informatica este o activitate informatica de elaborare a produselor, a programelor necesare activitatilor realizate cu ajutoru calculatorului. Programarea informatica contine urmatoarele subactivitati: specificarea, proectarea, documentarea si intretinerea produsului "programului".
Poti sa inveti bazele programarii singur, in mai putin de o luna, indiferent de studiile pe care le ai , cu conditia sa fii pasionat, motivat si ambitios si sa investesti suficient timp, insa pentru a deveni un programator de top sunt necesare cel putin 6 luni de efort sustinut, sunt de parere unii specialistii din domeniu.
Salariul unui programator entry-level intr-o companie de top porneste de la 800-1.000 de euro iar dupa 3-5 ani poate ajunge la un nuvel de 2.000 de euro.
Desi nu poti sa inveti programatica de la A la Z singur, bazele limbajelor sunt accesibile oricui vrea sa invete. Cei care vor sa invete programatica singuri ar trebui sa invete un limbaj de programare mai usor, precum Pyton, a carui popularitate se datoreaza simplitatii si conciziei codului. Alte limbaje recomandate incepatorilor sunt Java sau C#.
Cei care invata singuri pot lua toate informatiile necesare din carti si din tutoriale online.
Bazele unui unui anumit limbaj de programare se pot invata repede, in cateva saptamani, dar este nevoia de multa practica pentru a ajunge la un nivel inalt de performanta. Mai mult, exista multe subiecte conexe care trebuie invatate in functie de contextul in care este utilizat respectivul limbaj de programare, precum fizica, matematica sau economie". Tot el spune ca, desi cunoasterea unuia sau a mai multor limbaje de programare este importanta, esential este invatarea procesului logic de exprimare a algoritmilor in cod, abilitate necesara indiferent de limbajul de programare utilizat.
Desi exista un numar mare de limbaje de programare (C, C++, C#, Java, Python, Ruby, Haskell, Scheme, Prolog, Javascript, HTML/CSS), cele mai cautate limbaje sunt: Java, C, C# si JavaScript.
In cea ce priveste programarea pentru jocurile video, "cel mai important limbaj este C++, deoarece ofera un amestec ideal intre performanta, usurinta de utilizare si putere de expresivitate". Pentru cazuri particulare exista alte limbaje de programare care sunt mai potrivite: C# cand este nevoie de interfete complicate cu utilizatorul, Java cand este nevoie de o portabilitate mare sau Python pentru unele categorii de plugin-uri (programe care se integreaza altor programe de baza pentru a indeplini functii specific).
Pentru cei care vor sa devina programatori, fara a avea insa facultae de profil, exista cursuri si seminarii, unele dintre ele gratuite. Organizatia ROSEdu (rosedu.org) precum si DevAcademy (devacademy.ro) au astfel de cursuri. "Desi sunt numesoase platforme de unde poti invata limbajele de programare, in general cele mai sigure sunt chiar tutorialele disponibile pe site-urile tehnologilor respective".
Sunt recomandate cursurile online disponibile pe site-urile coursera.com, edx.org si udacity.com, realizate in colaborare cu profesori de la facultati cunoscute. Cursurile permit invatarea in ritmul fiecaruia, iar unele dintre ele se bazeaza pe participarea activa a cursantilor.
Aici sunt site-uri in care gasesti tutoriale pentru a invata programatica:
Java: http://docs.oracle.com/javase/tutorial/java/
JavaScript: http://www.javascriptkit.com/javatutors/index.shtml
C,C++: http://www.cprogramming.com/tutorial.html
C#: http://msdn.microsoft.com/en-us/library/aa288436%28vâvs.71%29.aspx
Python: http://docs.python.org/2/tutorial/
Ruby: http://rubylearning.com/satishtalim/tutorial.html
Haskell: http://learniouahaskell.com/chapters
Scheme: http://classes.soe.ucsc.edu/cmps112/Spring03/languages/scheme/SchemeTutorialA.html
Prolog:http://www.csupomona.edu/Âjrfisher/www/prologtutorial/contents.html
HTML: http://tutirialehtml.com/ghid-incepatori/prima-pagina-in-html.php
CSS: http://cssplaza.com/1/CSS-Introducere/
www.oreilly.com
www.wrox.com
http://www.bentobox.io/
http://www.codecademy.com/
https://dash..generalassemb.ly/