Hirdetés
- Retró külső modern Bluetooth funkciókkal
- Mobil flották
- Luxuspóráz: okosláncot akasztana a nyakadba az Apple
- Fotók, videók mobillal
- Kicsinálja az S26 Ultra a fóliagyártókat
- Android alkalmazások - szoftver kibeszélő topik
- Telekom mobilszolgáltatások
- Poco F8 Pro – titkos favorit lehet belőle
- Vivo X300 - kicsiben jobban megéri
- Minden a BlackBerry telefonokról és rendszerről
-
Mobilarena

Új hozzászólás Aktív témák
-
válasz
s1999xx
#12692
üzenetére
SRP - Single Responsibility Principle, a neve kb elmagyarazza.
A peldad amugy jo, csak az felejted el, hogy minden classnak lehetnek memberjei, amik szinten lehetnek classok.
Mondok egy masik peldat, hogy ertheto legyen.
Ha irsz egy osztalyt, ami primszamokkal dolgozik, mondjuk ugy, hogy vannak fuggvenyei, amik primeket keresnek, vagy megmondjak az adott primek szamat egy adott intervallumon belul, vagy ikerprimeket keresnek vagy akarmi, akkor se az a class neve, hogy "HasAtLeastAnArrayAndSomeIntegersByTheWayHasItsOwnThreadAlsoTakesParameters", hanem hogy mittudomen PrimeCalculator vagy akarmi.Mondjuk mashogy: Az osztaly nevebol azt kell tudni, hogy mit csinal, es az OOP szepsege, hogy pont leszarod, hogy hogyan. Teged az erdekel, hogy mit csinal, es ehhez mire van szuksege. Ezt tartalmazza a signature.(esetleg erdemes kicsit kesobb meg megnezni, mi az, hogy design by contract)
Nezzuk a peldadat:
Auto motorja. Mit csinal? Mozgatja az autot. Ha Te egy autot veszel, es feltetelezzuk, hogy nem vagy szaki, akkor nem az fog erdekelni, hogy az auto motorjaban hany darab alkatresz van, milyen muszaki kovetelmenyekkel, mert pont leszarod.
Az auto mozgatasa szempontjabol az erdekel, hogy milyen tipusu uzemanyagot fogyaszt es milyen "eroben" van. Amikor az autot aruljak se azt irjak ra, hogy motorter tartalma: szivattyuk (4db), uzemanyagcsovek(4m), szelepek(16), stb stb stb, hanem hogy 2.0 benzin es kesz. (Sot, ujabban meg ezt sem, csak kap valami fantazianevet, pl KJM16 -> 1.6os KurvaJoMotor.)
Peldankban a motor classnak amit felsoroltunk a memberjei. Aki inicializalja a motor classt, es utana hivogatja a "lefetyeljenek a paripak!" fuggvenyt (indit - tapossa a gazt), az pont leszarja, hogy kozben milyen szelep allasa micsoda meg stb.
Aki irja a motor osztalyt, azt mar erdekli, de azt se annyira melyen, ot az erdekli, hogy letezik-e olyan "benzinpumpa" osztaly, ami megfelel az elvarasainak. Aki meg a benzinpumpat tervezi, leszarja, hogyan gyartjak a csapagyat, az erdekli, hogy van-e olyan csapagy, ami megfelel a kovetelmenyeinek, es igy tovabb, egeszen addig, amig az igazan low level szintig el nem jutunk, ami pedig esetunkben a banyaszat. De neked, mint a motor osztaly felhasznalojanak hala egnek nem kell tudnod, hogy melyik alkatreszhez hol banyasztak micsodat, kulonben soha nem keszulne el semmi.Konkluzio: A single responsibility mindig a hivo/felhasznalo kontextusabol ertelmezendo. nem azt jelenti, hogy az osztaly nem csinalhat csak egy dolgot a hatterben, hanem hogy a felhasznalo szempontjabol (aki hasznalni fogja) egy feladatra egy osztalyt hasznalunk, es egy osztaly egy feladatot lat el.
Remelem sikerult erthetoen
eltulmagyaraznom.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Dell Latitude 7440 ( i7, 8 GB ,250 GB SSD, FHD) notebook olcsón!!!
- RAM Bazár!!! SK Hynix, Kingston, Samsung, Hyperx, minőségi DDR4-es RAM-ok kiárusítása!
- Gigabyte Geforce 1030 VGA kártya leárazás!!! AkciÓÓ!
- Sony BRAVIA Theatre U (HT-AN7) újszerű, dobozzal
- 8 az 1-ben USB-C Hub Adapter és Elosztó Dex ,Mac RJ45 Hálózati csatlakozó stb
- ÚJ könyv: Walter Isaacson Elos Musk - keménykötésű
- ÁRGARANCIA! Épített KomPhone Ultra 9 285K 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- Akció! HP ZBook Firefly 14 i7-1185G7 32GB 512GB Nvidia Quadro T500 4GB 14" FHD 1 év garancia
- Dell Latitude 7320 i5-1145G7 16GB 256GB 1 év garancia
- HP EliteBook 640 G10 - 14" FullHD IPS - i5-1335U - 8GB - 512GB - Win11 - 1 év garancia - MAGYAR
Á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




