Programmeerimise õppimine
Tihtipeale küsitakse HV foorumis, kas ja kuidas saaks ise programmeerimist õppida.
Muidugi saab programmeerimist iseseisvalt õppida. Paljude arvates ongi see ainuke mõeldav moodus - aga eks see ole nii paljude oskustega siin ilmas - kui õppijal endal huvi pole, siis ei aita palju ka sundimine.
Kõige suuremaid vaidlusi tekitab aga küsimus, millise programmeerimiskeelega peaks algaja alustama. Siin pole mingit ühte ja õiget vastust - on vaid vähesed keeled, mis kindlasti ei sobi alustamiseks, kuid pea kõik ülejäänud on sellised, milles aegade jooksul on paljud inimesed igati edukalt programmeerimist alustanud.
Millest lähtuda esimese programmeerimiskeele valikul?
Muidugi, kui sa programmeerida ei oska, siis on palju nõuda, et sa oskaksid valida enda jaoks sobilikku programmeerimiskeelt. Ning nagu öeldud, siis neil, kes oskavad programmeerida, on tihtipeale erinev nägemus sellest, milline üks algajale sobilik programmeerimiskeel peaks olema. On siiski mõningad kriteeriumid, mida esimese programmeerimiskeele valikul silmas pidada:
- Eestikeelse materjali olemasolu
- Praktiliselt iga keele kohta leidub hulganisti inglise keelset materjali, eesti keelset aga enamasti napib. Kui sa end inglise keeles just kõige paremini ei tunne, siis ilmselt pead piirduma keeltega, millele on eestikeelseid õpetusi.
- Keele populaarsus
- Mida populaarsem on keel, seda enam leidub neid, kes sinu küsimustele vastuseid oskavad anda. Nii mõnigi keel, mis ehk õppimiseks oleks hea, kannatab just kasutajate vähesuse all.
- Milliseid keeli oskab sinu programmeerijast sõber?
- Kui sul on programmeerida oskav sõber, siis parim valik on raudselt see keel, mida temagi oskab - nõndaviisi ei pea sa kaugelt abi otsima.
Programmeerimiskeeled
Järgnevalt nimekiri erinevatest keeltest ja nende headest ja halbadest külgedest (tähestiku järjekorras):
Basic / Visual Basic
- + Väga populaarne.
- + Parajal määral eestikeelset kirjandust.
- + Loodud paljuski algajaid silmas pidades, ning on endiselt algajate seas väga levinud.
- - Populaarsemad implementatsioonid on vaid Windowsi platvormile.
C / C++
- + Väga populaarne.
- + Parajal määral eestikeelset kirjandust.
- - Kaunis riistvaralähedane keel, mis eeldab, et kasutaja teab täpselt mida teeb - mistõttu algajal on kerge end jalga tulistada.
- - Ei sisalda mitmeid teistes keeltes olevad mugavusi: automaatne mäluhaldus, string-tüüpi muutujad... Selle asemel peab algaja rinda pistma mitmete keerukate kontseptsioonidega: viidad, mäluaadressid, mallid...
- - Programmi ei saa kohe käivitada, vaid see tuleb eelnevalt kompileerida.
Java
- + Väga populaarne.
- + Parajal määral eestikeelseid materjale.
- - Rangelt objekt-orjenteeritud, sundides ka algajad defineerima klasse ja kirjutama muud lisa-koodi, millest nad veel midagi aru ei saa.
- - Programmi ei saa kohe käivitada, vaid see tuleb eelnevalt kompileerida.
Pascal
Pascal loodi omal ajal just programmeerimise õpetamiseks, ja seda kasutatakse siiamaani ka mitmetes Eesti koolides just selleks. Kuid tänapäeval on Pascal oma populaarsust kaotamas, vaid Borlandi arendatav Delphi, mida tuleb endale osta raha eest, on veel arvestatav tegija.
- + Mitmeid eestikeelseid materjale.
- + Loodud programmeerimise õpetamiseks.
- - Üksjagu vananenud.
- - Väikese populaarsusega (kui Delphi välja arvata).
- - Programmi ei saa kohe käivitada, vaid see tuleb eelnevalt kompileerida.
PHP
Kui sind huvitab veebilehtede tegemine, ja sa oled juba tuttav HTML-i ja CSS-ga, siis võib just PHP olla sulle parim valik oma veebimeistri oskuste täiendamisel. Kui sa aga HTML-i veel ei mõista, siis ilmselt pole see hetkel sinu jaoks.
- + Väga populaarne.
- + Palju eestikeelseid õpetusi.
- - Mõeldud eeskätt veebilehtede tegemiseks, muu jaoks eriti ei kasutata. Ühtlasi tähendab see seda, et programmi käivitamiseks pead selle üles laadima veebiserverisse, või siis installeerima omaenda masinasse veebiserveri (on muidugi võimalik kasutada ka tekstiredaktorit, millega otse veebiserveris faile muuta).
Python
- + Mõningal määral eestileekseid materjale.
- - Mitte eriti laialt levinud.
- Sissejuhatus Pythonisse - väga üldine sissejuhatus Pythonisse.
Ruby
- + Mitmeid häid inglisekeelseid õpetusi, mis just algajatele suunatud.
- - Mitte eriti laialt levinud.
- - Pea olematud eestikeelsed materjalid.