-
Fototrend

Új hozzászólás Aktív témák
-
cucka
addikt
Abstract factory helyett szerintem a sima factory is teljesen megfelelő.
A különböző szakköreidet könnyű hierarchiába rendezni, tehát öröklődéssel megoldhatod az egészet, nincs szükség absztrakt osztályokra.A factory-d meg lényegében egy függvény, ami Szakkör objektumokkal tér vissza, hogy pontosan milyen osztályúakkal, azt az ő dolga kitalálni a bemenő paraméterekből.
Esetleg csinálhatsz egy abstract factory-t, ahol a Szakkör osztályban lesz egy statikus függvény, ami saját maga példányaival tér vissza. Ezt megöröklik majd jól a leszármazottak is, tehát bármelyik szakkör osztályod fog tudni példányokat gyártani saját magából.
-
Karma
félisten
Szerintem a probléma, amit leírsz, nem a creational design patternek témakörébe tartozik. Amit leírtál, mint absztrakt és konkrét osztályok nem factoryk és productok. Az a különbség, hogy ezek mind adatjellegű osztályok, nincs közöttük "ő hozza létre őt" logikai kapcsolat, ergo nem gyárak.
Úgy hiszem, hogy a problémának két része van, ami megkavarhatott.
1) A szakkör példányokat (a maguk hierarchiájában) el kell tárolnod a MongoDB-ben. Itt azért befigyel, hogy az SQL táblának semmi köze nincs a Mongo kollekciójához, sokkal könnyebb dolgod van. Szerintem egy szakkör példány = 1 dokumentum a Szakkörök kollekcióban, és olyan tulajdonságai vannak, ami az adott típushoz tartozik. Ne gondolkodj előre megkötött oszlopokkal rendelkező táblákban!
2) Létre kell hoznod a különböző típusú szakköröket, figyelembe véve a különböző kombinációkat, mert ezzel más és más tulajdonságokat lehet beállítani. Itt jön be az, hogy szerintem a felvázolt osztályhierarchia nem stimmel.
A legegyszerűbb felállás, hogy adott a szakkör ősosztály, amiben a közös mezők találhatóak (beleértve a szakkör nyelvét), és ennek leszármazottai a ConcreteFactory/AbstractProduct alatt felsoroltak (ahogy szükséges). És ilyen leszármazott osztályokat kell létrehoznod akkor, amikor a felhasználó felvesz egy új szakkört.
Na most a megfelelő osztály kiválasztása és példányosítása már factory probléma. Az előző hierarchia mellett van egy szakkörgyár, ami valamilyen kulcs alapján létrehozza az új példányt. Ehhez a Factory method minta is elég. A gyár implementálásához meg szükséged van valami támpontra, hogy milyen szakköröket lehet létrehozni.
Most ennyire van (nincs) időm, remélem volt valami értelme

Kritika természetesen jöhet.UI: természetesen a hierarchia mind a modell rétegbe kell hogy kerüljön. A gyár határeset. De ez nem olyan kritikus kérdés szvsz.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Latitude 5530 27% 15.6" FHD IPS i5-1245U 16GB 512GB NVMe magyar vbill ujjolv gar
- Új Gamer PC RTX 5060 Ti 16GB i5-14400F 32GB DDR5 Garanciás
- Precision 7670 27% 16" FHD+ IPS i7-12850HX RTX A3000 32GB 2TB NVMe ujjlolv IR kam gar
- HP Pavilion 14 - i5 10. Gen Laptop + MX130 2GB GPU!
- iPhone 14 128gb független, szèp állapotban
- Apple Magic Mouse A3204 (USB-C)
- GYÖNYÖRŰ iPhone 14 Pro 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4041, 100% Akksi
- BESZÁMÍTÁS! 8TB Western Digital Red Plus SATA HDD meghajtó garanciával hibátlan működéssel
- Konzol felvásárlás!! Playstation 5, Playstation 5 Pro
- Huawei P30 Lite / 4/128GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi



