- Bemutatkozott a Poco X7 és X7 Pro
- Yettel topik
- Honor Magic V3 - mágikus realizmus
- Csonkítás áldozata lett a nemzetközi Redmi Note 15 Pro+
- Ez lehet az Apple hajlítható telefonjának formája, mérete
- OnePlus 8T – fazonigazítás
- Megtartotta Európában a 7500 mAh-t az Oppo
- Xiaomi 15 - kicsi telefon nagy energiával
- Poco F7 – bajnokesélyes
- Honor Magic6 Pro - kör közepén számok
Ú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
- One otthoni szolgáltatások (TV, internet, telefon)
- Ventilátorok - Ház, CPU (borda, radiátor), VGA
- Elemlámpa, zseblámpa
- BestBuy topik
- Öszvér módszerrel veszi fel a harcot a memóriapánikkal szemben az ASRock
- Battlefield 6
- Anime filmek és sorozatok
- Nem hiszed el, mi a Firefox új célja
- S.T.A.L.K.E.R. - Anomaly
- S.T.A.L.K.E.R. Clear Sky
- További aktív témák...
- LAST MINUTE KARÁCSONY! 2 egyforma i7 GAMER GÉP! Ingyenes SOS kiszállítás (Bp.) !!!
- Asus ROG Zephyrus G16 Intel Core Ultra 9 185H/RTX 4060/16GB DDR5/1TB SSD eladó NÁLAM A LEGOLCSÓBBAN!
- MacBook Pro M1 13 inch 8/512GB magyar bill nálam a legolcsóbban
- Fujitsu 27" B27-8 TE Full HD 1920x1080 hófehér monitor állítható magasság, PIVOT, HDMI számla + gar
- AMD Ryzen 5 Félkonfig eladó!
- BESZÁMÍTÁS! ASUS B560 i7 11700 32GB DDR4 512GB SSD RTX 4060Ti 16GB RAMPAGE Shiva A-Data 650W
- BESZÁMÍTÁS! ASUS B760M i5 12400F 32GB DDR4 1TB SSD RTX 3070Ti 8GB ZALMAN Z1 Plus Cooler Master 750W
- BESZÁMÍTÁS! ASUS B450 R5 2600X 8GB DDR4 250GB SSD 120GB SSD GTX 1050Ti 4GB Gamdias Argus E1 400W
- MS SQL Server 2016, 2017, 2019
- AZONNALI SZÁLLÍTÁS Eredeti Microsoft Office 2019 Professional Plus
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


