Új hozzászólás Aktív témák
-
proci985
MODERÁTOR
válasz
Dave-11 #1579 üzenetére
kicsit kompaktabban és konyhanyelven:
a program leképezi a valós dolgot, innentől könnyebben elképzelhető, könnyebben használható. az emberi agy szeret kötni dolgokat valahova, tehát végereményben logikusabb lesz a felépítés.
ez azt is jelenti, hogy általában a dologok közötti egymásrahatások is átláthatóbbak, jól csinálva egyszerűbben átlátható lesz az architektúra (tehát a classok kapcsolata, egymásraépülése és végeredményben a program felépítése), tisztábbak lesznek az interfacek. a funkciók és változók szintén köthetőek lesznek a valós dologhoz, tehát könnyebben átlátható lesz, hogy mi miért kellhet, kevesebbet kell kommenteket/dokumentációt olvasni, emiatt könnyebben módosíthatóvá és megérthetővé válik a program. az ember kvázi építőkockákat kap, amik segítségével a nagy egész könnyebben feldarabolhatóvá (főleg design patternsek alkalmazásával), így könnyebben megérthetővé válik.
másik fontos szempont, hogy a dolgok elkülönülnek egymástól, tehát egy dolog nem több egységben (component/class) lesz megvalósítva, ez megint átláthatóbb kódot jelent. ami egyben azt is jelenti, hogy egyszerűbben átláthatóvá válik a programlogika. ez ismét a módosíthatóság/karbantarthatóság/megérthetőség hármast erősíti, illetve a tesztelhetőséghez is kell. htlmt generáló php+jquery+css+sqlnél pl elég vicces tud lenni, amikor az ember elkezdi keresni, hogy a 20+ fileból ugyanmár mi is felelős egy adott gomb működéséért, ha nincsen szépen megtervezve a rendszer (és persze a html útközben változik).
tesztelhetőséghez amiatt fontos, mert egyszerűbb egységek szintjén kezdeni, és általában minél kevesebb egység kell egy adott feladat kipróbálásához (elsősorban itt dependencykre kell gondolni), annál könnyebben lesz tesztelhető egy adott megoldás. a jól definiált interface szintén nagyban segíti a blackbox testinget. azt nem szabad elfelejteni, hogy az OO design egyben ronthat is a tesztelhetőségen, bizonyos design patternek (pl singleton vagy insulation classek) ilyen szempontból problémásak.
ami még lényeges, hogy az OO design nem igazán enged meg globális változókat, amik megintcsak nagyban rontják a későbbi karbantarthatóságot.
namost, ami az egésznek a lényege: a programok életciklusa hosszú lehet, ezalatt cserélődhet a teljes fejlesztői gárda, cserélődhetnek a célok, amiket az ember elvár a terméktől. az OO design ezekre a kérdésekre ad (részleges) választ és segít abban, hogy az a kód, amit az ember megír, később is használható legyen, amikor módosítani kell.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- GoodSpeed: Pillangóhatás: F billentyű meghibásodása -új gamer számítógépasztal
- AMD vs. INTEL vs. NVIDIA
- BestBuy topik
- OpenMediaVault
- Meghalt a Windows 10, éljen a Windows 10!
- Azonnali informatikai kérdések órája
- Fotók, videók mobillal
- Semmibe veszi a KRESZ-t a Tesla Mad Max módja
- Milyen TV-t vegyek?
- Samsung Galaxy Felhasználók OFF topicja
- További aktív témák...
- Bomba Ár! Lenovo ThinkPad L14 G2i - i5-1135G7 I 16GB I 256SSD I 14" FHD I Cam I W11 I Gar
- Bomba Ár! Lenovo ThinkPad L14 G2a - R5 4650U I 16GB I 256SSD I 14" FHD Touch I Cam I W11 I Gar
- Bomba ár! Lenovo ThinkPad L490 - i5-G8 I 16GB I 256SSD I 14" FHD Touch I HDMI I Cam I W11 I Gari!
- Bomba ár! Fujitsu LifeBook E544 - i5-4GEN I 8GB I 128SSD I 14" HD+ I DP I Cam I W10 I Garancia!
- ASRock RX 6600 Challenger D 8GB Garanciával!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
- Lenovo ThinkPad X13 Gen 2 i5-1145G7 16GB 512GB FHD+ 100% sRGB - 1 év garancia
- Dell USB-C dokkolók: (K20A) WD19/ WD19S/ WD19DC + 130W, 180W, 240W töltők
- Referencia Weboldallal Világítós bill+laptop bill magyarítás. Rania 3M -is! Touchpadok is.Posta ok
- ASUS TUF Dash F15 - 15.6"FHD 144Hz - i7-11370H - 16GB - 1,5TB SSD - RTX 3060 6GB - Win11
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő