Hirdetés
- GoodSpeed: Harcban az adathalászokkal - az AI tud segíteni?
- droidic: [Memory Leak] Az agy defragmentálása
- droidic: Safe Mode az agyban
- GoodSpeed: Munkaügyi helyzet Hajdú-Biharban: észak és dél
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Invázió egy novellában 3-4. (Update) +5. fejezet! (18+ nyelvezet)
- eBay-es kütyük kis pénzért
- Gurulunk, WAZE?!
Új hozzászólás Aktív témák
-
Peter Kiss
őstag
válasz
PazsitZ
#9912
üzenetére
A Singleton anti-pattern, tesztelhetetlen alkalmazást eredményez, illetve fogalmad sem lesz arról, hogyan működik az alkalmazás.
Elég csak arra gondolni, mi van akkor, ha kapsz egy egyébként működő kódhalmazt, amit használni szeretnél, de rejtett dependency-k vannak benne a singletonok miatt. Sosem szabad ilyet csinálni.
Példa:
<?php
/* ... */
$controllerFactory = $this->_controllerBuilder->GetControllerFactory($this->HttpContext);
$controller = $controllerFactory->CreateController($this->HttpContext);
if (!$controller->GetType()->ImplementsInterface("\\System\\Web\\Mvc\\IHttpHandler") || !$controller->IsStateLess()) {
$sdsf = new SessionProviderFactory();
$this->SessionManager = new SessionManager($this->HttpContext, new UsersAndGroupsDataContext(), $sdsf);
$this->SessionManager->Validate();
$this->HttpContext->Session = $this->SessionManager->GetCurrentSession();
}
if (!$controller->Execute($this->HttpContext, $this->_actionInvokers->GetActionInvoker(typeof($controller)))) {
throw new \Exception("Failed to execute action: " . $this->HttpContext->Route());
}
/* ... */Itt mondhatnám én is a $this->HttpContext átadása helyett, hogy akkor HttpContext::Instance() az egyes helyeken (kihagyva a metódusok paraméterlistájából), mert itt ugyanazt jelenti, de azt eredményezné, hogy még számomra se lenne világos, minek mire van szüksége.
A példában szereplő if block egyébként még javításra szorul.
Új hozzászólás Aktív témák
- Billentyűzet-választó: mechanikus vs membrános – kinek melyik a jobb?
- Vivo X200 Pro - a kétszázát!
- GoodSpeed: Harcban az adathalászokkal - az AI tud segíteni?
- Youtube Android alkalmazás alternatívák reklámszűréssel / videók letöltése
- iPhone topik
- Békéscsaba és környéke adok-veszek-beszélgetek
- BestBuy topik
- AliExpress tapasztalatok
- Bluetooth hangszórók
- Akvarisztika
- További aktív témák...
- Sony G 24-105 f/4 - Sigma 50mm f/1.4 Art (SONY E)
- Összeszerelésre váró komplett gépezet várja új gazdáját!
- BONTATLAN Új Iphone 17 256GB White -Fe Szín 1év APPLE garancia gyári független Deák AZONNAL Átvehet
- Asus P5a-b Ss7 dobozos alaplap / K6-2+ 500mhz / Voodoo 3 /Awe 64 / Big Box Game
- Eladó 82 colos 4K HDR Samsung TV
- Önerő nélkül is elvihető! Részletfizetés. 27 % Áfás számlával Dell Alienware QD-OLED gamer monitor
- KARÁCSONYI AKCIÓK! GARANCIA, SZÁMLA - Windows 10 11, Office 2016 2019 2021,2024, vírusírtók, VPN
- HIBÁTLAN iPhone 13 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS4243, 100% Akksi
- Apple iPhone 14 128GB,Újszerű,Dobozával,12 hónap garanciával
- 130 - 131 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4080
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: ATW Internet Kft.
Város: Budapest

