Ohjelmoinnin kurssi yhteistuotantona

PHP-ohjelmoinnin kurssin tekeminen kesti noin kaksi vuotta eli se lienee tiimimme hitain tuotantoprosessi. Projekti pysähtyi monta kertaa, ja välillä se oli kokonaan telakalla. Mutta sitten tapahtui ihme, ja projekti sai tuulta siipiensä alle. Opiskelija kyseli, että eikö teillä ole lainkaan ohjelmoinnin kurssia. Haasteeseen oli pakko reagoida, ja niin projekti kaivettiin esiin naftaliinista.

Kuva: Flickr / pvera (CC BY 2.0)

Projektia vauhditti myös uusi koodausaalto. Koodaus on tulossa opetussuunnitelmiin ja sitä kautta osaksi opetusta. Lisäksi tiimiltämme kyseltiin halua koodauspäivän vetämiseen. Vastasimme tähän haasteeseen ja otimme seuraavankin askeleen – ensimmäinen ohjelmoinnin kurssi on nyt valmis.

PHP-ohjelmoinnissa meitä viehätti erityisesti sen laitteistoriippumattomuus. Tämä tarkoittaa mm. sitä, ettei käyttöjärjestelmällä ole väliä, eli PHP ei ota kantaa siihen, onko loppukäyttäjällä Macintosh, Windows vai Linux. Toinen painava syy oli sen voima; sillä on saatu aikaiseksi paljon kuten mm. julkaisujärjestelmät Drupal, WordPress ja Joomla. Sillä on myös tehty verkkokauppoja ja oppimisympäristöjä kuten esim. Moodle.

Hyvät eväät koodaukseen

Kurssilla opetellaan PHP:n perusteita. PHP on siinä mielessä hyvä kieli tutustua ohjelmointiin, koska sen syntaksissa on paljon yhteneväisyyttä järeämpiin ohjelmointikieliin kuten C-kieleen ja Javaan. PHP antaa siten koodaukseen hyvät eväät, joiden avulla voi helposti hypätä seuraavalle asteelle.

Alla on esimerkki yksinkertaisesta PHP-skriptistä, jossa funktiota kutsumalla lasketaan yhteen kahden luvun summa:

Kurssin aikana läpikäytäväksi harjoitustyöksi valittiin osto- ja myyntipalstan toteutus, jossa sovelletaan PHP-kieltä tiedon tallentamiseen ja hakemiseen tietokannasta. PHP:n ja tietokannan testaamiseen voidaan hyödyntää ilmaista, kotikoneelle asennettavaa testipalvelinta, joita löytyy eri käyttöjärjestelmille. Näitä testipalvelimia ovat mm. WAMP, MAMP ja XAMPP, joiden kirjaimet kertovat paketteihin kuuluvista sovelluksista sekä, mille käyttöjärjestelmälle ne on tarkoitettu (XAMPP toimii useassa). Esimerkiksi WAMPin kirjaimet tarkoittavat seuraavaa:

  • Windows-käyttöjärjestelmä
  • Apache-webpalvelin
  • MySQL-tietokantarajapinta
  • PHP-, Perl- ja/tai Python-komentosarjakieli

Projektin pitkittyminen ei haitannut, koska PHP-ohjelmointikieli on ja pysyy ainakin perusteiden osalta samana. Pitkän projektin loppuvaiheessa katsoimme vielä uudestaan, olisiko koodausvälineiden osalta tapahtunut muutoksia – ja olihan sillä rintamalla tapahtunut paljonkin. Löysimme hyviä editoreita, jotka toimivat niin Macissa, Linuxissa kuin Windowsissakin. Löysimme myös kehitysympäristön, joka toimii kaikissa em. käyttöjärjestelmissä. Kyseinen kehitysympäristö on Aptana Studio 3.

Teimme kurssille myös videoita, koska jotkut asiat voi havainnollistaa parhaiten juuri videon avulla. Videot nauhoitimme ja leikkasimme Camtasialla. Camtasia valikoitui ohjelmaksi, koska sillä pystyy zoomailemaan ja tekemään kamera-ajoja ruudulla. Varsinkin koodia tarkasteltaessa zoomausta tarvitaan, koska muuten koodista ei saa selvää.

aptana

Voit tutustua kurssiin tästä linkistä: PHP-ohjelmoinnin perusteet.

Jari Sarja, verkkopedagogi
Mikko Tarmia, mediatuottaja