Ohjelmointi 1 (C#, Jypeli), s 2022

TIMin käytöstä, avaa ja lue tämä jos et ole TIMin kanssa tuttu.

Jos jossakin on vielä vahingossa vuoden 2021 tai muuten rikkinäisiä linkkejä, niin ilmoita niistä kurssin keskustelusivulla.

Please to interact with this component.

Calendar

Työskentelytavat = lähi/etäopetus

Kurssin viikkorytmi koostuu luennoista, viikkotehtävistä (demoista), (pääte)ohjauksista sekä demojen palautuksista. Sitten on vielä harjoitustyö. Kaikkia noita voidaan tehdä lähi- tai etäopiskeluna. Kaikkeen tähän on syytä varata vähintään 15 tuntia/viikko.

  • Luennot ovat ma ja ti auditoriossa. Luentoja voi seurata myös Zoomilla tai katsoa niitä jälkeenpäin videoilta.
  • (Pääte)ohjaukset järjestetään Agoran mikroluokissa ja niissä harjoitellaan tekniikan käyttöä ja kun viikon tehtävät on tehty, voi myös tehdä demoja. Ohjauksissa on paikalla ohjaajia ja niissä on mahdollista kysellä apu tekniikasta, demoista ja harjoitustyöstä. Ohjauksia pidetään myös Zoomissa etäversioina. Alkukurssin ohjauksissa on pakollisia tekniikkatehtäviä.
  • Demoja tehdään periaatteessa omalla ajalla, mutta niitä voi tehdä myös ohjauksissa sen jälkeen kun tekniikkatehtävät on tehty.
  • Demojen palautuksissa (maanantaisin 2 valinnaista ryhmää, ei ole pakko käydä samassa ryhmässä koko kurssin ajan) katsotaan "oikeat" vastaukset ja sitten omat vastaukset pitää korjata oikeiksi. Kuten luennot, demojen käsittely pidetään auditoriossa ja voi osallistua Zoomilla tai katsoa videoilta.
  • Harjoitustyötä tehdään yksin tai pienryhmissä omaan tahtiin noudattaen annettua aikataulua. Aikataulun puitteissa työtä näytetään ohjaajille paikanpäällä tai Zoomissa etänä. Palauttamalla HT vaiheita ajoissa, saa Bonus-pisteitä.

Opetustapahtumiin ilmoittaudutaan ensimmäisen luennon jälkeen siellä annettujen ohjeiden mukaan.

Opiskelusta

  • tee ajatuksen kanssa demojen harjoittelutehtäviä
  • lue kerran luentomoniste läpi niin tiedät missä on mitäkin
  • lue ennen luentoa monisteesta aina vastaava kohta (merkitty luentojen sivulle)
  • KYSY kurssin keskustelussa
  • jos epäselviä demotehtäviä, laita kommentti viereen
  • bookamarkkaa (vasen yläkulma ja klemmari) itsellesi tärkeät sivut
  • älä seuraa jokaista linkkiä
  • jos luennolla ei näe, voi sielläkin pitää Zoomin auki
# aikajana
Tiedot päivittyvät tunnin välein. Viimeksi:

Please to interact with this component.

{}


Viikko 35
24.8.
36
31.8.
37
7.9.
38
14.9.
39
21.9.
40
28.9.
41
5.10.
42
12.10.
43
19.10.
44
26.10.
45
2.11.
46
9.11.
47
16.11.
48
23.11.
Luennot 1&2 3&4 5&6 7&8 9&10 11&12 13&14 15&16 17&18 19&20 21&22 23&24
Tärkeät ti: bonus
pe: HT1
Väli-
kysely
pe: Debug-
näyte

ti: bonus
pe: HT2
ti: bonus
pe: HT3
Tentti
pe: 2.12
dh 1 2 3 4 5 6 7 8 9 10 11 Summa %
Demot

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Korjattu

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Tunnit

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Please to interact with this component.

{}

Luentojen ja demonpalautusten aluksi aina osoitteeseen : r.jyu.fi/ohj1 ja sieltä mainittuun Zoomiin.
Ohjausten (=pääteohjaus) aluksi avaa aina ko. viikon pääteohjaussivu yllä olevasta menusta.

Kurssista

# kuva1

1. What you need to do to pass this course

  • At least 40% of the weekly assignments (demot in Finnish) and at least two per week.
  • Pass the debugging test. This test is done during the supervised demo sessions by the end of exercise round 8.
  • Complete the course assignment. This is an extensive programming project which will strengthen your programming skills and brings together the main points taught during this course. Usually students make a small game using Visual Studio and the Jypeli physics library.
  • Pass the final exam.
  • Two add on courses can be added to this course by expandging on the course assignment (max sum 5 p)
  • In English: Course synopsis (short description of contents and objectives)

Pääaineen (DI, mutta pätee muihinkin) tavoitteet:

  1. Riittävä ymmärrys nykyisestä IT:stä ja sen toteutuksesta
  2. Valmius jatkuvaan oppimiseen ja kehittymiseen
  3. Ongelmanratkaisutaito
  4. Yhteistyö sidostahojen kanssa, projektimainen työskentely
  5. Tarve- ja käyttäjälähtöisyys
  6. Kyky elää perinnejärjestelmien, epätäydellisyyden ja epävarmuuden kanssa
  7. Kyky vastata siitä, että mitä tekee on oikein ja toimivaa (VL lisäys)

2. By the end of this course a student is expected to know the following

  1. Explain the basic principles of structured programming
  2. Find suitable algorithms, data types and structures for simple problem-solving
  3. Design and create small programs using C# programming language and tools associated with it

3. About the translations

Note! most of the links will take you to pages that are all in Finnish because we have just started to translate this course into English and haven't got that far yet. If you read an English page and all of a sudden there is Finnish among the English please send an email to the teacher so that we can fix it fast. If you come across some grammatical errors or if you don't understand what the English sentence is trying to convey, please leave a comment for that paragraph. You can add comment and notes by clicking the blue line that appears at the left side of the paragraph when you hover over it with a mouse. The comments will appear at the right side of the paragraph. Make the comments seeable by everyone so that we can read them and fix the text.

How to get to the English pages

If you end up on a Finnish page and want to know if there is a translation available of it check the top right corner of the menu bar and see if there is en - fi links there. If you click the en link you get to the English version of this page. If the link is there but you cannot access it the translation of this page is not finished yet and you can try it again later.

Image
Image

Kurssin aikana sinun on tarkoitus oppia seuraavia asioita (osaamisen taso sovelletulla Bloomin asteikolla: 1=muistaa, 2=ymmärtää, 3=osaa soveltaa, 4=osaa analysoida, 5=osaa arvioida, 6=osaa luoda)

Siirrä alla osaamisesi (punainen pallukka) aina sitä vastaavalle kohdalle. Keltainen ruutu on tavoite johon tulisi päästä kurssin lopuksi. Ruksaa ensin muokkaa.

# goaltable2

Please to interact with this component.

Osattava asia123456
Rakenteisen ohjelmoinnin perusajatus o
Algoritminen ajattelu o
C#-kielen perusteet o
Peräkkäisyys o
Muuttujat o
Aliohjelmat ja funktiot o
Parametrin välitys o
Ehtolauseet o
Silmukat o
Taulukot o
Tiedostot ohjelmasta käytettynä o
Olioiden käyttö o
Yksikkötestit (TDD) o
Debuggerin käyttö o
Lukujärjestelmät, ASCII-koodi o
Rekursio o
Dokumentointi ja sen lukeminen o

Sisussa ilmoittautuminen

# miten-aloitan

5. Miten aloitan

  1. Ilmoittaudu Sisussa kurssille (syksyn 2022 luento-opetus, ks ohje edellä), muihin ryhmiin ei kannata ilmoittautua Sisussa, sillä ei ole kurssin kannalta merkitystä. Ryhmiin ilmoittaudutaan aikanaan TIMissä myöhemmin tulevilla ohjeilla. Luennoille voit ilmoittautua Sisussa, niin saat ne kalenteriin ja näin tulee säännöllinen rytmi. Ryhmistä:

    • ilmoittaudu molempiin luentoryhmiin Luento 1 ja Luento 2. Luennot ovat auditoriosssa, mutta niitä voi seurata myös Zoomilla (salasana ohj1) ja niistä tulee videotallenne. Jos katsot vain videotallenteen, ei välttämättä luennoillekaan kannata ilmoittautua Sisussa.
    • demoryhmistä valitset yhden (siis aikanaan TIMissä), voit käydä eri viikoilla eri ryhmissä
    • pääteohjausryhmistä 1-n kpl sen mukaan paljonko tunnet tarvitsevasi apua (yleensä 1 tai 2 viikossa). Valinta tehdään kullekin viikolle erikseen TIMissä ko. viikon ohjausdokumentissa.
    • PP-ryhmä (= Pahasti Pihalla) älä vielä valitse, koska et voi tietää miten edistyt kurssilla. Itsestään epävarmatkin pärjäävät kun rupeavat kovasti töihin!
  2. vastaa esitietokyselyyn

  3. tee esi-demotehtävät. Erityisesti Robotti on extrahyödyllinen.

  4. lataa kurssin työkalut

  5. Lähde heti alusta sillä asenteella, että opettelet ymmärtämään, et oppimaan ulkoa satunnaisia komentoja.

# opiskelu
# Mitpainettuamateriaaliahalua
# tableForm_table

Please to interact with this component.

5.1 Kurssin 1. sähköposti. Avaa tästä jos et ole jo lukenut.

# kurssinaluksi

6. Mitä teen kun kurssi alkaa

Seuraava koskee sekä lähi- että etäopiskelijoita:

  1. Osallistu tai katso 1. viikon luennot: luento 1 ja luento 2. Aloita aina kirjautumalla luennolle linkistä r.jyu.fi/ohj1 ja sieltä klikkaa Zoom-linkkiä ja siirry kyseisen luennon linkistä itse luennon TIM-sivulle.
  2. Lue Luentomonisteesta vähintään luennoissa mainitut kohdat ja merkitse niitä luetuksi klikailemalla punaisia pois.
  3. Tee 1. viikon pääteohjaukset
  4. Tee 1. viikon demotehtävät ma klo 11:00 mennessä!
  5. Osallistu tai katso 1. viikon demojen palautukset
  6. Korjaa omat tehtäväsi niin, että Tauno ja T1-T6 tuottavat vähintään 7p.
  7. Jatka kohdasta 1. seuraavan viikon tiedoilla.
  8. Tee harjoitustyötä muiden vaiheiden ohella sopivasti.
Ohjelmointi 1 -kurssin viikkorytmi joka toistuu 11 viikon ajan
Ohjelmointi 1 -kurssin viikkorytmi joka toistuu 11 viikon ajan
# kurssipvm

Kurssin tärkeät päivämäärät

Jos pvm perässä on (!), niin kyseessä on eksakti päivämäärä Muut ovat takarajoja, joissa asia kannattaa hoitaa jo ennen takarajaa. HT1-HT3 ohjaus/näyttöajat varataan tuntiopettajilta.

  • Lataa aikataulu omaan kalenteriin
  • Jos haluat lisästä Google tai Outlook kalenteriin, niin luo uusi kalenteri "URL-osoitteesta/Internetistä" vaikkapa nimelle Ohj1 ja lisää sinne osoitteeksi:
    • https://tim.jyu.fi/print/kurssit/tie/ohj1/v/2022/syksy/ical.ics?file_type=ics
    Muista myös laittaa kännykästä synkronointi päälle tälle kalenterille!
# tarkeatpvm

(*) Periaatteessa HT pitäisi olla valmis pe 18.11., mutta koska ohjausvoimat ovat rajallisia, joudumme venyttämään sen näyttöä/tarkastusta pidemmälle jopa joulukuulle asti.

7. Important now!

If you cannot find something, see extra material.

WARNING: It is rather easy to do the tasks in TIM alone but despite of this you need to learn how to do them using the real tools (like Visual Studio and Xamar)! Especially the debugger should be used already in the beginning.

Kurssin arvolause tulee summasta demohyvitykset + tentin pisteet + HT bonukset. Tentin max pisteet ovat 24. Arvolause 5: summa 26,..., 1: summa 12. Katso myös tentti.

Normal way to complete this course:

# takaportti

A backdoor if one cannot pass the final exam:

  • If you don’t pass the final exam (or you didn’t take it) you can still pass this course with grade 1 (out of 5) assuming that you fulfill ALL of the following conditions:
    • You have done demo tasks at least 5per week and each week you have done at least two of the marked star (*) tasks
    • You have passed the debug test
    • Project work is nearly finnished and approved by one of the assisting teachers in an oral examination
    • You're on this course for the first time

Distance learning:

Special cases (high school students (3op) programming1 or 2 is done or other previous experience):

# yhteystiedot

9. Yhteystiedot

12. Studying on this course

Recommended way of studying:

  • On the monday lecture the demo tasks for this week are handed out. You should read through them right away and even try and do them before tuesdays lecture. This way you know what things on the lecture are important and what you should be learning this week.
  • There are a few special tasks that are done at the beginning of the supervised demo classes. These tasks teach technical aspects which are useful for doing the actual demos and the course assignment. After these tasks are done you can start doing the demo tasks. There are tasks for the first six weeks of this course and after this only demos and course assignment is done during the supervised classes.
  • After you have handed in the demo answers it is good to go to the demo return session on Monday to see what you “should have” done. After you have done a task it is easier to see what other ways the same task could have been done. Also even though you might think that your answer is correct it might not be the best possible answer.
  • You should do the Ville tasks beforehand this way you can find out what you should be learning on the lectures. Then you can do them again during the demos.
  • It is recommended to read the lecture notes ahead. This way you are more familiar with the lectures topics.
  • You should do the course assignment little each week so that it will be done by the beginning of December. The course assignment is challenging for a beginner so if you start too late you will have difficulties finishing on time.
  • When you run into problems ask for help! You can use the course’s email list, come to the supervised demo classes, contact directly one of the course’s teachers by email or by meeting them or come to lectures and ask question there.
  • Experience the feeling of success. But also be ready to learn how to do things better!

13. For teachers

Students can ignore this

14. Games done on previous courses

# Video1
# Video3
# Video2

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.