|
|
(17 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
| == KKK ==
| | Programmeerimine on oskus käsutada arvutit. Mõtle, sinu isiklik ori. Ta ei pahanda ega ei väsi. Ta ei oska veel kõndida ega sind teenindada, aga ta on igas maailma otsas ühe varbaga sees. Ta toob sulle sinu igapäevase info ja aitab sul tuludeklaratsiooni kodust ära teha. Ta juhatab sind läbi tipptunni liikluse (Waze'i tead ikka?) ja toob sinuni kõige odavamad lennupiletid Taisse. Peale selle loob ta fantastilisi virtuaalseid universumeid, kus seigelda. Kui õpid programmeerima õpid arvutiga otse suhtlema. |
|
| |
|
| === Misasi see programmeerimine üldse on? ===
| | Kui oskad programmeerida oled poweruser nii arvutis kui maailmas, sest põhiliselt arenev oskus on loogika ja see ei jookse mitte ühegi ala peal külgedelt maha. |
|
| |
|
| Programmeerimine on programmi kirjutamine. Nojah, see on vist niigi selge. Aga misasi see programm on? Üldiselt on programm nagu üli täpsed juhised, kuidas mingit eesmärki saavutada. Lihtsustatult on programm ka pannkoogiretsept: "Võta jahu, piim, suhkur, sool, muna, õli. Vahusta muna, suhkur ja sool. Lisa piim ja jahu ning sega korralikult ära. Aseta pann pliidile, lülita pliit sisse, vala pannile õli. Kuni taigent jätkub: vala kulbiga taigent pannile; oota veidi; pööra kook ümber; oota veidi; tõsta pannilabidaga kook taldrikule;". Panid tähele kui täpselt ma praadimise osa kirjeldasin? See toidu tegemisel ei ole tarvilik, kuna inimene oskab lihtsamad lüngad täita oma elukogemusega, aga arvutitel ei ole elukogemust. Arvuteid peab väga spetsiifiliselt juhendama, iga liigutus on oluline.
| | = Java = |
|
| |
|
| Arvuti tarkvara kontekstis on tulemuseks mitte pannkook vaid programm, mis toimetab arvutis, internetis või suhtleb kasutajaga. Toome mõned näited. Kõige tuntum programm üldse on tõenäoliselt Windows ise. Muidugi, nii Mac OSX ja iga Linux on samuti programmid. Aga ka Chrome või Firefox on programmid. See wiki, mida praegu loed, on samuti programm. Lühidalt kõik mis ekraanil näed on programmid programmide sees. Kas see on veidi hirmutav? Pole midagi. Meie ei hakka siin operatsioonisüsteemi looma, meie hakkame lihtsaid ja mõnusaid programme kirjutama.
| | Java on veidi keerulisem keel, kui näiteks Python, aga samas ei lase Java sul nii palju vigu teha ja on seetõttu vahest isegi parem keel alustamiseks. Parim omadus on aga see, et Java on keeruliste ja lihtsate keelte vahepeal. Kui õpid selle keele ära saad minna ükskõik kuhu edasi! |
|
| |
|
| === Mulle ei meeldi matemaatika ===
| | Siin on kõik, mida meil on vaja Javast teada. Hoia seda joonist omal lähedal ja vaata seda alati, kui õpid uusi asju. Kui saad skeemist aru on programmeerides lihtsam orienteeruda ja meeles hoida võimalusi. |
|
| |
|
| Mulle ka mitte. Matemaatikas on kõik nii teoreetiline, programmeerimises lood aga (digitaalseid) füüsilisi asju! Tulemus on silmaga nähtav ja nutitelefonis katsutav.
| | [[File:Java.png|700px]] |
|
| |
|
| === Okei, aga ma ei oska matemaatikat! ===
| | * [[I200:Muutujad|Muutujad]] |
| | * [[I200:Juhtimisstruktuurid|Juhtimisstruktuurid]] |
|
| |
|
| On levinud arusaam, et programmeerimine on nagu eriti keeruline matemaatika. Ja nagu ikka väärarusaamadega, on neil tõepõhi all. Programmeerimine kasutab põhikooli matemaatikat. See ei ole ju hirmus ometi? Mis aga on hoopis hirmsam on see, et programmeerimise põhiline vajalik oskus on loogiline mõtlemine ja see ei ole õpitav. Aga ka see ei ole tegelikult nii hirmus midagi, sest baastasemel meil seda kõigil on ja see on ka treenitav (katse-eksituse meetodil).
| | [[I200:KKK|KKK]] |
| | |
| === Kas programmeerimine ei olegi keeruline? ===
| |
| | |
| On küll! Aga mitte sellepärast, mis sa arvad. Programmeerimise põhitõed (need, mida siin aines õpime) on suhteliselt lihtsad, aga need on hoopis teistmoodi, kui oled harjunud mõtlema. Selle jaoks on isegi väljend: "Lähim arengu tsoon" (ingl. zone of proximal development) ja seda kirjeldab järgmine joonis:
| |
| | |
| [[File:ZoneOfProximalDevelopment.png]] | |
| | |
| Nimelt programmeerimine on sellest tsoonist päris kaugel. See on sisuliselt nagu prantsuse keele õppimine, kui pole seda veel kuulnudki. Nüüd, kui me seda probleemi endale teadvustame, on minul, kui õppejõul, ja sinul, kui tudengil, lihtsam programmeerimise kontseptsioonidega tegeleda. Mina pean olema eriti hoolas, et oskaksin siduda uued teemad kuidagi tava eluga (näiteks pannkoogiretsepti analoogia) ja sina, tudeng, pead olema eriti hoolas, et sa harjutad, otsid lisa informatsiooni kust vähegi saad ja loed-loed-loed, kirjutad-kirjutad-kirjutad koodi!
| |
| | |
| === Käin küll loengutes ja teen praktikumides kaasa, aga ikka ei haaku mitte midagi ===
| |
| | |
| Programmeerimist ei ole võimalik õpetada nii, et asi lihtsalt saab selgeks. Erinevalt matemaatikast (ja suurem osa kooli ainetest) ei ole võimalik programmeerimist pähe õppida. Programmeerimist tuleb mõista. Kui piisavalt eesmärgi nimel tegutseda jõuab teema ka lõpuks kohale. Tarkvara arendus ongi selline ala, kus tuleb esiteks palju pimeduses kompida, kuni lõpuks "klikib". Aga rõhutan, et "klikkimine" ei toimu puhtalt õppejõudu kuulates. "Klikkimine" toimub ainult juhul, kui mõtled ise endale ülesandeid juurde, uurid ja katsetad omast vabast ajast. Muide, kui sul lõpuks toimub see ära "klikkimine" anna mulle, õppejõule, teada, mis täpsemalt aitas, et saaks veelgi paremini teisi aidata. Inimesi on meil palju ja igaühel on kuskil temale paras õppimise meetod.
| |
Programmeerimine on oskus käsutada arvutit. Mõtle, sinu isiklik ori. Ta ei pahanda ega ei väsi. Ta ei oska veel kõndida ega sind teenindada, aga ta on igas maailma otsas ühe varbaga sees. Ta toob sulle sinu igapäevase info ja aitab sul tuludeklaratsiooni kodust ära teha. Ta juhatab sind läbi tipptunni liikluse (Waze'i tead ikka?) ja toob sinuni kõige odavamad lennupiletid Taisse. Peale selle loob ta fantastilisi virtuaalseid universumeid, kus seigelda. Kui õpid programmeerima õpid arvutiga otse suhtlema.
Kui oskad programmeerida oled poweruser nii arvutis kui maailmas, sest põhiliselt arenev oskus on loogika ja see ei jookse mitte ühegi ala peal külgedelt maha.
Java
Java on veidi keerulisem keel, kui näiteks Python, aga samas ei lase Java sul nii palju vigu teha ja on seetõttu vahest isegi parem keel alustamiseks. Parim omadus on aga see, et Java on keeruliste ja lihtsate keelte vahepeal. Kui õpid selle keele ära saad minna ükskõik kuhu edasi!
Siin on kõik, mida meil on vaja Javast teada. Hoia seda joonist omal lähedal ja vaata seda alati, kui õpid uusi asju. Kui saad skeemist aru on programmeerides lihtsam orienteeruda ja meeles hoida võimalusi.
KKK