Kokią programavimo kalbą pasirinkti naujokui

Kokią programavimo kalbą pasirinkti naujokui

Norite išmokti programuoti, bet nežinote nuo ko pradėti? Pirmas žingsnis yra pats sunkiausias, o pirmas žingsnis programuotojui – pasirinkti savo pirmąją programavimo kalbą. Ir į šį žingsnį reikia žiūrėti labai atsakingai, nes nuo jo priklauso jūsų karjeros sėkmė. FreeCodeCamp programavimo dėstytojas Quincy Larson mano, kad dviejų variantų būti negali: tik JavaScript. Apie tai jis parašė straipsnį Medium tinklaraštyje, kurį mes išvertėm į lietuvių kalbą.

Daugumai žmonių domėjimasis programavimo mokymais prasideda nuo paprastos užklausos Google paieškoje, pavyzdžiui, „kaip išmokti ką nors“. Bet kaip nuspręsti, nuo kokios programavimo kalbos pradėti?

Kai kurie mąsto taip:

Silicio Slėnyje visi juokauja apie Java. Turbūt, pradėsiu nuo jos.

Arba

Haskell dabar populiari. Reiškia, pradėsiu nuo Haskell.

Visi likę tiesiog rašo į Google: kokią programavimo kalbą mokytis pirmiausiai?

Šį klausimą užduoda taip dažnai, kad buvo sukurtas net specialus infografikas (dabar ir lietuviškai):

Infografikas: kokią programavimo kalbą pasirinkti naujokui?

Infografikas: kokią programavimo kalbą pasirinkti naujokui?

Sprendimo priėmimo procesas, nuo kurios programavimo kalbos pradėti savo karjerą IT srityje, gali būti šiek tiek panašus į testus, kuriuose jums siūlo sužinoti, į kurį Tarantino filmų herojų esate panašus. Tačiau neskubėkite mokytis Ruby vien dėl to, kad vaikystėje jums patikdavo žaisti su plastilinu. Leiskite jums priminti, kad statymai pakankamai dideli. Prireiks šimtų valandų praktikos, kol pradėsite nors kiek išmanyti savo pirmąją programavimo kalbą.

Todėl atkreipkite dėmesį į šiuos faktorius:

  • Darbo pasiūlymai;
  • Programavimo kalbos perspektyvos ateityje;
  • Ar pasirinktą kalbą lengvai išmokti;
  • Kokius projektus galima sukurti mokymosi metu;

Kasmet atsiranda naujos programavimo kalbos, o kartu su jomis ir naujos mokymų programos bei komiksai internete. Kai ateis laikas pasirinkti programavimo kalbą, nuo jų trūkumo tikrai nekentėsite. Tam, kad bent šiek tiek sumažinti variantų skaičių, pažiūrėkite į populiariausias užklausas, susijusias su programavimu, Google paieškos sistemoje:

Programavimo kalbų populiarumas Google paieškoje

Užklausos, susijusios su programavimo kalbomis, Google paieškoje.

Java turėjo savo pakilimus ir nuosmukius. Python po truputį auga ir tampa pačiu populiariausiu pasirinkimu. O tarp jų pasislėpė mažas traukinukas, kurio populiarumas auga keletą pastarųjų metų. Tas traukinukas – JavaScript.

Prieš pradedant kalbėti apie programavimo kalbas, leiskite paaiškinti keletą dalykų:

  • Aš netvirtinu, kad kažkuri kalba yra geresnė negu kitos.
  • Aš sutinku, kad programuotojas turi mokėti daugiau nei vieną kalbą.
  • Aš sakau, kad reikia pradėti mokytis nuo vienos kalbos, tačiau išmokti ją reikia labai gerai. Ir kaip jūs jau turbūt supratote, mano pasirinkimas – JavaScript.

Kaip dėsto programavimą mokyklose

Universitetuose programavimą dažniausiai dėsto per informatikos paskaitas, kuri suvokiama kaip matematikos tęsinys arba elektroinžinerijos įvadas. Bet kaip pasakė Erikas Reimondas, informatikos pamokos nieko nepadarys programavimo ekspertu, kaip ir dailės pamokos nepadarys jus dailininku.

2016 metais dauguma universitetų vis dar turi omeny informatiką, kai kalba apie programavimą, ir matematiką, kai kalba apie informatiką.

Dėl šios priežasties dauguma programavimo kursų naujokams fokusuojasi į žemo abstrakcijos lygio kalbas, tokias kaip C arba matematinė MATLAB. O fakultetų vedėjai rodo pirštais į programavimo kalbas, kurios užima aukštesnes pozicijas tokiuose reitinguose kaip TIOBE Index ar IEEE:

Programavimo kalbos pasirinkimas

Dauguma šių reitingų atrodo lygiai taip pat, kaip ir prieš 10 metų. Tačiau pakeitimai vyksta. Net ir akademiniame lygyje. 2014 metais Python aplenkė Java ir tapo pačia populiariausia programavimo kalba JAV išsilavinimo sistemoje.

Programavimo kalbų reitingas JAV išsilavinimo sistemoje

Programavimo kalbų naudojimo reitingas JAV išsilavinimo sistemoje

O šiandien vyksta kiti pasikeitimai. Jeigu pažiūrėsite į programavimo kalbas, kurias naudoja dirbantieji programuotojai, tai pamatysite visai kitokį vaizdą: su dideliu atotrūkiu pirmauja JavaScript kalba, kurią Stack Overflow duomenimis naudoja didžiausia programuotojų dalis.

Kokią programavimo kalbą pasirinkti naujokui

Kaip matote, beveik pusė visų programuotojų savo darbe naudoja JavaScript. Ši kalba gyvybiškai svarbi front-end programavime ir dar svarbesnė back-end programavime. Ir ji vis plačiau naudojama tokiose srityse kaip gamedev bei daiktų internetas.

Darbo skelbimuose JavaScript minima dažniausiai už kitas programavimo kalbas, išskyrus Java.

Programavimo kalbos darbo skelbimuose

Programavimo kalbų minėjimas darbo skelbimuose.

Turbūt jau supratote, kad mano pasirinkimas – tai JavaScript. Dėl jos aš mečiau Python ir Ruby.

Bet ar tinka JavaScript būtent jums? Ar ji verta to, kad tapti jūsų pirma programavimo kalba? Dar kartą pažiūrėkime į faktus, kuriuos minėjau anksčiau.



Darbo rinka

Jeigu norite išmokti programuoti tik dėl smalsumo, galite drąsiai praleisti šį punktą. Bet jeigu norite gauti darbą IT srityje, šis punktas labai svarbus.

Kaip rašiau prieš tai, Java yra pirmoje vietoje tarp minimų programavimo kalbų darbo skelbimuose. JavaScript yra antroje vietoje. Bet štai kas įdomu: nepaisant to, kad šiai kalbai jau 20 metų, tik dabar ji tapo rimtu instrumentu, aplink kurio kuria savo servisus tokios kompanijos, kaip Netflix, Wal-Mart ir PayPal. Todėl daug įmonių nori pasamdyti JavaScript programuotojus, bet rinkoje jų nėra labai daug.

Kokią programavimo kalbą pasirinkti naujokui

Kandidatų skaičius vienam darbo pasiūlymui

Kaip matote, į kiekvieną Java programuotojo darbo vietą kandidatuoja 3 specialistai. Su PHP ir iOS situacija panaši. Tuo tarpu į JavaScript darbo pasiūlymus pretenduoja tik 0,6 specialistų. Todėl tai pakankamai laisva rinka turintiems atitinkamus įgūdžius.

Ateities perspektyvos

Vidutiniškai, JavaScript projektai gauna du kartus daugiau pull užklausų, nei Java, Python ar Ruby projektai. Ir kas svarbiau, JavaScript auga greičiau nei bet kuri kita programavimo kalba.

Programavimo kalbų populiarumas

JavaScript ekosistema laimi ir dėl didžiulių finansinių bei inžinerinių investicijų iš tokių bendrovių kaip Google, Microsoft, Facebook ir Netflix.

Mokymosi paprastumas

Dauguma programuotojų pritars, kad aukšto lygio skriptinės kalbos yra gana lengvai išmokamos. JavaScript patenka į šią kategoriją kartu su Python ir Ruby. Nepaisant to, kad universitetuose iki šiol dėstomos tokios kalbos, kaip Java ir C++, jos yra žymiai sudėtingesnės naujokams.

Projektai, kuriuos galima įgyvendinti

O štai čia JavaScript yra pirmoje vietoje. Ji veikia bet kuriame prietaise, turinčiame naršyklę. Su JavaScript galite sukurti bet ką ir paskelbti bet kur. Šių savybių dėka, vienas iš Stack Overflow įkūrėjų Džefas Atvudas sukūrė savo dėsnį:

Bet kuri aplikacija, kuri gali būti parašyta su JavaScript, bus parašyta su JavaScript.

Ir su kiekvienu mėnesiu Atvudo dėsnis stiprėja.

Kažkada Java irgi žadėjo, kad veiks visur. Galbūt prisimenate Java Applets? Oracle oficialiai uždarė juos šiais metais (2016 m.).

Python kenčia nuo panašių problemų. „Kaip aš galiu perduoti šį žaidimą, kurį sukūriau specialiai savo draugui? Ar yra būdų įdiegti jį į mano telefoną, kad galėčiau parodyti savo draugams?“, – Džeimsas Heigas išvaro Python į pensiją.

Iš karto išmokite vieną programavimo kalbą ir tik tada pereikite prie kitos.

Tam, kad išeiti už pagrindų rėmų, turėsite labai gerai išmokti savo pirmąją programavimo kalbą. Tada antrą kalbą išmokti bus žymiai lengviau. Su laiku galėsite išmokti daugiau kalbų ir tapti puikiu specialistų.

C kalba puikiai tinka tam, kad suprasti kaip veikia kompiuteriai. C++ tinka žaidimų kūrimui. Python gerai pritaikyta mokslams ir statistikai. Java labai svarbi, jeigu norite dirbti didelėje IT kompanijoje.

Bet iš pradžių išmokite JavaScript.

O dabar aš pabandysiu padaryti neįmanomą ir iš karto atsakyti į prieštaravimus komentaruose.

Prieštaravimas Nr 1. JavaScript yra per lėta, argi ne?

Daugumai užduočių JavaScript yra tokia pat greita, kaip ir kitos kalbos. JavaScript (Node.js) yra greitesnė negu Python, Ruby ar PHP. Ji beveik tokia pat greita kaip C++, Java ar Go.

Štai paskutinių testų rezultatai:

Programavimo kalbų greitis

Prieštaravimas Nr 2. JavaScript ne statiškai tipizuota

Kaip ir Python bei Ruby, JavaScript yra dinamiškai tipizuota ir tai yra patogu. Klaidos dinamiškai tipizuotose kalbose daromos dažnai, tačiau jas galima rasti su atitinkamų testų pagalba.

Prieštaravimas Nr 3. Bet aš noriu kurti mobiliąsias programėles

Vis tiek rekomenduoju pradėti nuo JavaScript.

JavaScript turi keletą instrumentų natyvinių mobiliųjų programėlių kūrimui, pavyzdžiui, Angular Cordova ir React Native. Tam, kad jūsų programėlė galėtų atlikti įvairius įdomius fokusus, jai prireiks gero backend’o, kurį jūs greičiausiai norėsite sukurti naudojant gerą framework’ą, pavyzdžiui, Node.js + Express.js.

Be to, verta pažymėti, kad geriausios mobiliųjų programėlių dienos, turbūt, yra praeityje. Nors labai daug žmonių naudojasi mobiliosiomis programėlėmis, beveik pusė programavimo darbo skelbimų susiję būtent su web programavimu.

Prieštaravimas Nr 4. O argi JavaScript ne žaislinė kalba, parašyta per 10 dienų?

JavaScript turi spalvingą istoriją. Jūs tikrai išgirsite nemažai juokelių į jos adresą. Bet žinote, kai kuriems irgi patinka nekęsti C++. Ir C++ yra lygiai tokia pat sėkminga, kaip ir JavaScript, nepaisant visų tų heiterių.

Todėl jeigu kas nors juoksis iš jūsų dėl to, kad pasirinkote JavaScript, o ne kokią nors madingą programavimo kalbą – tiesiog prisiminkite tai, ką pasakė žmogus, sukūręs C++ kalbą:

Programavimo kalbos yra dviejų tipų: tos, kurias žmonės visada bara, ir tos, kurias niekas nenaudoja.

Rašyti komentarą