- AMD Navi Radeon™ RX 9xxx sorozat
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Amlogic S905, S912 processzoros készülékek
- Home server / házi szerver építése
- Milyen videókártyát?
- AMD GPU-k jövője - amit tudni vélünk
- Milyen egeret válasszak?
- Milyen TV-t vegyek?
- Milyen CPU léghűtést vegyek?
Ú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
- Gitáros topic
- Mibe tegyem a megtakarításaimat?
- Autós topik látogatók beszélgetős, offolós topikja
- AMD Navi Radeon™ RX 9xxx sorozat
- Építő/felújító topik
- Gumi és felni topik
- Yettel topik
- EAFC 26
- Százmilliárd dolláros AI-fegyverkezésbe kezdett az Amazon és a Google
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- További aktív témák...
- Karcmentes Fóliás Samsung Galaxy S25 Edge 256GB JETBlack 1OO% ! 9Hó Samsung Jótállás
- ÚJ Bontatlan Dobozos Samsung Galaxy M36 5G 128GB ! 1ÉV Samsung Jótállás
- teljesen ÚJ Bontatlan Apple iPhone 17 256GB !!! aktiválástól 1ÉV nemzetközi APPLE GaranciÁvaL
- Apple watch series 8 45mm GPS+cellural
- RAM 8GB DDR4 2400 20db csomagban 150.000ft
- HIBÁTLAN iPhone 15 Plus 256GB-1 ÉV GARANCIA - Kártyafüggetlen, MS4529
- NEC MultiSync V421 42" Monitor
- Bomba ár! Lenovo ThinkPad T490s - i7-8GEN I 16GB I 256SSD I 14" FHD I Cam I W11 I Gari!
- ÁRGARANCIA! Épített KomPhone Ultra 7 265KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- Samsung Galaxy S22 / 8/128GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest


