|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- * Jeg synes oppgaven gikk greit.
- * Jeg vet ikke hvor lang tid jeg brukte paa oppgaven.
-
- # Antakelser:
-
- Jeg har gjort noen antakelser om ting som ikke var helt klart i oppgaven:
-
- * Jeg antar at det i parenteser i datafila ikke skal ha noen betydning for
- programmet, og at verdiene alltid kommer i samme rekkefolge. Dette er
- fordi det gjor parsingen mye lettere, og fordi det er noen tegn paa at
- det er skrevet for mennesker og ikke datamaskiner
- ( e.g "avtalenr / 0 hvis ingen avtale", og Resepter har "hvit/blå" (med
- norske tegn, ikke utf-8 engang), mens innholdet alltid bruker "hvit" og "blaa".
-
- * I oblig 4 fikk vi beskjed om aa ha IDer som automatisk teller opp i ting som
- legemidler og resepter, men filformatet gir IDen direkte.
- Jeg har lost dette ved aa sette IDen til det som er gitt i fila,
- men holde styr paa den storste IDen, og bruke den storste IDen + 1 naar
- noe settes inn manuelt.
- Dette hadde vaert et problem hvis ting skulle kunne slettes, men det skal
- det ikke. Alternativet hadde vaert aa skrive inn alle IDer manuellt, eller aa
- utvide filformatet til aa ta vare paa den storste IDen, slik at sletting ikke
- hadde blitt et problem.
-
- # Tillegsinformasjon:
-
- ### Her er kommentaren jeg skrev i Oblig7.java for sporringer om narkotisk
- ### misbruk, lagt til fordi det kan vaere vanskelig aa finne i koden:
-
- /*
- * Hva bor gjores hvis disse sporringene utfores veldig ofte?
- *
- * Disse sporringene er veldig tunge, fordi
- * vi maa gaa igjennom alle legemidler for hver resept
- * for baade hver lege og hver pasient.
- *
- * Hvis disse sporringene blir utfort veldig ofte, bor vi finne
- * en maate aa gjore at de gaar raskere. Her er noen maater
- * en kunne gjort det paa:
- *
- * 1. Cache resultatene.
- * Saa lenge vi ikke endrer paa legemidler, resepter, leger,
- * eller personer, vil resultatene alltid vaere det samme.
- * Det er derfor ikke noe vits i aa kalkulere alt paa nytt
- * hver gang; en kunne ha lagret resultatet, og kun vist frem
- * det lagrede resultatet hvis ingenting har endret seg.
- * Viktig aa passe paa at det lagrede resultatet slettes
- * slik at det rekalkuleres hver gang noe viktig endrer seg.
- *
- * 2. Bruke en database.
- * Relasjonelle databaser er laget for denne typen sporringer.
- * Aa gaa over fra et hjemmesnekret filformat til en form for
- * relasjonell database hadde nok vaert den beste losningen
- * hvis dette hadde vaert et ekte program for en ekte klient.
- * Naar en forst har gaatt over til en relasjonell database
- * finnes det ogsaa en del optimaliseringsteknikker
- * (indekser, etc.) som jeg ikke gaar in paa her.
- */
-
- ### En gjennomgang av hvordan en oppnaar det oppgaven spor om:
- ### Aa skrive "hjelp" gir en kortere versjon av alle kommandoene.
-
- * Lese all data fra fil: Dette skjer naar programmet starter.
-
- * Skrive alle data til fil: Dette skjer automatisk hver gang noe endrer seg.
-
- * Skrive ut all data:
- 1. Skriv "skriv ut"
-
- * Opprette og legge til et nytt legemiddel:
- 1. Skriv "nytt legemiddel"
-
- * Opprette og legge inn en ny lege:
- 1. Skriv "ny lege"
-
- * Opprette og legge inn en ny person:
- 1. Skriv "ny person"
-
- * Opprette og legge inn en ny resept:
- 1. Skriv "ny resept"
-
- * Hente legemiddel paa en resept:
- 1. Skriv "hent legemiddel"
-
- * Skriv ut hvor mange vanedannende resepter som finnes totalt:
- 1. Skriv "antall resepter"
- 2. Skriv "b", for vanedannende
- 3. Skriv "*", for alle steder
-
- * Skriv ut hvor mange vanedannende resepter som finnes til personer i Oslo:
- 1. Skriv "antall resepter"
- 2. Skriv "b", for vanedannende
- 3. Skriv "oslo"
-
- * For en gitt person, skriv ut alle dens blaa resepter:
- 1. Skriv "vis resepter til person"
- 2. Skriv inn ID eller fodselsnummer
- 3. Skriv inn "blaa"
-
- * For en lege med et gitt navn, skriv ut alle legens resepter etc:
- 1. Skriv "vis resepter til lege"
- 2. Skriv legens navn
- 3. Skriv "mikstur"
-
- * For aa finne misbruk av narkotika:
- 1. Skriv "finn narkotisk misbruk"
|