Hirdetés
- Régóta ott van a fiókban az Intel válasza az AMD-féle 3D V-Cache-re
- Projektor topic
- Videós, mozgóképes topik
- 3D nyomtatás
- Ilyen blokkot sem láttunk még készre szerelt vízhűtésnél
- Milyen videókártyát?
- Kompakt vízhűtés
- Azonnali alaplapos kérdések órája
- Telekom TV SmartBox: szolgáltatói set-top box alacsony korlátokkal
- Genius SW 5.1 Home Theater
Új hozzászólás Aktív témák
-
Peter Kiss
őstag
válasz
Speeedfire
#9910
üzenetére
Static dolgok használata könnyen gyorsan spagetti kódot eredményez, fogalmad sem lesz, mi zajlik a rendszerben, tesztelhetőségről ne is beszéljünk.
A másik, hogy ha ezt a kérés során folyamatosan használod mondjuk 5 alkalommal, akkor ötször fog ez így lefutni?
Kódírás folyamán mindig érdemes lefektetni pár szabályt, amit betartasz, pl.:
static változóba nem rakok semmit, ami állapotot tárol (singleton is kinyírva)
static csak olyan lehet, ami valamilyen service-szel kapcsolatos (nálam ilyen a Path osztály, ez csak a mappák, fájlok neveit machinálja string-ként, az IsAdmin cuccod ilyesmi, de rossz a megközelítés*)Ezeket igyekszem mindig betartani, de a saját kis reflection kiegészítésem miatt én is tárolok dolgokat static változóban, de azok nem is változnak, amíg az osztály maga nem változik meg. Érdemes úgy tekinteni a static elemekre ilyen szempontból, mintha a PHP nem shared nothing elveket vallana.
---
Static cuccokkal van olyan gond, hogy simán keresztülhúzod az OO elveket. Most egy felhasználóról akarod megmondani, hogy admin avagy nem admin úgy, hogy gyakorlatilag kiszeded az egészet a rendeltetési helyéről, hiszen maga a User meg tudja mondani magáról az-e, ahogyan ez látszik is.
A kereted ad hozzáférést egy user nevű field-hez, az mi? Nem tudod egész véletlenül megmondani a rendszernek, hogy oda egy profibb objektumot toljon be? Mert akkor ennyi lenne: Yii::app()->user->admin; és nincs ez a static borzalom benne a rendszerben.Maga a design is lehet rossz: nem egy bit kell arra, hogy admin-e, hanem hegeszteni kell olyan Role rendszert, amibe ezt szépen bele lehet kódolni.
---
Én is használtam Singleton-t, de utána alig bírtam kiírtani a rendszerből, nagyon rossz ötlet. Nem tudom, mennyire jött át a dolog, de ha most nem, majd rájössz.

Új hozzászólás Aktív témák
- Parfüm topik
- Elemlámpa, zseblámpa
- Régóta ott van a fiókban az Intel válasza az AMD-féle 3D V-Cache-re
- Karácsonyi telefonajánló 2025
- Igazi csúcskészülék lett a Poco F7 Ultra
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Projektor topic
- Windows 11
- alza vélemények - tapasztalatok
- One otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- Bomba ár! HP ProBook 450 G8 - i5-1135G7 I 8GB I 256SSD I HDMI I 15,6" FHD I Cam I W11 I Gar
- Bomba ár! HP ProBook 440 G8 - i5-11GEN I 8GB I 256SSD I HDMI I 14" FHD I Cam I W11 I Gar
- Bomba ár! HP Elitebook 850 G7 - i5-10GEN I 8GB I 256GB SSD I 15,6" FULLHD I Cam I W11 I Gari!
- Bomba ár! HP EliteBook 840 G7 - i5-10G I 16GB I 256GB SSD I HDMI I 14" FHD Touch I Cam I W11 I Gari!
- Bomba ár! HP EliteBook 830 G8 - i5-1135G7 I 8GB I 256SSD I HDMI I 13,3" FHD I Cam I W11 I Gari!
- GYÖNYÖRŰ iPhone 14 Pro 128GB Deep Purple -1 ÉV GARANCIA -Kártyafüggetlen, MS3933, 100% Akkumulátor
- Egyedi ékszerdobozka
- Samsung Galaxy S25 256GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! ASUS H510M i3 10105F 16GB DDR4 512GB SSD GTX 1050Ti 4GB Thermaltake V3 fekete Zalman500W
- GYÖNYÖRŰ iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3060, 100% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi



