- vrob: Az IBM PC és a játékok a 80-as években
- gban: Ingyen kellene, de tegnapra
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- gerner1
- Gurulunk, WAZE?!
- Luck Dragon: Asszociációs játék. :)
- bitpork: MOD Júni 13 Augusztus 2- szombat jelen állás szerint.
- eBay-es kütyük kis pénzért
- user2: Kia Ceed Gold 160 1.5 T-GDI MY2024
Új hozzászólás Aktív témák
-
Peter Kiss
őstag
Nekem bűzlik ez a példa, mert ránézve hard code-olt az egész.
Maga a configuration injection is elég nehézkes, de itt főleg, gyakorlatilag tesztelhetetlen configfájl nélkül. Biztosan nem tenném bele a Settings::getInstance(); hívást, hagyni kell a getFactorynak (vagy másnak) egy olyan pontot, ahol kódból bele tudom tolni az aktuális lehetséges válaszokat. (Ez a Settings cucc azért nincs itt, mert a factory-k mellett nincs nagy jelentősége, minden látható, ami kell belőle.) A másik, ami problémás lehet, az a switch-case; ha valaki ilyet lát, akkor gondolkodjon el azon, hogy ezt biztosan lehet máshogyan is.
Például, ha én csinálnám, akkor valószínűleg egy Activator vagy valamilyen más osztályt írnék, ami a konfigurációban szereplő adatok alapján tudna létrehozni objektumokat, nem pedig így hard code-olva switch-case-zel, ezt nagyon nehéz módosítani.
Factory se static lenne szerintem, hanem egy DI container-től el tudnám kérni az összes elemet, ami kellene.
DB_Abstraction_AbstractFactory-nak private constructor-t rak, de ennek ellenére pár sorral lejjebb példányosítja, aha.
A require hívásokról ne is beszéljünk...
-
Brown ügynök
senior tag
A Settings osztály getInstance() metódusa egy statikus fv. amit anélkül meghívhatunk, hogy előtte példányosítanánk az osztályt.
Itt ezt úgy sikerült meghívni, hogy vagy egy fájlban van a két osztály vagy include-tuk az osztályt tartalmazó fájlt, esetleg használtuk a namespace importálás szolgáltatását egy kis __autoload()-dal megtámogatva.
Szerk: design patternre én ezt találtam: [link]. Érthető példákat hoz.
Új hozzászólás Aktív témák
Hirdetés
- ASUS ROG Strix G17 17.3" Notebook! i7-10750H / RTX 2070 Super / 1TB NVMe / 16GB DDR4! BeszámítOK
- Void RGB PC - i7 9700f, 16Gb RAM, RTX 2080Ti 11Gb stb.
- ÚJ PS5 Slim - FW 8.40 - Lemezolvasó - Lua Loader - Lua játék - Lapse
- új, bontatlan, iPhone 16E gyárilag kártya-független, apple világgaranciával
- Üzletből, garanciával, Macbook Pro Retina 16" 2019, Gray i9 64GB RAM 1TB SSD Radeon Pro 5500M
- LG 48GQ900-B - 48" OLED - 4K 3840x2160 - 138Hz & 0.1ms - G-Sync - FreeSync - HDMI 2.1
- ÚJ Apple Macbook Air 15,3 M4 10C CPU/10C GPU/16GB/256GB - Ezüst -(2025) - 3 év gari - MAGYAR
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
- AKCIÓ! Acer Predator Triton Neo 16 15 notebook - Ultra 9 185H 32GB RAM 2TB SSD RTX 4070 WIN11
- BESZÁMÍTÁS! 1TB Kingston KC3000 NVMe SSD meghajtó garanciával hibátlan működéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest