Kirjautuminen

Haku

Tehtävät

Oppaat: Aloittelijan oppaat: Ohjelmoinnin aloittaminen

Kirjoittaja: Antti Laaksonen (2011).

Ohjelmointi on mukava harrastus, mutta siinä voi olla vaikeaa päästä alkuun. Vaihtoehtoja ensimmäiseksi ohjelmointikieleksi on suuri määrä, mutta mikä niistä olisi itselle sopiva? Entä jos kyvyt eivät edes riitä ohjelmointiin? Tämä opas pyrkii tasoittamaan uuden ohjelmoijan alkutaivalta.

Mitä on ohjelmointi?

Ohjelmoinnissa on ideana antaa tarkka toimintaohje, jonka avulla tietokone tekee halutun asian. Toimintaohje eli algoritmi täytyy kuvata jollakin tietokoneen ymmärtämällä ohjelmointikielellä.

Ohjelmointi vaatii tarkkuutta ja huolellisuutta, koska tietokone noudattaa saamiaan ohjeita mekaanisesti. Pienikin virhe ohjelmassa voi aiheuttaa täysin odottamattoman lopputuloksen. Toisaalta jos ohjelma on laadittu oikein, tietokone suorittaa sen erittäin nopeasti ja virheettömästi.

Ohjelmoinnin oppiminen vaatii paljon aikaa. Viikonloppu ei riitä, vaan hyväksi ohjelmoijaksi kehittyminen vie vuosia aikaa. Ohjelmointia oppii parhaiten käytännön kautta tekemällä paljon pieniä harjoitusohjelmia.

Ensimmäinen ohjelmointikieli

Ensimmäisen ohjelmointikielen valinta on aihe, joka herättää syviä tunteita kokeneissa ohjelmoijissa. Jokainen haluaisi suositella ensimmäiseksi kieleksi omaa lempikieltään. Sopivan kielen löytäminen on myös siksi vaikeaa, että vaihtoehtoja on valtava määrä.

Kaikeksi onneksi ensimmäisen ohjelmointikielen valinta ei ole vakava päätös, jolla olisi kauaskantoisia seurauksia. Tämä johtuu siitä, että ohjelmointikielet ovat keskenään hyvin samanlaisia. Niinpä kun yhden ohjelmointikielen osaa kunnolla, siitä on helppoa siirtyä muihin.

Seuraavassa on kolme ehdotusta ensimmäiseksi ohjelmointikieleksi:

Python

Python on yleiskäyttöinen ohjelmointikieli, joka soveltuu hyvin ohjelmoinnin aloittamiseen yksinkertaisen perusrakenteensa ansiosta. Ohjelmointiputkassa on aloittelijoille sopiva Python-opassarja.

PHP

PHP on tarkoitettu nettisivujen ohjelmointiin ja hyvä valinta ensimmäiseksi ohjelmointikieleksi, jos nettisivuston tekeminen kiinnostaa. Ohjelmointiputkassa on aloittelijoille sopiva PHP-opassarja ja opas nettisivuston aloittamisesta.

Java

Java on yleiskäyttöinen ohjelmointikieli, jota käytetään usein yliopistoissa ohjelmoinnin opetuskielenä. Esimerkiksi Helsingin yliopiston sivuilla on Java-oppimateriaalia.

Väitteitä ohjelmoinnista

Ohjelmoinnin oppimisesta on liikkeellä paljon uskomuksia, jotka eivät aina pidä paikkaansa. Seuraavaksi käsitellään joitakin väitteitä.

"Ohjelmoinnin oppimiseen vaaditaan erikoislahjakkuutta."

Ohjelmoinnin oppiminen vaatii loogista ajattelukykyä, joka kehittyy harjoittelemalla. Toiset oppivat ohjelmointia nopeammin kuin toiset, mutta ei ole ihmisryhmää, jolle ohjelmoinnin oppiminen olisi mahdotonta.

"Ohjelmointia ei voi oppia enää vanhemmalla iällä."

Ohjelmoinnin oppimisessa ei ole samanlaista herkkyyskautta kuin esimerkiksi äidinkielen oppimisessa. Päinvastoin vanhempana ohjelmointia voi oppia nopeammin, kun looginen ajattelu on kehittyneempää.

"Ohjelmointi on syytä aloittaa kielellä X, koska sitä tarvitaan työelämässä."

Työelämän vaatimukset muuttuvat jatkuvasti, eikä aloituskieltä ole järkevää valita niiden perusteella. Hyvä ohjelmoija oppii tarvittaessa uuden töissä käytettävän kielen muutamassa viikossa.

"Ohjelmointikielen tulee olla vaikea, koska muuten ohjelmointi on liian helppoa."

Ohjelmointikielen on tarkoitus helpottaa ohjelmoijan elämää eikä vaikeuttaa sitä. Ohjelmoinnin todelliset haasteet ovat algoritmien suunnittelussa ja suurten kokonaisuuksien hallinnassa.

Lopuksi

Internetissä on suuri määrä tietoa ohjelmoinnista, ja ongelmiin löytyy usein apua keskustelualueilta. Toisaalta asioiden miettiminen ja kokeileminen itse on tärkeää ohjelmoinnin oppimisessa. Ei kannata tyytyä kopioimaan ja muokkaamaan toisten tekemiä ohjelmia, vaan on parempi yrittää ymmärtää asioita aidosti itse.

Onnea ohjelmointiurallesi!

Kommentit

ohjelmoija [16.01.2013 15:36:14]

#

Ohjelmointia jo 80 luvun alusta lähtien opetelleena minusta tuntuu
ettei sillä ole väliä millä ohjelömointikielellä ohjelmoinin aloittaa.
Kunhan aloitaa.

Ohjelmoitihan jakaantuu nykyjään kahteen eri ajatusmalliin perinteinen aliohjelmia käyttävään ja olio pohjaiseen ohjelmointiin.
Esim. Pascal, C ja Basic kielieli ei siällä oliohjelmointiin
tarvittavia rakenteita. Kun taas Java ja C++ on tarkoitettu oliohjelmointiin. Ongelman ratkaisu on aivan erilaista olio ohjelmoinnissa
kuin perinteisessä aliohjelmia käyttävässä ohjelmoinnissa.

Metabolix [16.01.2013 19:37:39]

#

ohjelmoija kirjoitti:

Ohjelmoitihan jakaantuu nykyjään kahteen eri ajatusmalliin perinteinen aliohjelmia käyttävään ja olio pohjaiseen ohjelmointiin.

Hyvin harvoin ohjelma edustaa absoluuttisesti vain toista paradigmaa.

ohjelmoija kirjoitti:

Esim. Pascal, C ja Basic kielieli ei siällä oliohjelmointiin tarvittavia rakenteita.

Tässä olet väärässä. Nykyaikaiset Pascalin murteet sisältävät olioita. Monet Basic-kielet sisältävät olioita, tärkeimpänä nykyään VB.Net. Myös C:llä ja melkeinpä millä tahansa muullakin kielellä voi ohjelmoida olio-ohjelmoinnin tavoin, vaikka siihen ei olisikaan erillistä merkintätapaa.

ohjelmoija kirjoitti:

Ongelman ratkaisu on aivan erilaista olio ohjelmoinnissa kuin perinteisessä aliohjelmia käyttävässä ohjelmoinnissa.

Tämäkään ei missään nimessä pidä paikkaansa. Useimmat ongelmat ratkaistaan hyvin samalla tavalla, ja erot toteutuksessa ovat viime kädessä hyvin pieniä, jos koodi on hyvää. Tietenkin huono koodi on asia erikseen.

kayttaja-11960 [01.06.2014 11:22:36]

#

Jos aloittelija aloittaa liian vaikeasta niin ei voi oppia hyvin, siksi pitää mennä alkeista ammattilaiseksi.

feenix [18.02.2015 16:12:57]

#

lainaus:

PHP on tarkoitettu nettisivujen ohjelmointiin ja hyvä valinta ensimmäiseksi ohjelmointikieleksi, jos nettisivuston tekeminen kiinnostaa.

Ottaen huomioon miten paljon sekopäisyyksiä PHP:ssä on (kuten vaikka == false vs === false) joista ei muissa kielissä tarvitsisi välittää yhtään mitään, en kyllä sanoisi ikinä että se on hyvä valinta ensimmäiseksi ohjelmointikieleksi, vaikka kuinka nettisivut kiinnostaisivat.

Enkä mitenkään fleimaa, ihan oikeasti noihin ongelmiin vain törmää hyvin aikaisessa vaiheessa, eikä Pythonilla, Javalla, C#:lla jne touhutessa tulisi edes mieleenkään, että paluuarvot voisivat olla useanlaisia tyyppejä, puhumattakaan paluuarvojen törmäyksistä. Eli edes pieni varoitus voisi olla paikallaan.

Spectrum [12.03.2015 16:06:23]

#

Aloitin 80 luvulla. Ensin tein visualbasicilla ja sitten testailin grafiikkaa symboliasemblerilla, c++ ja pascalilla. Suurimmaksi osaksi kielet ovat aivan samanlaisia - c# on nykyään vähän helpompi käyttöisempi kuin c++ ja javasta löytyy näppärästi kirjastoja.

lainaus:

"Ohjelmointi on syytä aloittaa kielellä X, koska sitä tarvitaan työelämässä."

Työelämän vaatimukset muuttuvat jatkuvasti, eikä aloituskieltä ole järkevää valita niiden perusteella. Hyvä ohjelmoija oppii tarvittaessa uuden töissä käytettävän kielen muutamassa viikossa.

Python, php, javascript ynnä muut tyypittömät kielet ovat oikeastaan vaikeampia kuin vastakohtansa. Eli aloittelijan on vaikeata löytää virheitä, kun muuttujaa yrittääkin sijoittaa ihan väärän tyyppiseen muuttujaan kesken ajon. Mutta kun osaa jonkun kielen jo, niin asia on jo ihan erijuttu. Eli kun ensin on oppinut kielen, niin kyllä Pythonilla sen jälkeen osaa koodata, vaikka olisi aloittanut C:llä. Hieman karrikoiden :) Kieltämättä C:stä vaikka Pythoniin on pieni matka, ellei sitten tajua, että Python on lopulta vain C:n jatke, jolloin tajuaakin, että kahdella kielellä voi tehdä yhdessä työtä.

Eli kyllä, en aloittaisin ohjelmointia pythonilla tai perlillä. Aloittaisin kielellä, missä on kääntäjä, joka ilmoittaa virheistä ennen ajoa. Mutta tämä on henkilökohtainen mielipiteeni. Tyypittömien helppoushan on niiden yksinkertainen saatavuus.
puolia on monia.
Aamen.

Kiinnostunut yksilö [11.04.2015 23:47:17]

#

Kysymys kuuluu: Mille pohjalle ohjelmointi kuuluisi aloittaa? ei kai sitä suoraan tietokoneen aloitussivullakaan voi aloittaa... saati komentoon tai kirjoitusalustalle (esim. microsoft word)

Metabolix [11.04.2015 23:52:05]

#

Kiinnostunut yksilö kirjoitti:

Mille pohjalle ohjelmointi kuuluisi aloittaa?

Edellä olevassa oppaassa on linkkejä eri ohjelmointikielten oppaisiin, joissa myös kerrotaan, miten kyseisiä kieliä voi käyttää (eli mitä ohjelmia pitää asentaa ohjelmointia varten). Luepa sieltä. Ei näköjään kärsivällisyys riittänyt tiedonhaussa kovin pitkälle.

Pascalpoika [30.12.2015 08:16:10]

#

Kiinnostunut yksilö kirjoitti:

(11.04.2015 23:47:17): Kysymys kuuluu: Mille pohjalle ohjel­moin­ti...

Niitä on monia hyviä pohjia ite käytän notepad++

jsinkko [27.08.2016 22:01:39]

#

Oikeastaan aivan sama.

Hommaa ammatikseni tehneenä voin sanoa, että melkein kaikista ohjelmointikielistä löytyvät ne if, for ja while-lausekkeet. Joka kielessä on omat kommervenkkinsä. Kaikki kielet sopinevat siihen, mihin ne on alunperin tarkoitettu.

jyrki41 [29.01.2019 13:16:01]

#

C++ asennus

Voiko C++ asennustiedostot ottaa tikulle ja asentaa toiseen koneeseen?

Verkossa oleva koneeni on Apple, jolla myös kommunikoisin.
Vanha koneeni on Windows XP Home Edition vuodelta 2005, joka ei ole verkossa ja jolle C++ ohelmiston asentaisin.

Olen jo eläkkeellä, koulussa luettu saksaa, joten minulla on huono englanninkielitaito.
1960-luvun loppupuolella ohelmoinut PL-1 ja RPG:llä
1980-luvun puolessa välissä olen ohjemoinut GW-Basicillä maatilakirjanpitosysteemin, joka on ollut omassa käytössä 10v.
Pascal-kieli on myös tuttu.
1995 vuonna käyty avointa yliopistoa, jossa ohjemoitu C++ kielellä.

Haluaisin vielä yrittää muistin virkistykseksi!?

Metabolix [29.01.2019 18:19:29]

#

Hei jyrki41,

Kyllä voit kopioida C++-ohjelmiston asennustiedostot muistitikulla toiseen koneeseen. Esimerkiksi Code::Blocks tukee vielä Windows XP:tä, vaikka XP onkin aika vanha järjestelmä. Lataa tiedosto codeblocks-17.12mingw-setup.exe asennusta varten.

Laitathan jatkokysymykset keskustelualueelle, jotta saat paremmin vastauksia. Tänne oppaiden kommentteihin ei välttämättä kukaan vastaa.

Koodi123 [03.02.2019 13:39:55]

#

Mielestäni ohjelmonti kannattaa aloittaa Pythonista, koska se on helppo kieli ja monet suosittelevat sitä ensimmäiseksi ohjelmointikieleksi. Miksi tässä oppaassa väitetään, että oikean ensimmäisen ohjelmointikielen valitseminen on vaikeaa? Tässä voitaisiin vain sanoa, että aloittakaa Pythonista.

Kirjoita kommentti

Huomio! Kommentoi tässä ainoastaan tämän oppaan hyviä ja huonoja puolia. Älä kirjoita muita kysymyksiä tähän. Jos koodisi ei toimi tai tarvitset muuten vain apua ohjelmoinnissa, lähetä viesti keskusteluun.

Muista lukea kirjoitusohjeet.
Tietoa sivustosta