MDI/Interaktiondesign | MDI-projekt större, 10p

 
 

Nyheter

  • 22/1 Kursstart: kl 9 i rum Simula

Kursbeskrivning

I denna kurs skall vi läras oss programmering, och vi skall göra det i det objektorienterade språket Java.

Allt arbete utförs i grupper om två.

Jag som kommer vara er handledare under kursen heter Markus Forsberg.
Kontakt via mail: markus@cs.chalmers.se
Telefon kontor: 031/772 1031
Besök: rum 2430, Matematiskt Centrum

Kurslitteratur

Kursboken finns att köpa på Chalmers bokhandel Cremona.
Priset på boken är 510 SEK.

Objects First With Java, A practical introduction using BlueJ.
David J. Barnes and Michael Kölling
Pearson Education Limited 2003
ISBN 0130 44929 6

Kurslitteraturen för algoritmer och datastrukturer.
Finns att köpa på bokus för 477 kr.

Data structures and Algorithms in Java
Michael T. Goodrich
Wiley, New York, UK, 2000
ISBN 0471383678

Programvara

Utvecklingsverktyg för java: Java(TM) 2 SDK, Standard Edition 1.4.1_01

Utvecklingsmiljö för java: BlueJ version 1.3.0 beta 1

Notera att det är en senare version av BlueJ än den som följer med på kursbokens CD-skiva. Jag upptäckte en mindre bugg i version 1.2.1 och 1.2.2.

Examination

För att bli godkänd (3:a) på kursen:
  • Få godkänt på alla obligatoriska projektuppgifter.
  • Få godkänt på alla obligatoriska uppgifter om algoritmer och datastruktur.
För högre betyg (4:a) tillkommer vissa extrauppgifter. Om dessa extrauppgifter och de andra uppgifter görs bra, är man en kandidat för en 5:a.

Projekt

I kursen kommer ni få ett antal projekt där ni två och två kommer att lösa små programmeringsprojekt.

Projekt Beskrivning Given källkod
1. Bildvisare Beskrivning -
2. Färgväljare Projektuppgift 2 Main.java
3. Spel Projektuppgift 3 Game.java
Board.java
4. Textbaserat äventyrsspel Projektuppgift 4 -
5. Robotsimulator Projektuppgift 5 robocode-setup.jar
(Robocode's hemsida)
6. Rävar och kaniner Projektuppgift 6 -

Schema

Vecka
Onsdag 9-12 (Simula)
Fredag 14-17 (Ny lokal! Simula)
 Vecka 4
(20-24 Jan)
Introduktionsmöte
Kursinformation
Kapitel 1: Object and Classes
 Vecka 5
(27-31 Jan)
Kapitel 2: Understanding Class Definitions Kapitel 2: Understanding Class Definitions
 Vecka 6
(3-7 Feb)
Kapitel 3: Object Interaction Kapitel 3: Object Interaction
(Ingen handledning)
 Vecka 7
(10-14 Feb)
Kapitel 4: Grouping objects
Deadline: Projekt 1
Kapitel 4: Grouping objects
 Vecka 8
(17-21 Feb)
Kapitel 5: More sophisticated behavior Kapitel 5: More sophisticated behavior
 Vecka 9
(24-28 Feb)
Kapitel 5: More sophisticated behavior Kapitel 5: More sophisticated behavior
 Vecka 10
(3-7 Mars)
Kapitel 6: Well-behaved object
Deadline: Projekt 2
Kapitel 6: Well-behaved objects
 Vecka 11
(10-14 Mars)
Ingen handledning Ingen handledning
 Vecka 12
(17-21 Mars)
Kapitel 7: Designing classes Kapitel 7: Designing classes
 Vecka 13
(24-28 Mars)
BlueJ 8: Improving structure with inheritance
ADT 5: Vectors, Lists, and Sequences
Deadline: Projekt 3
BlueJ 8: Improving structure with inheritance
ADT 5: Vectors, Lists, and Sequences
 Vecka 14
(31 Mars-4 April)
BlueJ 9: More about inheritance
ADT 6: Trees
BlueJ 9: More about inheritance
ADT 6: Trees
 Vecka 15
(7-11 April)
BlueJ 10: Further abstraction techniques
ADT 7: Priority Queues
BlueJ 10: Further abstraction techniques
ADT 7: Priority Queues
 Vecka 16
(14-18 April)
BlueJ 10: Further abstraction techniques
ADT 8: Dictionaries
Deadline: Projekt 4
Påsklov!
 Vecka 17
(21-25 April)
BlueJ 11: Handling errors
ADT 9: Search Trees
BlueJ 11: Handling errors
ADT 9: Search Trees
 Vecka 18
(28 April-2 Maj)
BlueJ 11: Handling errors
ADT 10: Sorting, Sets, and Selection
BlueJ 11: Handling errors
ADT 10: Sorting, Sets, and Selection
 Vecka 19
(5-9 Maj)
BlueJ 12: Designing applications
ADT 11: Text processing
Deadline: Projekt 5
BlueJ 12: Designing applications
ADT 11: Text processing
 Vecka 20
(12-16 Maj)
BlueJ 12: Designing applications
ADT 12: Graphs
BlueJ 12: Designing applications
ADT 12: Graphs
 Vecka 21
(19-23 Maj)
BlueJ 13: A case study
ADT 12: Graphs
BlueJ 13: A case study
ADT 12: Graphs
 Vecka 22
(26-30 Maj)
Deadline: Projekt 6  
 Vecka 23
(2-5 Juni)
Sista deadline!
Vid detta datum skall alla uppgifter
vara inlämnade och godkända.
Sommar!