Hirdetés
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Invázió egy novellában 3-4. (Update) +5. fejezet! (18+ nyelvezet)
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- bambano: Bambanő háza tája
- Brogyi: CTEK akkumulátor töltő és másolatai
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- GoodSpeed: Munkaügyi helyzet Hajdú-Biharban: észak és dél
- droidic: Safe Mode az agyban
Ú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
- Lenovo Legion Augmented Reality szeműveg az élethű személyes mozi vagy virtuális játek élményhez!
- Corsair 2x16Gb 6400 cl32 hynix a-die eladó ( cl34 7800!!!)
- KARÁCSONYI AKCIÓ ! LG 34GS95Qx-B 34" Ívelt OLED MLA Wqhd 240HZ 0.03 MS Gaming Monitor !
- Elac Discovery DS-S101-G Zene szerver
- PALIT RTX 5090 32GB GDDR7 GAMEROCK - Gari 2028.02.25. -ig - Eladó!
- 146 - 147 - 166 - 167 - 168 - 169 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4090
- ÁRGARANCIA! Épített KomPhone i5 12400F 16/32/64GB RAM RTX 5050 8GB GAMER PC termékbeszámítással
- iPhone 12 Mini 128GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS4211, 94% Akksi
- Jawbone Up okoskarkötő, aktivitásmérő
- iKing - Apple iPhone 15 Pro Natural Titanium ProMotion 120 Hz, A17 Pro, USB-C 128 GB
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi
A require hívásokról ne is beszéljünk...
![;]](http://cdn.rios.hu/dl/s/v1.gif)

