KTH
2D1347
Objektorienterad Programkonstruktion
Nada
Laboration 1 Laboration 2 Laboration 3 Laboration 4 Laboration 5
Smalltalk Java C++ UML-verktyg Diverse

Laborationerna

På denna sida hittar du praktisk information rörande laborationerna. Varje laboration har fått ett eget avsnitt (ibland med länkar till andra sidor) och dessutom har vi lagt upp lite information om var man kan hitta information rörande olika språk och hjälpmedel för att rita UML-diagram. Informationen uppdateras efterhand som vi upptäcker nya behov. De flesta filer som behövs för kursen ligger i katalogen /info/smalltalk97.

Laboration 1

Ingen speciell information finns just nu tillgänglig

Laboration 2

Inga större problem rapporterade. Notera att för grunduppgiften kan du använda dig av en omslutande rektangel vid beräkning av containsPoint. I extrauppgiften ska du se till att containsPoint verkligen undersöker om punkten ligger innanför (gäller även polygoner och trianglar, polyline räcker det med att kolla skärning). Tips: om du drar en linje från en punkt ut till oändligheten kommer den att skära en polygon ett udda antal gånger om den ligger innanför polygonen, annars ett jämnt antal gånger.

Laboration 3

Vi har fått så mycket frågor rörande laboration 3 att vi har lagt upp ett eget dokument med förklaringar och förtydliganden.

Laboration 4

Inget att säga just nu.

Laboration 5

UML-modellen

UML-modellen kan läggas i Björns eller Magnus fack. Den måste vara rättad och godkänd innan det är dags att redovisa och du får räkna med minst 3 arbetsdagar för vårt rättningsarbete. Den rättade modellen läggs utanför Nadas expedition där den skall hämtas och sedan tas med till redovisningen. Några kommentarer. I objektmodellen så tag inte med mutatorer och inspektorer för dina attribut och tag inte med attribut som motsvaras av associatoner. Kom ihåg att ett tillståndsdiagram ritas för en viss klass.

Anmälan

Du skall anmäla dig via WWW för att få redovisa. Anmälningssidor hittar du via kursens hemsida.

Användargränssnitt till äventyrsspelet

Om du gör äventyrsspelet vill du troligtvis kunna mata in kommandon och visa utmatning från spelet på ett bekvämt sätt. Du hittar en klass, med ett antal exempel, på kursbiblioteket i katalogen /info/smalltalk97/labbar/lab5/fantasy. I README-filen finns information om hur det hela fungerar.

Exempel på grafik och interaktion

De exempel som Björn delade ut i samband med föresläsning 10 finns nu upplagda. Se även separat material som delades ut på föreläsningen och föresläsningsanteckningarna. Materialet finns på Nadas expedition.

Simuleringspaket för UML (OMT)

I katalogen /info/smalltalk97/labbar/lab5/OMT hittar du det simuleringspaket som behövs för några av labbarna.

Val av språk för laboration 5

Vi har fått flera frågor rörande vilka språk som får användas för att skriva programmen. Svaret är att du får använda vilket objektorienterad språk som helst (som vi behärskar). Om du inte väljer att använda Smalltalk måste du tydligt ange detta på UML-modellen eftersom det kan påverka laborationens svårighetsgrad och därmed betyget (både uppåt och neråt).

Java

Det finns gott om bra Java-material på WWW. Här är några trevliga länkar:

Smalltalk

En länk till företaget som tillverkar Smalltalkversionen som används i kursen.

C++

En av viktigaste bitarna i C++ utveckling är införandet av ett standardbiliotek med mallar för olika typer av behållare mm i form av mallar. Information om Standard Template Library (STL) finns upplagd hos SGI.

UML-verktyg

För att rita diagram, generera kod och hålla samman större objektorienterade projekt använder man lämpligen speciella programverktyg. På KTHs CD-skivor finns dels verktyget Select och dels verktyget Rational Rose (bantad version). Select innehåller bra hjälp om hur de olika diagrammen kan användas. Rational Rose är utvecklat hos företaget Rational. Där finns också en samling dokument om UML, bland annat den notationsdokumentation som ingår i kursbunten.

Diverse

Inte mycket just nu.

^ Upp till kursens hemsida.


Sidansvarig: <bjorne@nada.kth.se>
Senast ändrad 3 december 1997
Tekniskt stöd: <webmaster@nada.kth.se>