Lukijalle

Tervetuloa ohjelmoimaan

Maailma ympärillämme on digitaalinen. Katsot videota tabletista, joka tulee satelliitin avulla toiselta puolen maapalloa. Kirjoitat ja piirrät synttärikutsut tietokoneella. Luet päivän lehden, joka on aluksi ollut täysin digitaalinen. Juttelet kavereiden kanssa WhatsAppissa puhelimella. Olet kyydissä autossa, joka on suunniteltu digitaalisesti ja tuotettu automaation avulla. Itse asiassa suurin osa ympärillämme olevasta tavarasta on tuotettu automaattisilla tuotantolinjoilla, joita ohjaa robotti. Melkein jokaisesta kodinkoneesta löytyy mikroprosessori, joka ohjaa laitteen toimintaa. Mikroprosessorin omaavat laitteet toimivat oikein, koska laitteessa on ohjelma, jota se noudattaa. Näiden ohjeiden laatimista kutsumme ohjelmoinniksi. Mieti vaikka huonekalun kokoamista, tai legorakennelman rakentamista. Ohjeiden avulla onnistuminen on taattu.

Laadimme ohjelmia siksi, että pyrimme ratkaisemaan ongelmia. Ongelman ratkaisun ideaa kutsumme algoritmiksi. Törmäät päivittäin ongelmiin. Esimerkiksi kuinka teet lettuja? Et ehkä muista lettujen teko-ohjetta ulkoa, joten kaivat esiin reseptin, jossa on ohjeet lettujen tekoon. Ratkaiset herkkuongelman lettu-algoritmin avulla. Myös matematiikassa ratkaistaan ongelmia. Voit aluksi miettiä kuinka lukujen keskiarvo lasketaan ja keksiä laskuidean. Mutta jos lukuja on paljon: satoja tai tuhansia, niin tarvitset avuksi tietokoneen, joka tekee laskut nopeasti. Ennen kuin tietokone osaa laskea mitään, niin sinun pitää kertoa ohjeet tietokoneelle, kuinka laskuja lasketaan. Kun kirjoitat ohjeet jollain ohjelmointikielellä, niin sitä kutsutaan koodaamiseksi. Tässä kirjassa opetetaan, kuinka ratkaistaan ongelmia ensin sanallisesti ja sitten tekemällä yksinkertaisia ohjelmia. Tällä kirjalla on kaksi tavoitetta: opitaan hyviä ohjelmointikäytänteitä ja sovelletaan ohjelmointia käytäntöön ratkaisemalla matemaattisia ongelmia ohjelmoinnin avulla. Sinua ehkä kiinnostaa pelien tekeminen. Myös tähän osa-alueeseen kirja antaa hyvän pohjan.

Tämän kirjan ohjelmointikieleksi on valittu visuaalinen Processing-ohjelmointi, joka perustuu Internetin suosituimpiin ohjelmointikieliin Javaan ja JavaScriptiin. Processing-ohjelmointi on moderni 2000-luvun ohjelmointikieli ja siksi tämä ohjelmointiympäristö toimii kaikilla laitteilla. Koodaamista voit tehdä, niin PC-tietokoneella, kuin iPad- ja Android-tableteilla. Processing-ohjelmoinnissa komennot ovat yksinkertaisia, joten se soveltuu hyvin aloittelijalle. Myös edistyneemmät ohjelmoijat tykkäävät Processing-kielestä, koska sen perusrakenne on sama kuin muilla oliopohjaisilla kielillä (C, C++,C#, Java, Python). Processing-ohjelmoinnissa kaikki tulostus tapahtuu koordinaatistossa ja siksi tämä ohjelmointikieli soveltuu hyvin matematiikkaan. Siksipä aloitetaan oppiminen tutustumalla koordinaatistoon.