www.cse.chalmers.se/edu/course/TIN213/

Göteborgs Universitet, Chalmers tekniska högskola, Institutionen för Data- och Informationsteknik

 

Programmeringsteknik, ht 2017

TIN213

Senaste nytt

Allmän information

Ansvariga

Kurslitteratur

Kursinnehåll

Övningar

Laborationer

Schema

Planering

Examination

Övningstentamen, del A, med lösningar

Övningstentamen, del B, med lösningar

Hemsida för boken Java direkt

Dokumentation av Java API på webben

Hur man laddar ner och installerar Java SDK på sin egen dator (Windows) 

Här kan du hämta texteditorer och programutvecklingssystem (IDE) för Windows

Exempel från föreläsningar

Demonstrationsexempel från kursboken

Andra demonstrationsexempel


Allmän information

Fortlöpande information om kursen ges på denna webbsida. Innehållet kan förändras. Det är därför viktigt att man besöker den regelbundet.

Det finns en planering där man för varje lektion kan se vilka avsnitt och övningar som skall behandlats. För de olika laborationerna gäller att de skall vara inlämnade senast vissa datum. Uppgifter om detta ges i de separata PM som beskriver laborationerna.

Ansvariga

Kursledare:

Jan Skansholm, skansholm@chalmers.se

Handledare:
 
Patrik Franz, gusfranpa@student.gu.se
Eric Guldbrand, ericgul@student.chalmers.se
Adam Jenderbo, gusjendad@student.gu.se
Edvin Meijer, edvinme@student.chalmers.se
Richard Sundqvist, richard.sundqvist@live.se
Daniel Willim, willim@student.chalmers.se
 

Kurslitteratur

Skansholm, Java direkt med Swing, Studentlitteratur.
OBS! Om du inte har boken tidigare så skaffa 8:e upplagan
.                                                 
Boken finns på Cremona på Chalmers och hos de vanliga nätbokhandlarna.

Det finns en webbsida som hör till boken. Där finns bl.a. diverse hjälpklasser, programexempel samt lösningar till alla övningsexempel.

 

 

 

 

 

Kursinnehåll

Du får lära dig hur man programmerar i ett objektorienterat programspråk. Språket Java med det grafiska biblioteket Swing skall användas. Själva språket Java är kanske inte så komplicerat, men det finns en mycket omfattande samling av standardklasser vilka man brukar använda sig av. Vi kommer inte att hinna gå igenom alla dessa och alla delar av språket, utan får koncentrera oss på det som är viktigast och mest grundläggande. 

Kursen har en utpräglat praktisk inriktning. Undervisningen består av föreläsningar, övningar och laborationer. Det är relativt få föreläsningar och övningar och du som läser kursen måste räkna med att arbeta mycket på egen hand.

Här följer en sammanställning av vilka avsnitt i kursboken som ingår.
(Denna gäller om du har den 8:e upplagan av kursboken.)

Delkurs A

Kapitel 1.       Ingår, utom 1.15
Kapitel 2.       Ingår i sin helhet
Kapitel 3.       Ingår, utom 3.11.2
Kapitel 4.       Ingår i sin helhet
Kapitel 5.       Ingår, utom 5.4.2. Avsnitt 5.6 kan läsas översiktligt.
Kapitel 9.       Ingår, utom 9.3, 9.5 och 9.6.
Kapitel 11.     Ingår utom 11.5.
Kapitel 16.     Här ingår bara avsnittet 16.4.2
Kapitel 17.     Avsnitten 17.2 - 17.5.3 och 17.6 - 17.7.3 ingår.
                   
  Övriga avsnitt utgår men kan betraktas som "överkurs".
Kapitel 19.     Här ingår endast avsnitt 19.4.
                          Avsnitten 19.1, 19.2 och 19.3 kan läsas kursivt.

Delkurs B

Här tillkommer följande avsnitt:

Kapitel 6.       Avsnitten 6.1 - 6.4 och 6.6 - 6.7 är centrala.
                     Avsnitten 6.5, 6.8 - 6.14 och 6.16 kan läsas översiktligt. Resten utgår.
Kapitel 7.       Ingår, utom 7.4
Kapitel 8.       Här ingår endast 8.1.1-.8.1.4.
                      Dessutom bör man läsa avsnitt 8.4 översiktligt.
Kapitel 10.     Ingår, utom 10.9, 10.11 och 10.12.
                     Avsnitt 10.13 innehåller ett exempel och kan läsas översiktligt.

Kapitel 12.     Här ingår 12.1-12.4 samt 12.7. Avsnitt 12.5 kan läsas översiktligt.
                    Materialet i avsnitt 12.10 behövs i Sudoku-laborationen (se nedan).
Kapitel 13.     Här ingår bara 13.1 och 13.2.
Kapitel 14.     Här ingår bara avsnitten 14.1.1 - 14.1.3 och 14.7.
Kapitel 15.     Utgår helt, men kan läsas om man är intresserad.
Kapitel 18.     Utgår helt

Övningar

Övningarna sker i mindre grupper.

Vid övningarna är det meningen att man skall konstruera enkla datorprogram. Detta görs dels av övningsledaren (på tavlan) och dels av studenterna själva (vid datorn eller med papper och penna). Övningsuppgifterna är främst hämtade ur kursboken. Lösningar till uppgifterna finns på bokens webbsida

Laborationer

I kursen ingår tre obligatoriska s.k. laborationer. Det finns också en fjärde, frivillig laboration. Laborationerna sker vid dator och utförs i grupper med två studenter i varje grupp.  Laborationerna beskrivs i separata PM.

punkt

Laboration nummer 1 (PM till laboration 1) är egentligen en enkel "uppmjukning" inför de följande laborationerna. I denna får du möjlighet att praktiskt lära dig hur man kompilerar och kör Javaprogram.  Laborationen ger också träning i grundläggande programmeringsteknik. Laboration nummer 1 skall vara klar och lämnas in senast 2017-11-17.
 

punkt

Laboration nummer 2 (PM till laboration 2) handlar om konstruktion av en enkel klass. Denna laboration hjälper dig att förstå de grundläggande objektorienterade begreppen. Laboration nummer 2 skall vara klar och lämnas in senast 2017-12-15.
 

punkt

Laboration nummer 3 (PM till laboration 3 ) är lite mer komplicerad. Du kan välja mellan två olika uppgifter. Båda går ut på att skriva ett spel med grafiskt användargränssnitt. Laboration nummer 3 skall vara klar och lämnas in senast 2018-02-16.
 

 

punkt

Laboration nummer 4 (PM till laboration 4) (filer till laboration 4) är frivillig. Den går ut på att simulera elektriska grindar.
 

Om man fått retur på någon laboration måste man lämna in en rättad version senast en vecka efter det att man fått returen. För laborationerna 1-3 gäller att sista dag för godkännande av laborationen är två veckor efter sista inlämningsdag.

Inlämning av laborationer sker med hjälp av systemet Fire som man kan nå med hjälp av en vanlig webbläsare.
För att lämna in laborationer går man till Fire-startsidan för denna kurs. (Om du får meddelandet att det uppstått ett problem med webbplatsens säkerhetscertifikat kan du lugnt gå vidare, trots att det inte rekommenderas.)
Användarmanual för studenter finns i Fire - Student Documentation.

Det är mycket viktigt att man håller inlämningstiderna. Fire-systemet blockerar nämligen automatiskt inlämning och godkännande efter de angivna datumen. Det går alltså inte att lämna in laborationer för sent.

Schema 

Schemat för kursen hittar du i TimeEdit.

Det är inte obligatorisk närvaro vid de schemalagda laborationstillfällena. Man får naturligtvis även arbeta med sina laborationer vid andra tider om man hittar någon ledig dator. Det är också tillåtet att konstruera sina program på någon annan dator, t.ex. en PC som man har hemma.

Examination

För att bli godkänd på kursen måste man dels ha lämnat in samtliga obligatoriska laborationer och fått dem godkända och dels blivit godkänd på båda deltentorna. På deltentorna sätts graderade betyg. Maximal poäng är 30. För betyget tre krävs 15 poäng, för betyget fyra 20 poäng och för betyget fem 25 poäng. Slutbetyg för hela kursen blir heltalsdelen av medelbetyget på de båda deltentorna.

Tillåtet hjälpmedel på tentamen är kursboken Java direkt med Swing (valfri upplaga).  Även någon annan kursbok kan få användas efter godkännande av examinator. Det ska i så fall anmälas minst två veckor i förväg. Inga kalkylatorer är tillåtna.

Datum för tentamen kan man få fram genom att ange kurskoden TIN213 på sidan www.student.chalmers.se/sp/examdates_list. Om informationen inte finns där så se senaste nytt.

Tentamen del A 2017-12-16 med lösningar.
Tentamen del B 2018-03-03 med lösningar.
Tentamen del A 2018-04-06 med lösningar.
Tentamen del B 2018-06-08 med lösningar.
Tentamen TIN212 2018-06-08 med lösningar.
Tentamen del A 2018-08-24 med lösningar.
Tentamen del B 2018-08-28 med lösningar.
Tentamen TIN212 2018-08-28 med lösningar.