Mobiltelefonapplikationer med J2ME: Inlämningsuppgift 3

Utgå från din lösning på inlämningsuppgift 2. I den uppgiften fanns inget krav på att sakerna i komihåg-listan skulle finnas kvar om programmet avslutades, men det ska du lägga till i den här uppgiften. Programmet ska därför spara sina data i ett postlager ("record store").

Några tips

Man behöver inte följa de här förslagen.
  1. Studera lektion 9 om hur man lagrar data i ett postlager.
  2. Om du lyckades skilja hanteringen av uppgiftslistan i uppgift 2, till exempel i en särskild klass som heter Uppgiftslista, från resten av programmet, så är det huvudsakligen i den klassen som du behöver göra ändringar för att lagra data i postlagret.
  3. Av prestandaskäl bör din MIDlet fortfarande ha en intern lista med Uppgift-objekt. Vid start av programmet skapar man den listan genom att hämta de lagrade uppgifterna ur postlagret.
  4. Så fort man gör en ändring i uppgifterna (dvs lägger till en ny, tar bort en gammal, eller ändrar i en uppgift) så ska motsvarande ändring göras i postlagret.
  5. Man kan räkna med att inga andra program samtidigt ändrar i postlagret, så ditt komihåglisteprogram behöver inte kolla ifall saker plötsligt ändrats i postlagret medan programmet kör.
  6. En post i postlagret innehåller data i form av en byte-array, och man kan välja olika sätt att översätta mellan Uppgift-objekt och byte-arrayer. Ett sätt är att först göra en sträng av Uppgift-objektet, med fält som avgränsas till exempel av kolon. Om man vill kan man i stället laborera med ByteArrayOutputStream, DataOutputStream, ByteArrayInputStream och DataInputStream, som nämns på sidan 112 i kursboken, men det är krångligare.
  7. Lägg try-catch-block runt alla anrop till postlagret, och lägg en felutskrift med hjälp av en Alert i catch-grenen, så du ser om något gick galet, och i så fall vad.

Redovisning

Till den här uppgiften ska du lämna in två saker:

Rapporten ska innehålla följande:

Läs i Hur man skriver en rapport om grunderna för rapportskrivning. Om ni vill slippa höra mitt eviga gnäll om svenska språket, så undvik särskrivningar och satsradningar.

Skicka både rapporten och källkoden med e-post till läraren.

Föregående lektion | Lektionslista


Thomas Padron-McCarthy (Thomas.Padron-McCarthy@tech.oru.se), 4 januari 2006