HUOM! Voit itse lisätä ja muuttaa sisältöä muokkaa-painikkeiden avulla

 Olet itse vastuussa tämän teoksen käytöstä aiheutuvista vahingoista Lue lisää.

Ohjelmointi

Kohteesta Wikikko - kansan taitopankki
Siirry navigaatioon Siirry hakuun

Ohjelmoinnissa ohjelmoija kirjoittaa haluamansa komennot peräkkäin tietokkoneen suoritettavaksi. Ohjelmia voi kirjoittaa esim. tekstieditorilla (esim. muistio), ohjelmointieditorilla (sisältää syntaksin korostuksen, esim. Notepad++ tai Sublime Text 2) tai ohjelmointiympäristön editorilla. Tietokone on sinänsä fiksu kampe, että se tekee juuri täsmälleen niin kuin on käsketty. Joten yleensä kun kuulee sanottavan että 'tietokone ei toimi', se tarkoittaa että käyttäjä ei ymmärrä mitä tietokone tarkoittaa. Näin saattaa käydä silloin, jos käyttäjä käyttää ohjelmaa toisin kuin mitä ohjelmoija on ajatellut (testaus ja määrittely) tai että ohjelmoija on olettanut käyttäjän tietävän jonkin asian, jota käyttäjä ei tiedäkkään (käytettävyyssuunnittelu). Tämän lisäksi on toki olemassa bugeja ohjelmissa sekä laitteistovikoja, mutta nämä ovat aika pieni osa kaikista 'vioista'.

Nykypäivänä ohjelmointi usein tapahtuu jonkun ohjelmointiympäristön kautta. Ohjelmointiympäristö on tarkoitusta varten suunniteltu ohjelma, joka auttaa ohjelmoijaa rutiiniluontoisissa tehtävissä, ohjelmaa kirjoitettaessa. Ohjelmnointiympäristöt eivät suinkaan tarkoita, että ohjelmoijan ei tarvitsisi osata ohjelmoinnin perustetita, päin vastoin. Ohjelmointiympäristöä käytettäessä ohjelmoija yleensä keskittyy vain tiettyyn osaan ohjelmasta, jolloin paljon mutta jää 'piiloon' ympäristön sisään, jolloin dokumentoinnin ja ohjelmointikäytänteiden ymmärtäminen korostuu. Esimerkiksi ohjelmistoyrityksessä kehitettävän ohjelman tietty osa, eli ominaisuus, on voitu antaa tehtäväksi yhdelle ohjelmoijalle. Tällöin ohjelmoija kirjoittaa suunnitelman mukaisesti muihin ohjelman kirjastoihin yhteensopivan uuden kirjaston ja sen sisältämät luokat (eli metodeja ja parametrejä), jotka sisältävät kyseisen ominaisuuden vaatimat toiminnot.

Jokaisen ohjelmoijan on kuitenkin aloitettava perusteista. Alla on joitain resursseja, jotka voivat avittaa alkuun pääsemistä ohjelmointiharrastuksessasi tai -urassasi.

Erilaisia ohjelmointikieliä[muokkaa]

  • Basic Beginner's All-purpose Symbolic Instruction Code vuodelta 1964.
  • Visual Basic
  • Assembly tai assembler Lähellä konelieltä oleva ohejlmointikieli.
  • Lisp Funktionaalisen ohjelmoinnin yksi tunnetuimpia ohjelmointikieliä.
  • C-kieli, C++ Proseduraalisen ohjelmoinnin peruskieliä. Unix ja käyttöjärjestelmäydinten maailmassa suosittu.
  • C# (lausutaan: C sharp) C- kieleen pohjautuva ohejlmointikieli.
  • Objective-C Applen käyttämä c- kielen johdannaninen.
  • PHP Web palvelimien perinteinen ohjelmointilieli.
  • Java Työpöytä- ja web-sovelluksissa sekä android -käyttöjärjestelmän käyttämä ohjelmointikieli.
  • Python Työpöytäkäytössä skriptauskielenä tunnettu ohjelmointikieli. Monet suosittelevat Pythonia ensimmäiseksi ohjelmointikieleksi sen yksinkertaisen syntaksin ja korkean tason tietorakenteiden ansiosta. Kuitenkin, esim. dynaaminen tyypitys tai lauseen päätösmerkkien puuttuminen saattaa aiheuttaa päänvaivaa myöhemmissä vaiheissa. Käytetään myös mm. Django palvelinohjelmistossa.
  • JavaScript Web sivujen toiminnallusuus on usein toteutettu javaScriptillä. Käytetään myös mm. Node.JS palvelinohjelmistossa.
  • Ruby Käytetään mm. Ruby on Rails palvelinohjelmistossa.

Lisätietoa ohjelmointikielistä Wikipedian puolella.

Muita netin 'merkintäkieliä'[muokkaa]

  • HTML Web sivujen merkintäkieli (sisältö).
  • CSS Web sivujen muotoilukieli.
  • VBA Microsoft Excelin makroja laajentava 'ohjelmointikieli'.
  • Wiki-merkintäkieli Yksinkertaistettu versio HTML -kielestä wikien käyttöön.
  • BBCode Keskustelupalstojen merkintäkieli.

Millä ohjelmointikielellä aloittaisin?[muokkaa]

Lähes kaikilla ohjelmointikielillä perusteet ovat samat ja eroja on lähinnä syntaksissa ja saatavilla olevissa kirjastoissa. Jos haluat perehtyä ohjelmointiin ja sinulla ei ole erityistä kohdetta tiedossa, suositelluimpia kieliä ovat Python ja Java. Jos tiedät mihin tarkoitukseen ohjelmia aiot kirjoittaa, alta luettelosta voit katsoa ohjelmointikielen yleisimmille tarkoituksille.

  • PC työpöytäohjelmia Windowsille tai Linuksille: C++
  • Työpöytäohjelmia MAC:ille tai mobiilisovelluksia iOS:lle: C#
  • Android -mobiilisovelluksia: Java
  • Skriptejä (pieniä ohjelmapalasia pikkutehtäviin): Python
  • Nettisivuja: HTML(5), JavaScript ja CSS
  • Nettipalvelinohjelmistoja: PHP tai Ruby

Lisää ohjelmoinnista[muokkaa]

Wikikon ohjelmointisivuja[muokkaa]

Kirjoja[muokkaa]

Muita nettisivuja[muokkaa]

Ohjelmistoprojektin vaiheista[muokkaa]

Projektin aloittaminen[muokkaa]

  • Suunnittelu
  • Hallinnointi

Määrittely[muokkaa]

  • Vaatimukset

Suunnittelu[muokkaa]

  • Prototyypit
  • Käyttöliittymän suunnittelu

Ohjelmointi[muokkaa]

  • Ohjelman kirjoittaminen
    • aliohjelmina osa kerrallaan varmistaen niiden toiminnan
  • Tietokannat
  • Poikkeustenkäsittely
    • ohjelman jatkaminen virheen tapahduttua tai hallittu lopetus

Testaus[muokkaa]

  • Oikeelllisuus ja virheettömyys
  • Debuggaus
  • kirjoitusvirheet, ohjelmointivirheet, määrittelyvirheet

Dokumentointi[muokkaa]

  • Käyttäjälle
  • Lähdekoodi
  • Tekniset: asennus, mukauttaminen, päivitys

Ylläpito[muokkaa]

  • Suoritusympäristön muutokset
  • Löytyneiden virheiden korjaukset, päivitykset

Kehitys[muokkaa]

  • Uudet toiminnot
  • Uudet laitealustat
  • Muuttuneet käyttäjävaatimukset