Minulle jäi vielä hieman epäselväksi se, että minkälainen systeemi Classicissa opettaa aloittelijoita? Onko oppitunnit vielä mukana, ja muuttuvatko nämä mitenkä verrattuna nykyisiin? Onko suunnitelmissa ollut tehdä erilaisia pelioppaita?
Itse olen nimittäin ajatellut, että eräänlainen opetusmahdollisuus olisi se että saisi tutkailla jotain valmiita, pieniä pelejä sekä ohjelmia ja oppia niiden toimintatavoista ja rakenteista. Tämä siksi, että mielestäni nykyiset oppitunnit (joiltain osin) eivät tarjota tarpeeksi ajattelemista, muutosmahdollisuuksia tai mahdollisuutta lisätä niihin omia pieniä koodinpätkiä. Tosin nykyiset oppitunnit tuskin ovat tuota aivan tuota varten edes suunniteltu, mutta tälläinen mahdollisuus olisi mukava.
Sillä ohjelmoimista voi oppia ainoastaan itse tekemällä, mutta esimerkiksi itselläni oli aikoinaan (jonkin verran vieläkin) vaikeaa hahmottaa jonkin ohjelman rakenne tai pikemminkin sanottuna toimintatapa/kaava. Tästä hyvänä esimerkkinä pongi-peli. Pallon liikkuminen, mailaan osuessa suunnan muutto ja mailat olivat minulle täyttä hepreaa. Tämä vaikeutti huomattavasti omien pienien kokeilujen tekemistä. Se oli hyvin turhauttavaa. Valmiin materiaalin tutkistelu ja muuttelu auttoi paljon.
Lisäksi, jos tulee sitten Classicissa on oppitunnit, niin missä niiden opetuksen pääpaino on? Itselleni on jäänyt sellainen mielikuva, että opiskelemalla oppitunnit läpi olisit sen jälkeen jossain määrin pystyvä henkilö tekemään ylhäältä kuvatun räiskinnän monilla aseilla, vihollisilla ja hienoilla efekteillä. Jos oppitunnit olisivat pyrkineet suoraan mahdollistamaan vaikka roolipelin teon, olisivatko ne nykyisellään paljoltikin erilaiset?
En missään nimessä halua valittaa nykyisen cb:n oppitunneista, päinvastoin pidän niitä hyvänä tapana opiskella ohjelmoimista. Mutta toivon että Classicissa tämä opiskelumahdollisuus olisi laajempi, entistäkin parempi, omiin kokeiluhin kannustava ja ohjelmoinnissa tarvittavaa ajattelutapaa edistävämpi. Tai että sille olisi (ohjattuja) vaihtoehtoja. Lainaan sPuntten viestiä "pyydä täällä harjotustehtäviä"-topikista:
Käytyäsi läpi ainakin muutaman oppitunnin voit kokeilla, mitä itse saisit aikaan. Voit ihan itse kehittää jotain ideaa, katsoa manuaalin helpoimpia harjoituksia, tai kysyä täältä. Tärkeimmät komennot, mitä aluksi tarvitset, ovat tekstin tulostus (Print, Text ja Addtext) ja ruudun päivitys DrawScreen-komennolla. Seuraavaksi kannattaa ottaa mukaan erilaisia muuttujia (kokonaisluvut, desimaaliluvut ja merkkijonot). Sitten silmulkat (Repeat...Forever/Until *ehto*) ja ehtolauseet (If *ehto* Then...Elseif *ehto* Then...Else...EndIf). Kun nämä ovat hallinnassa, ota kurssi kohti piirtokomentoja (Dot, Line, Circle, Box, jne.) Niillä saat jo yksinkertaista grafiikkaa aikaan. Seuraavaksi lisätään ohjelmaan interaktiivisuus, eli käyttäjälle mahdollisuus vaikuttaa sen kulkuun. Kyseeseen tulevat siis erilaiset syötefunktiot (Input, KeyHit(), Keydown(), MouseHit(), mouseDown(), MouseX(), MouseY(), jne.). Tästä eteenpäin pärjäät jo varmasti itseksesi. Voit kokeilla vaikeampia oppitunteja ja kokeilla, miten tehokkaasti CB:llä voi piirtää kuvia, soittaa ääntä, luoda partikkeleita ja tehdä kokonaisen pelimoottorin muutamalla objektilla ja tilekartoilla.
Tälläinen opetustapa liitettynä oppitunteihin olisi minun mielestäni hyvä. Eli ensimmäisenä pääpaino ei ei olisi siinä että pyöritettäisiin objekteja, vaan tutustuttaisiin näihin rakenteisiin tarkemmin ja niiden avulla harjoiteltaisiin pienten ohjelmien tai pelin tekoa. Nykyisellään nuo rakenteet tulevat ikäänkuin varkain, objektien opettelun mukana. Mielestäni niihin ei saanut kunnon otetta. Itse en ainakaan saanut. Esimerkiksi for/next lauseke, while/wend, selec/case olivat minulle käytännössä vaikeita ymmärtää. Niiden (varsinkin for/next) ohjelmointia paljon helpottavat ominaisuudet, jäivät minulta ymmärryksen ulkopuolelle.
Vaikka tämä pieni romaanini ei mitään ajatuksia/toimenpiteitä aiheuttaisi, haluan ehdottomasti tietää minkälaista systeemiä Classiciin on kaavailtu. Jos niitä ei ole kaavailu, niin tässä olisi minulta pientä ehdotusta.
Väsyttää niin ettei jaksa edes mennä lepäämään.