Nijedan programski jezik nije objektivno superiorniji od drugih. Štoviše, dobar programer trebao bi tečno govoriti nekoliko jezika i barem površno navigirati još nekoliko jezika. Ali učenje JavaScripta, HTML-a i Rubyja odjednom je loša ideja. Čak i vrlo loše. Morate početi s jednom stvari.
Zašto uopće učiti programiranje
Čak i ako ne dođe do ničega ozbiljnog (punopravan prihod od razvoja aplikacija ili web dizajna, na primjer, ili pokretanja vlastitog projekta), učenje programiranja način je stvaranja dizajna za ne baš pametne, ali vrlo poslušni strojevi - definitivno košta. Prvo, to će natjerati mozak da radi, a to je uvijek dobro. Čak i predsjednik Sjedinjenih Država govori o prednostima učenja kodiranja.
Drugo, svima onima koji su po zanimanju nekako povezani s tehnologijom. Obrazloženje za odabir programskog jezika dat će bilo koji programer web stranice kupcu, bilo kojem administratoruresurs tvrtke - copywriter. Barem opće poznavanje razvojnog okruženja u kojem rade kolege omogućit će vam da brzo pronađete zajednički jezik u timu i uspješnije implementirate razne projekte.
Gdje početi učiti programiranje
Odabir programskog jezika, osobito prvog, nije lak zadatak. Ali bit će jako teško ako ne znate engleski barem na osnovnoj (školskoj) razini. Naravno, neki instrumenti su rusificirani, drugi su entuzijasti prevedeni na ruski, ali činjenica ostaje.
Da, i u budućnosti će biti puno lakše pronaći posao sa znanjem stranog jezika. Ovdje je korisno učiti engleski svima:
- zaposlenici koji mogu dobiti posao u korporaciji sa svjetskim ugledom;
- slobodnjaci koji će moći raditi na burzama na engleskom jeziku, gdje obično ima više narudžbi i veće plaće.
Kriteriji za odabir programskog jezika
Bit će potrebno stotine sati vježbe prije nego što budete mogli postati kompetentni u svom prvom programskom jeziku, tako da se bezumno učiti išta ne isplati. Izbor programskog jezika ovisi o razvojnom okruženju u kojem želite raditi, osobnim preferencijama, perspektivama i još mnogo toga.
Prvo morate odlučiti o ciljevima. Na primjer, na kojoj platformi (u kojem okruženju) želite raditi: web, mobilni uređaji, igre i 3D grafika ili velike korporacije.
U web razvoju morate birati između nekoliko područja odgovornosti: front-end, back-end, full-stack. Front-end programeri odgovorni su za brzinu učitavanja web-mjesta i ispravan rad koda, back-end programeri odgovorni su za pisanje poslužiteljskog koda, a stručnjaci za full-stack mogu sami ispuniti sve zahtjeve korisnika. Full-stack programeri danas su najtraženiji na tržištu rada.
Tri stupa front-end programera su JavaScript, HTML i CSS. Osim toga, morate biti svjesni najnovijih internetskih trendova i znati ih primijeniti u svom svakodnevnom radu. PHP je osnovno znanje za back-end stručnjake. Ovo nije jedini alat, već temelj cjelokupnog back-end razvoja. Kao drugi jezik, morate naučiti Ruby ili Python. Dobro će doći i iskustvo s bazama podataka, osnovama JavaScripta i SQL-a. Osim samih programskih jezika, potrebno je proučiti sve priložene dodatke.
Razvoj mobilnih aplikacija koristi JavaScript za Android i Objective-C za iOS. Korisno je posjetiti službene resurse za programere, a u slučaju rada s iOS-om i upoznati se sa sučeljem i funkcionalnošću Xcode-a, besplatnog okruženja za izradu aplikacija. Igre i 3D animacija trebaju C++.
Oni koji se u budućnosti žele zaposliti u nekoj od visokotehnoloških korporacija i više ne brinu o dobrobiti sutrašnjice, dobro obavljajući svoje dužnosti, neka krenu od izbora upravo ove korporacije. Windows radi s C, Google i Facebook rade s Pythonom, a Apple radi s Objective-C.
Odabir programskog jezika trebao bi se temeljiti na sljedećim čimbenicima:
- Potražnja na tržišturad.
- Jednostavnost učenja.
- Dugoročno.
- Koji se projekti mogu razviti na ovom jeziku (izbor jezika i programskog okruženja).
Ako je posljednja točka - platforme i prikladni programski jezici ukratko navedeni gore - sve je manje-više jasno, što je s ostalim točkama? Indeed.com, vodeća svjetska stranica za traženje posla, s vremena na vrijeme objavljuje statistiku poslova (omjer ponuda i onih koji traže posao). Bilo bi dobro odabrati programski jezik na temelju ovih podataka, ali ne biste se trebali voditi samo suhom statistikom.
Dakle, postoji 2.7 stručnjaka za jednu poziciju programera za Python, Java, Objective-C ili PHP. Ako pogledate JavaScript podatke, možete vidjeti da je ovo definitivno tržište prodavača – ima samo 0,6 programera po poziciji. Osim toga, JavaScript se razvija mnogo brže od bilo kojeg drugog jezika, što nudi izvrsne dugoročne izglede.
Razlog za odabir C++, C, Objective-C, PHP ili bilo kojeg drugog programskog jezika također se temelji na jednostavnosti učenja. Početnik, osobito onaj koji uči jezik iz knjiga ili tečajeva, vjerojatno se neće nositi sa složenim C++ ili Javom. Relativno je lako naučiti Python, JavaScript ili Ruby. Ruby i Python su čitljivi i imaju neke od najaktivnijih zajednica.
Za one bez iskustva
Ako se čini da je programiranje vrlo težak zadatak, trebali biste početi s nečim lakšim, kao što je HTML ili CSS. HTML nije jezikprogramiranje u punom smislu, nego je to označni jezik za web stranice. CSS je moderniji HTML "pomoćnik" koji vam omogućuje da stranice učinite ugodnijim oku, igrate se fontovima, dodajete elemente dizajna dizajnu web stranice i tako dalje.
Svatko tko je ikada pisao slobodne članke vjerojatno je naišao na HTML, a oni koji su probali bloganje možda su upoznati s CSS-om. Da, i svaki tečaj iz osnova programiranja počinje s ova dva elementa, tako da poznavanje osnova neće biti suvišno. Možete učiti iz knjiga:
- B. Lourson, R. Sharp "Učenje HTML-a 5".
- K. Schmitt “CSS. Recepti za programiranje.”
Prije, uz nekoliko pametnih knjiga o CSS-u i HTML-u, već ste se mogli prijaviti za neku poziciju, sada je to odskočna daska s koje možete krenuti dalje.
Razvojnici web aplikacija
Odabir PHP ili JavaScript programskog jezika je za web programere. Da bi internetski resursi bili ljepši, zanimljiviji i funkcionalniji, potreban vam je JavaScript. S njim možete učiniti dosta različitih stvari u korisničkom sučelju.
Najbolje opravdanje za odabir PHP programskog jezika je web razvoj. Ako govorimo o strani poslužitelja, poslužit će PHP, Python, Ruby i isti JavaScript. Odabir programskog jezika C također je dobra ideja. Microsoft radi u C, Python je kao Lego, a Ruby je kao glina.
Za web dizajnerei slagači
Dizajneri su kreativni ljudi koji sebe smatraju daleko od egzaktnih znanosti. Ali pisanje koda je poput slikanja slike, pa se dvojbe o tome isplati li se uopće učiti programirati treba odmah odbaciti. Postoji mišljenje da je bolje biti prvorazredni dizajner nego drugorazredni programer, ali dizajner bi trebao poznavati JavaScript barem da bi implementirao svoje ideje. Relativno jednostavan Python ili Ruby također će poslužiti.
Android iOS programeri
Android aplikacije se obično razvijaju u Javi. Možete raditi na bilo kojem operativnom sustavu - prevalencija "Android" pametnih telefona učinila je razvoj aplikacija na njima vrlo popularnim. Razvojno okruženje može se instalirati na Windows i iOS.
Što se tiče Applea, razvoj je puno zahtjevniji za alate. Morate naučiti Objective-C, razvojni komplet i upute za razvojne programere od Applea. Možete raditi samo s "apple" uređajima - Mac s verzijom operativnog sustava 10.7 ili novijom.
Ako dijete želi naučiti kodirati
Ovakva želja mlađe generacije je pohvalna. To djeci otvara nove mogućnosti i jednostavno nevjerojatne načine izražavanja. Dijete je sasvim sposobno samostalno stvoriti kratki crtić ili jednostavnu igru. Programiranje djeci nije ništa teže od stranih jezika, a također otvara više mogućnosti već u adolescenciji.
Možete početi sOgrepsti. Ova je usluga namijenjena djeci od 8 godina i omogućit će vam stvaranje crtića, igara, animacija. Medij se distribuira besplatno. Najvjerojatnije dijete neće ni trebati pomoć roditelja, vrlo je jednostavno razumjeti uslugu.
Što trebate znati osim programskog jezika
Osim programskog jezika i engleskog, trebate znati još nešto. Sve ovisi o odabranom smjeru. Morate naučiti okvire, algoritme, baze podataka i strukture podataka, repozitorije koda, razumjeti kako tehnologija funkcionira, proučavati fiziku i biologiju da biste stvorili pljačke i znati puno više. U početku je bolje ne žuriti u bazen glavom, učiti postupno, čitati članke na specijaliziranim resursima i postupno razumjeti nove pojmove.
Općenito, glavna vještina svakog programera je znati koristiti Google. Bez toga ništa neće raditi. Možete se obratiti forumima na kojima se okupljaju programeri koji rade na određenom jeziku, traže gotova rješenja ili proučavaju izvore na engleskom.
Na kraju
Postoji jedna tajna koja će vam pomoći da postanete najbolji ne samo na području programiranja, već općenito bilo gdje. Samo trebate nešto učiniti. Dobar način je pronaći problem koji treba riješiti. Možda trebate napraviti web stranicu posjetnice za vlastiti posao, pronaći prikladan alat za kontrolu financija ili automatizirati distribuciju tweetova svojim pretplatnicima? Zatim, trebali biste se uvjeriti da je cilj dostižan, jer bez iskustva i tima, malo je vjerojatno da će napraviti klon Call of Duty. Sada je vrijemeodaberite skup tehnologija koje će riješiti problem.
Uostalom, nikada se ne možete nadati da ćete postati pravi profesionalac za mjesec ili čak godinu dana. Nekima je programiranje vrlo jednostavno, drugi proučavaju tone informacija i izrađuju desetke aplikacija dok konačno ne shvate kako ova ili ona naredba funkcionira. Oba ova puta su ispravna. Samo trebate nešto učiniti.
I zapravo nije važno koji programski jezik odabrati. Neke od njih ionako još morate naučiti. Štoviše, mnogi alati i tehnike slični su na različitim jezicima. Lakše će se prebaciti na nešto drugo, kasnije završiti učenje problematičnih tema nego što je bilo oduzeti prvi jezik. I to svakako veseli.