Hoppa till huvudinnehållet
Institutionen för informationsteknologi

Laboration 5

Efter denna laboration ska du kunna hantera en mycket enkelt grafiskt användarsnitt i Java.

Labbarna ska får genomföras och redovisas i par. Enskilt arbete är tillåtet, men pararbete rekommenderas. Man får inte arbeta mer än två i samma grupp. Muntligt samarbete är tillåtet och rekommenderat.

Vi rekommenderar att du inför labben har skissat på papper på programkoden för de olika uppgifterna, eller att du har tänkt igenom uppgifterna i syfte att komma med förberedda frågor till Mayank.

Skriv så enkla program du kan, som uppfyller uppgiftsspecifikationen. Inga felkontroller på indata, rimlighetskontroller eller dylikt behövs.

Labbarna ska redovisas genom att programlistningar lämnas in till Jesper senast den 11/5 08:00 (onsdag morgon) för klasserna ni har skrivit. Bara en inlämning per grupp behöver lämnas in.

Följande regler gäller:

  • Programlistningarna för de klassen ska vara hophäftade till en bunt.
  • Varje program ska börja med tre kommentarrader (Skansholm s. 36 samt s. 613)
  • Den första raden ska innehålla ditt namn
  • Den andra raden ska innehålla deluppgiftens nummer
  • Den tredje raden ska innehålla en fullständig adress till programmet, läsbar för gruppen övriga. (Kolla gärna i ditt Unix-häfte)
  • I syfte att upptäcka eventuellt fusk, för den händelse sådant förekommer, förbehåller vi oss rätten att på olika sätt kontrollera att du själv har skrivit de program du lämnar in.

Uppgift

Studera uppgiften om kiosken, som den presenterades på föreläsningen. Koden från föreläsningen finns tillgänglig för nedladdning här. Din uppgift är att göra följande ändringar i programmet.

  • Den maximala betjäningstiden samt tiden till stängning ska läsas in från tangentbordet.
  • Kön ska skrivas ut efter det att varje kund är expedierad.
  • Inmatning och utmatning ska ske i dialogrutor med grafiska standardklasser. Du avgör själv din ambitionsnivå på denna deluppgift. Att rita bilder av kön är inte nödvändigt, även en mycket enkel lösning som använder Swingkomponenter och/eller awt-komponenter (som i Skansholms inledande kapitel) är tillräcklig. Du måste förmodligen slå i Skansholm, och är tvungen att söka på webben i Javas klassbibliotek.

Undvik komplicerade lösningar - en rimlig lösning är kodmässigt enkel och innehåller inga större begreppsmässiga svårigheter.

Genomförande

Labben ska genomföras och redovisas i grupper om två studenter. Muntligt samarbete mellan grupper är tillåtet och rekommenderat.Vi rekommenderar att du inför labben har knappat in programkoden för de olika metoderna, eller att du har tänkt igenom uppgifterna i syfte att komma med förberedda frågor till Jesper.

Eftersom denna lab kan bli mycket enkel, kan du kanske använda återstående tid att göra färdigt gamla labbar. Se i så fall till att du har förberett eventuella frågor på dessa.

Examination

Uppgiften ska redovisas genom en rapport som ska lämnas på papper till Mayank, i hans postfack, hus 1, plan 4, bredvid kopiatorerna.

Rapporten ska innehålla:

  • En av båda gruppmedlemmarna påskriven försättssida, som anger uppgiftens nummer (Laboration 5), era namn, personnummer och e-mail-adresser, samt fullständigt filnamn för programmet. Programfilen ska vara läsbar.
  • Kortfattad beskrivning av det användargränssnitt du har skrivit.
  • Kortfattad beskrivnng i egna ord av de använda klasserna och metoderna du har använt för ditt användargränssnitt.
  • En beskrivning av de metoder du har använt inkopierade från http://java.sun.com/j2se/1.4.2/docs/api/index.html.
  • Förslag till förbättringar av klassen.
  • Beskrivning av de svårigheter ni har haft under arbetets gång.
  • Programkod för klassen

Följande regler gäller:

  • Uppgiften ska senast lämnas in den 17 maj kl 08.00.
  • I syfte att upptäcka eventuellt fusk, för den händelse sådant förekommer, förbehåller vi oss rätten att på olika sätt kontrollera att du och din gruppkamrat själva har skrivit de program du lämnar in.
  • Rapporten får lämnas in på svenska eller engelska.

Uppdaterad  2005-05-08 15:25:04 av Jesper Bengtson.