UML ábrák és egyéb tervek

Képernyő terv

Egy sematikus ábra, ami csak arra szolgál, hogy bemutassa a leendő GUI kb hogy fog felépülni. Milyen elemeket fog tartalmazni. Persze ezt részletezni kell később.

(Ez nem az UML része, de a tervezéshez tartozik.)

Menü terv

A használati eset diagramm alapján könnyedén elkészíthető e menü, szinte csak végig kell menni az ábrában használt esetek mentén, kissé kiegészítve azokat.
A File menü Új menüpontjába azért helyeztem el új menüpontként az Üres háló menüpontot, mivel ez majd ki fog egészülni egy új elemmel, a rejtvény generálással, ami nem a diplomamunka része.
A menü összeállítása pedig egész egyszerűen ment, más windows alkalmazásokat vettem alapul. Nyilván átnéztem előtte más alkalmazások menürendszerét.

(Ez se UML.)

Használati eset 1.

Fő funkciók

Ez az ábra mutatja az elsődleges használati eseteket. Az ábrán látszanak a program fő funkciói, így egyszerűen ez az ábra alapul szolgálhat majd a menü elkészítéséhez.

Használati eset 2.

Értékmegadás folyamata

Ez a használati eset azt mutatja be, hogy mi történik azután, hogy a felhasználó beír egy értéket egy cellába, tehát megad egy értéket. Ennek a folyamatnak a többszöri végrehajtásával lehet megadni a feladványt a program számára.

Osztályokat felsoroló ábra

AZ ábra azt mutatja be, hogy a program milyen osztályokból épül fel. A mellette lévő ablakba pedig leírtam, hogy milyen funkciót látnak el az osztályok.

Látszik az, hogy a kb egy csoportba tartozó metódusok így egy osztályba kerülhetnek, ezáltal növelve az átláthatóságot.

Annyi változás történt, hogy a Menu osztály neve Frame lett, mivel bekerült az osztályba az ablak alján lévő lábléc és kezelő metódusai.

Az összes osztály kapcsolatrendszere

Ez az ábra a teljes osztályszerkezetet mutatja be. A kék téglalap jelzi, hogy az a program belépési pontja.

Az adatszerkezetek csoportban található 3 osztály az eredmények tárolásáért és kezeléséért felelős.

Osztály-diagram - program

Az ábrán látható, hogy a főosztály (SzudokuPI) hívja meg az összes többi osztály metódusait, így ez egy centralizált működésű program. A rule_ .. metódus voltaképp helyettesíti a 10 kereső algoritmust, a 3 pont helyébe a kereső függvény nevét kell helyettesíteni, csak a helymegtakarítás miatt van így összevonva.

A főosztály tartalmaz egy tömböt (screenCells), ami a játéktér cellarácsaiban lévő értékeket kezeli.

A Basics osztály általános függvényeket tartalmaz. Ezek segítik a kereső-metódusok munkáját.

Az AboutMe osztály pedig a Rólam ablak megjelenítését szolgáló osztály, ami a névjegyet jeleníti meg. A Szövegek string-halmaz tartalmazza az ablakban megjelenő szövegeket. Annyi a trükkje még, hogy az első sor nagyobb betűkkel van kiírva, ami a címsor, vagyis a program neve.

Osztály-diagram - listák

resultList és assisList kezeléséhez

Ez a két lista tartalmazza a kereső metódusok által talált értékeket, pozíciójukat, és más adataikat.

Az _assistList tartalmazza azon cellák koordinátáit, amelyiket meg kell jelölnie, hogy ott találta meg az eredményül illetve részeredményül szolgáló értéket. E lista a Coords osztályból példányosítandó.

A másik lista neve _resultList, amely pedig a függvények által talált eredmények listáját tartalmazza, és ezt a listát a Result osztályból kell példányosítani.

Továbbá az ábra azt is kimutatja, hogy a lépés sorszámot és a koordinátát örököltethetjük a Coords osztályból, így elkerülve a redundanciát.

A függvények elnevezései utalnak a funkciójukra. Viszont kibővítettem a toString metódussal, amely meg fogja jeleníteni a lista-adatokat string formájában.

© 2016 Pataki István 1063 Budapest, Banok utca 9 fsz. 2.
Az oldalt a Webnode működteti
Készítsd el weboldaladat ingyen! Ez a weboldal a Webnode segítségével készült. Készítsd el a sajátodat ingyenesen még ma! Kezdd el