Yhteenveto: Mitä on "Ohjelmointi 2"-kurssi

Tehdään väliyhteenveto, kun kurssista 2/3 (vasta!) on takana. Nämä ovat kesäopen 2006 näkemyksiä, joista muut voivat olla myös eri mieltä. Muistakaa kriittisyys ja avoin keskustelu!

Mitä tapahtui?

Ohjelmointi 2 on johdatus tietokoneohjelman tekemiseen. Ks. käsitekartta. Asiakokonaisuudet eriteltynä ja muihin IT-kursseihin viitaten:

Ohjelman tekeminen:

  • ohjelmistotekniikka (=> kurssi "Ohjelmistotekniikan perusteet")
  • koodaaminen (Ohjelmointi 1 => "this" => esim. "Graafisten käyttöliittymien ohjelmointi"/Numeerisen matematiikan kurssit)

Mitä hieman opittiin/opitaan...

Ohjelmistotekniikasta:

  • resurssit

  • elinkaari eli "suunnittelu, toteutus, testaus, käyttöönotto, ylläpito"

    (=> projektikurssit, työharjoittelut, "oikeat työt")

  • työkalun valinta sovelluskohteen mukaan

    (=> projektikurssit, työharjoittelut, "oikeat työt")

  • prosessin/metodin tiedostaminen (esimerkkinä XP, reunahuomautuksia muista menetelmistä)

    (=> Ohjelmistotekniikan/projektijohdon kurssit)

Koodaamisesta:

  • nähtiin eri ohjelmointikielten olemassaolo (=> "Ohjelmointikielten periaatteet")
  • todettiin eri paradigmojen olemassaolo (=> esim. "Funktio-ohjelmointi")
  • tehtävämäärittelyn, algoritmin ja koodin suhde (=> "Algoritmit 1-3")
  • tutustuttiin lähemmin Java-alustaan

Ohjelmointikielistä yleisesti:

  • lähdekoodi
    • syntaksi (=> "Automaatit ja kieliopit")
    • avainsanat
    • ohjelman rakentuminen eri tasoisista palasista (aliohjelmat/luokat/moduulit)
    • kommentointi, siisteys, koodauskäytännöt
  • kääntäminen ja ajaminen
  • debuggaus
  • testaaminen
  • paljon yksityiskohtia, "sudenkuoppien" havaitsemista (esimerkkinä ilmeneminen Javassa)

Ohjelman toimintaympäristöstä:

  • käyttöjärjestelmä / laitealusta (=> "Käyttöjärjestelmien perusteet")
  • virtuaalikone käsitteenä (=> "Tietotekniikan perusteet" / "Käyttöjärjestelmien perusteet")
  • prosessit / säikeet (=> "Käyttöjärjestelmien perusteet")
  • tietokannat (=> "Tietokannat")
  • käyttäjät (=> Käyttäjäystävällisen tietojenkäsittelyn kurssit)

Joitakin painotuksia

Mikään yksityiskohta ei riitä, mm.:

Ohjelmointi on mm.: