8. tēma: Projektēšana. 3. stunda: Datu modeļi un UI plūsma.

Tavs šīs stundas izaicinājums: Izveidot "rentgena uzņēmumu" savai programmai. Pirms ķeries pie koda, Tev ir precīzi jāzina, kādi dati Tev būs nepieciešami un kā spēlētājs pārvietosies starp spēles lokācijām. Šodien mēs projektēsim datu struktūras un vizualizēsim spēles gaitu.

SR 2.4.5. (Izstrādā programmatūras projektējumu — shēmas un diagrammas)

Stundas mērķi:

Teorija: ER diagrammas un UI plūsma

Vides sagatavošana (Windows)

Diagrammas var zīmēt uz papīra, bet arhitektūras dokumentācijā mēs tās saglabāsim kā attēlus vai teksta shēmas.

  1. Atver pārlūkprogrammu un dodies uz diagrams.net (agrāk Draw.io).
  2. Izvēlies "Create New Diagram" -> "Blank Diagram".
  3. Sagatavo savu projekta mapi CYOA_Arhitektura, kurā saglabāsi eksportētos attēlus.

Praktiskie uzdevumi

1. solis (Vienkāršs): "Būtību saraksts"

Identificē visus datus, kas Tavam dzinējam būs jāpārvalda.

  1. Failā PRASIBAS.md izveido jaunu sadaļu "Datu modelis".
  2. Uzskaiti vismaz 3 būtības (piem., Speletajs, Lokacija, Prieksmets).
  3. Katrai būtībai pieraksti vismaz 3 atribūtus (piem., Lokācijai: ID, Teksts, Mērķa_ID).
Sagaidāmais rezultāts: Saraksts ar skaidri definētiem datu laukiem, kas būs pamatā CSV faila kolonnām.

2. solis (Viduvējs): "ER Diagrammas izveide"

Vizualizē saites starp datiem, izmantojot diagrams.net.

  1. Izveido ER diagrammu, kurā attēloti iepriekšējā solī definētie objekti.
  2. Savieno tos ar līnijām. Piemēram: Spēlētājs ---> Lokācija (saite: "atrodas").
  3. Eksportē diagrammu kā .png failu un saglabā to savā projekta mapē.
Sagaidāmais rezultāts: Attēla fails datu_modelis.png, kas skaidri parāda sistēmas uzbūvi.

3. solis (Padziļināts): "Spēles plūsmas Wireflow"

Projektē lietotāja saskarnes loģiku – kā spēlētājs pārvietojas pa Tavu stāstu.

  1. Izveido jaunu diagrammu "UI Flow".
  2. Uzzīmē vismaz 5 lokācijas (mezglus) un savieno tās ar bultām atbilstoši izvēlēm.
  3. Iekļauj vismaz vienu "Ciklu" (spēlētājs atgriežas atpakaļ) un vienu "Beigu stāvokli".
  4. Eksportē šo shēmu kā ui_plusma.png.
Sagaidāmais rezultāts: Shēma, kas kalpos kā instrukcija rakstniekam, veidojot pasaule.csv failu.

Snieguma līmeņa apraksts (SLA)

Kritēriji 4-6 (Turpina apgūt) 7-8 (Apguvis) 9-10 (Padziļināti)
Datu modelis Būtības ir sajauktas ar darbībām; trūkst atribūtu. Skaidri definētas būtības un to galvenie atribūti. Pilnīgs ER modelis ar datu tipu norādēm (int, str, list).
ER Diagramma Shēma ir nepārskatāma vai trūkst saišu starp objektiem. Diagramma vizuāli attēlo galvenās datu saites. Profesionāli noformēta ER diagramma, kas gatava izstrādei.
UI plūsma Shēma ir lineāra, bez izvēļu iespējām. Shēma parāda vairākus ceļus un lēmumu punktus. Sarežģīta plūsma ar nosacījumiem (piem., "ja ir atslēga").

Koda paraugs: Kā datu modelis izskatās kodā

# ER modeļa realizācija ar vārdnīcu struktūru:

datu_modelis = {
    "Speletajs": {
        "vards": "str",
        "pasreizeja_lokacija_id": "int",
        "inventars": "list"
    },
    "Lokacija": {
        "id": "int",
        "apraksts": "str",
        "izveles": {
            "A": {"teksts": "str", "merkis_id": "int"},
            "B": {"teksts": "str", "merkis_id": "int"}
        }
    }
}
Statuss: Projektējums pabeigts.
Atceries: Diagramma ir Tavs līgums ar sevi. Ja projektējums ir labs, koda rakstīšana būs vienkārša "tulkošana".
⬅ Iepriekšējā stunda Nākamā stunda ➡