-- Etusivu -- | Materiaalia | Luennot | Demot | Opettajat |
ITKP102 Ohjelmointi 1 --- syksy 2007
Pikalinkkej�: Ohjausajat harkalle | Tukiopetusdemot | Ty�kaluohjeet | Harjoitusty� | Ajank�ytt� | Arvostelukaava | Oikotieratkaisu | Opinto-opastiedot
Virtuaaliset demotaulut: Luokka Mountains (J�rven puoleinen) ja Luokka Lakes (Rantav�yl�n puoleinen)
Tietoja yliopiston ulkopuolisille organisaatioille:
Syksyn 2007 Ohjelmointi 1 lukio-opetuksen osana
Lukiolaiset ilmoittautuvat Korpissa eri paikkaan:
Lukio-oppilaiden oma Korppi-sivu.
International students' corner.
Huomaa kurssisivun v�lilehdet: Etusivulla on uusimmat tiedotteet ja opetusohjelmatiedot. Kirjallisuusluettelo ja relevantit nettilinkit ovat v�lilehdell� Materiaalia. Luentojen suunnitelma ja toteutuneiden luentojen materiaalit ovat v�lilehdell� Luennot. Lis�ksi on v�lilehdet harjoitusteht�ville ja opettajien esittelylle.
Opettajien TODO-lista (opiskelijoille ilmoitetaan s�hk�postilla heti, kun valmistuu):
- Tentin valmistelu; teht�v�t ja pisteytykset
- Tentin korjaus
Tarkin mahdollinen tieto aikatauluista ja paikoista on jatkuvasti kurssin Korppi-sivulla. Valitse omasi:
Huom 1: Demoryhm�t ovat erillisi�, ja kannattaa ilmoittautua itselle sopivaan aikaan olevaan ryhm��n. K�yt�nn�ss� voit k�ytt�� harkintaa ja k�yd� v�lill� my�s eri sessiossa kuin mihin olet ilmoittautunut. Jotta kokonaisuus toimii j�rkev�sti, on kuitenkin syyt� yritt�� k�yd� ensisijaisesti siin�, mihin on ilmoittaunut. Ettei johonkin ryhm��n tule yll�tt�en tupa liian t�yteen.
Huom 2: Jos tuntuu, ett� asiat eiv�t avaudu kovin nopeasti, voit k�yd� samat asiat uudelleen useammassa demoryhm�ss� saman tai eri opettajien kanssa ja kysy� tarkentavia kysymyksi� niin paljon, ett� lopulta varmasti selvi��. My�s s�hk�postilistalla voi kysy� ja pidemm�lle p��sseet voivat vastata oman k�sityksens� mukaan. Opettajat sittne "kommentoivat kommentointia" tarpeen mukaan.
Tukiopetusta on pyydetty, ja nyt sit� saa. Tarkoitus olisi, ett� k�yt�isiin asioita l�pi ohjaustyyppisesti: Ohjelmoit (tai v�hint��n yrit�t) luokassa ja opettaja avustaa henkil�kohtaisesti erityisesti perustavanlaatuisissa ongelmissa. N�m� ovat varsinaisten demotilaisuuksien lis�ksi eik� n�iss� siis k�yd� l�pi t�m�n viikon tarkastettavia demoja vaan esim. aiempia demoja tai seuraavan viikon teht�vi�. Tavoite on saada kaikki jollain tavoin kartalle perusjutuissa. T�ss� ryhm�postissa on ilmoitettu t�ll� hetkell� varatut tukiopetusajat. Ryhm�t on kielletty muilta kuin kadonneita k�rryj� etsivilt�.
Palopuhe
Ainoa keino saada tietokone tekem��n mit��n hy�dyllist� on tehd� sille ohjelmia. Melkein kaikki informaatioteknologian osa-alueet sis�lt�v�t ohjelmointia muodossa tai toisessa, vaikka "ohjelmien tekeminen" kokonaisuudessaan pit�� sis�ll��n kovin paljon muutakin kuin tietokoneen toimintaohjeiden kirjoittamista ohjelmointikielell�. Ohjelmointitaito ja siihen liittyv�t ongelmanratkaisutavat sek� ajattelumallit ovat l�ht�kohta melkein kaikkeen, mihin tiedekuntamme opiskelijoitaan valmentaa, joten IT-opintojen alkuvaiheessa on ��rimm�isen t�rke�� oppia mahdollisimman nopeasti ohjelmoimaan mahdollisimman hyvin. Sama p�tee muiden aineiden p��aineopiskelijoihin, jotka haluavat tietotekniikasta vakavasti otettavan sivuaineen.
Mielest�ni ohjelmointi ei ole vaikeaa, mutta se on, kuten klisee kuuluu, "taas yksi aivan erilainen tapa ajatella, j�sent�� maailmaa ja kommunikoida". Sellaisen hahmottaminen vaatii aikaa, ajattelua ja tekemist�. Suomeksi sanottuna... asian oppiminen ensimm�ist� kertaa on todenn�k�isesti ty�l�st�. Mutta muistelepa millaista oli py�r�ll� ajamisenkin opettelu...
Syksyll� 2007 kurssin Ohjelmointi 1 luennoi tietotekniikan laitoksen assistentti Paavo Nieminen apunaan joukko tuntiopettajia. T�ll� sivulla tullaan tiedottamaan kurssin etenemisest�. Aloitusluento on ti 11.9.07 10:15 - 12:00 Agoran auditoriossa 1. Ja se alkaa sitten sekunnilleen 10:15 suoraan keskelt� itse asiaa! Ole paikalla istumassa silloin, ja tuolista kiinni!
Byrokratia lyhyesti
Kurssin laajuus on 6 opintopistett� (tai 4 ov, jos viel� opiskelet viikkosysteemill�). Se on IT-tiedekunnan opiskelijoille pakollinen, tutkintoon kuuluva opintojakso. Kurssin suorittaminen edellytt�� aktiivista viikkoharjoitusten (eli demojen) tekemist�, harjoitusty�n tuottamista sek� tentiss� osaamista. Yksityiskohdat ja arvosteluperusteet kerrotaan ensimm�isell� luennolla. Et�opiskelu on mahdollista Internetin kautta niille, jotka eiv�t jostain syyst� pysty Jyv�skyl�ss� toimimaan. (L�sn�olo on toivottavaa, jos se on k�yt�nn�ss� mahdollista!). Kurssi tarjotaan my�s Avoimen yliopiston kautta esim. lukioissa tai opistoissa suoritettavaksi. Oppilaitoksen tulee t�ll�in ottaa yhteytt� Avoimeen yliopistoon sopimusten tekemiseksi.
Syksy 2007
Syksyll� 2007 kurssin luennoi allekirjoittanut eli Paavo Nieminen (sposti: nieminen@jyu.fi). Kurssi saattaa olla joiltain osin hieman erilainen kuin aiempina kertoina, mutta oppimistavoitteet ovat samat (opinto-oppaassa nimetyt aihekokonaisuudet sek� k�sitteist�, jota niiden k�ytt�minen edellytt��). Toivon kaikille jouhevaa alkua ohjelmointitaipaleella. Min� sek� tuntiopettajat olemme t��ll� teid�n oppimistanne varten, joten l�hestyk�� meit� aina tarvittaessa!
Tarkemmin kurssin laajuudesta
Yrit�n mitoittaa kurssin vastaamaan kuuden opintopisteen virallista ajallista laajuutta eli 6 x 27 tuntia = 162 tuntia aktiivista opiskelua. Valmistaudu syksyyn se huomioiden. Jotenkin seuraavasti toivon aikasi jakautuvan:
- Luentotilaisuudet 40 tuntia
- Demotilaisuudet 20 tuntia
- Demojen itsen�inen tekeminen 80 tuntia (sis�lt�� luentomateriaalin kertaamista, ajattelua sek� k�yt�nn�n tekemist�)
- Harjoitusty�n tekeminen 20 tuntia (varmaan osittain limittyy edellisen kohdan kanssa)
- Harjoitusty�n henkil�kohtaiset n�yt�t ohjaajalle max 1 tunti
- Tentiss� istuttava aika. (Katsokin, ett� osaat vastata kaikkeen mahdolliseen alle tunnissa, mik� j�� 162 tunnin kiinti�st� vapaaksi...)
Viikottainen ty�m��r� suurin piirtein esim. 4h (luennot) + 2h (demotilaisuus) + 8h (demojen ty�st�minen) + 2h (harjoitusty�n ty�st�minen) = 16h.
Arvostelusta
Kolme "leikkuria:"
- Harjoitusty� on kynnys kurssin suorittamiselle: se t�ytyy palauttaa m��r�aikaan menness�, ja t�m� on teht�v� henkil�kohtaisesti. Tarkastaja varmistaa keskustelemalla, ett� ty� on itse tehty eli ett� osaat perustella kaikki toteuttamasi ratkaisut. Aikataulu ilmoitetaan lokakuussa.
- Tentin l�p�isy (puolet teht�vist� oikein!) on kynnys kurssin suorittamiselle.
- Demoaktiivisuus (20% joka demoista ja kaikkien kertojen yksitt�isten prosenttien keskiarvo yli 30%) on kynnys kurssin suorittamiselle. Ali aktiivisuus mitataan erikseen joka demossa (tehtyj�/kaikki), ja lopussa ratkaisee keskim��r�inen prosentti. Siis esim. olet tehnyt demoista 20%, 40%, 60%, 20%, 40%, 60%, 20%, 40%, 60%, 40% niin keskiarvoksi tulee 40%.
Arvosanan m��r�ytyminen:
T�m� on 30 pisteen kurssi. Tentist� voi saada vain 24. Loput demoaktiivisuudesta.
Pisterajat arvosanoihin:
arvos. alaraja pist. 1 15 2 18 3 22 4 25 5 28
Yhteenlaskutaulukko:
30% 45% 60% 75% 90% 105% -- demoprosentti ylitt�� 3 4 5 6 7 8 -- demoista pisteit� tentti 12 15 16 17 18 19 20 14 17 18 19 20 21 22 16 19 20 21 22 23 24 18 21 22 23 24 25 26 [pistem��r� t�st� taulukosta] 20 23 24 25 26 27 28 22 25 26 27 28 29 30 24 27 28 29 30 31 32
Esimerkkej� arvosanoista (Nyt jopa enemm�n oikein lasketut...):
Puolet tenttipisteist� (kynnysarvo) ja 30% demoista (kynnysarvo) - 1 Puolet tenttipisteist� (kynnysarvo) ja 45% demoista - 1 Puolet tenttipisteist� (kynnysarvo) ja 60% demoista - 1 Puolet tenttipisteist� (kynnysarvo) ja 75% demoista - 2 Puolet tenttipisteist� (kynnysarvo) ja 90% demoista - 2 T�ydet tenttipisteet ja 30% demoista (kynnysarvo) - 4 T�ydet tenttipisteet ja 45% demoista - 5 T�ydet tenttipisteet ja 60% demoista - 5 T�ydet tenttipisteet ja 75% demoista - 5 T�ydet tenttipisteet ja 90% demoista - 5
Uskon, ett� em. arvostelu tukee sek� aktiivista seuraamista "pienen pakon" alla ett� my�s mahdollisuutta p�te� pelk�n tentin avulla. Vitonen edellytt�� joka tapauksessa v�hint��n 45% demoista viikottain!
Osaat jo ohjelmoida?
Mik�li jo mielest�si osaat kurssin asiat, tarjotaan "oikotie" eli voit yritt�� ripe�sti syyskuussa tehdyll� harjoitusty�ll� ja tentill� n�ytt�� tasosi, saada Ohjelmointi Ykk�sen suoritetuksi pois alta ja keskitty� loppusyksyn ajan itsellesi t�rke�mpiin kursseihin (ja antaa t�ll� johdantokurssilla tilaa oikeille aloittelijoille).
K�ytt��ksesi oikotiet�: Ihan ensimm�iseksi ilmoittaudu henkil�kohtaisella s�hk�postilla (nieminen@jyu.fi) halukkaaksi! Kerro postissa lyhyesti, mik� on ohjelmointikokemuksesi ja mik� on tausta sille, ett� uskot jo osaavasi. Oikotieopiskelijoille tehd��n oma erillinen s�hk�postilista, jonka kautta tiedotetaan. Tavoite on kaksijakoinen:
- Jos harkka ja tentti onnistuvat syyskuun aikana, on kurssi l�pi ja arvosana annettu; voi alkaa ottaa jo edistyneempi� kursseja, joiden esitieto on Ohjelmointi 1. Oikotieporukka on ensimm�inen, joka tulee saamaan harjoitusty�aiheen. Se tulee olemaan noin 20% vaativampi kuin muilla.
- Jos taas oikotie osoittautuukin ylivoimaiseksi, voi palata normaaliin kurssimuotoon, joka kest�� joulukuulle saakka. T�m�n vuoksi kaikki, my�s oikotielle halukkaat, joutuvat tekem��n alkup��n demot aina siihen asti kunnes oikotie on k�yty l�pi (tai sitten ei ...).
Opinto-oppaassa m��ritelty sis�lt�
Alla lueteltujen asioiden oppiminen on kurssin tavoite. T�ss� on avattu k�sitteet hieman tarkemmalle tasolle kuin mit� opinto-oppaaseen mahtuu. Sanat lienev�t vieraita, mutta juuri siksih�n t�m� kurssi pidet��n, ett� asiat tulevat tutuiksi ensimm�ist� kertaa! Sen verran vaan varoitan, ett� asioita k�yd��n l�pi paljon. Niit� ei opi viikossa tai parissa kukaan eik� mill��n konstilla. L�ht�taso oletetaan nollaksi, mutta kahdessa viikossa ehdit��n rakentaa taso jos toinenkin eteenp�in! Viel� varoitan, ett� "kaikki liittyy kaikkeen", joten t�ss� tapauksessa "k�rryilt� putoamisen tunne" ei v�ltt�m�tt� tarkoita k�rryilt� putoamista, vaan sit� ett� t�ytyy viel� hetki tai pari funtsia ja oppia lis��... ja kysy�!!! Koska kaikki liittyy kaikkeen, lienee pakko aina silloin t�ll�in j�tt�� my�hemp��n luentoon asioita, joiden ymm�rt�minen vasta mahdollistaa p��syn syvemm�lle aiemman luennon asioihin. Eli T�RKEINT� ON: �l� luovuta ensimm�iseen vastoink�ymiseen! Sellainen todenn�k�isesti tulee, mutta se on harha :-).
- Ohjelmoinnin perusrakenteet. Mit� t�m� tarkoittaa:
- algoritmien mieless� muuttuja (primitiivi ja viite), per�kk�is-, ehto-, toisto- ja aliohjelmarakenne lis�yksineen sek� poikkeusten k�sittely;
- tietorakenteiden mieless� primitiivityypit, taulukot, merkkijonot, perusk�sitys tietueesta, perusk�sitys s�il�st�;
- oliokielen osalta luokan ja rajapinnan sek� olioinstanssin merkitys, idea apuohjelmakirjastosta ja APIsta.
- Johdatus algoritmeihin ja ongelmanratkaisuun.
- Peruskyky johtaa "ohjelmoinnin perusrakenteiden" avulla toimiva kuvaus yksinkertaisen teht�v�n suorittamiseksi tietokoneella, l�htien liikkeelle suomenkielisest� kuvauksesta.
- L�ht�kohta t�ll� kurssilla on systeemin mallintaminen asteittain tarkentuen, erityisesti toimintakuvauksen eli algoritmin osalta
- Perustietorakenteet ja niiden soveltaminen. (ks. "ohjelmoinnin perusrakenteet" edell�)
- Ohjelman suunnittelun perusteet. (ks. "Johdatus algoritmeihin ja ongelmanratkaisuun" edell�)
- Valmius yksinkertaisen Java-ohjelman toteuttamiseen. (tulee kaupan p��lle, koska edelliset opitaan k�ytt�en ty�kaluna Javaa; lis�ksi tutustutaan Javan API-dokumentaation lukemiseen)
Luennoitsijan uskomus on, ett� tavoitteeseen p��sy ilman kipuja edellytt�� joitakin perusteita tietyist� kaiken taustalla olevista asioista:
- Informaation tallennus digitaalisesti: koodaus ja esitysmuoto, tiedostot ja tietovirrat
- Syntaksi
- K��nt�minen ja suoritus
- Virtuaalikone, muistimalli (pino ja keko), suoritusmalli (kontrollin siirtyminen)
- (voi olla muutakin, mutta em. tuntuvat t�rkeimmilt�)
Viimeksi kajottu 2007-12-02.