Egy csésze kávé

11
nov

Composition or Inheritance – How to Choose?

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) Composition or Inheritance – How to Choose? bejegyzéshez

Egy korábbi előadásban a kompozíció előnyeit vizsgáltuk a származtatással szemben. Ennek folytatásaként most azzal foglalkoznék, hogy hogyan tudjuk eldönteni, hogy vajon mikor érdemes származtatni és mikor kompozíciót használni? Könnyen beleeshetünk abba a hibába, hogy egy feladatot származtatással kezdünk megoldani, ami önmagában még nem rossz dolog, de ha az igények változása mellett is ragaszkodunk ehhez […]

Read More
02
nov

Favor ‘object composition’ over ‘class inheritance’

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) Favor ‘object composition’ over ‘class inheritance’ bejegyzéshez

Néha olyan kézenfekvőnek tűnik, hogy egy funkcionalitás kiterjesztése érdekében származtatunk. Egy osztály, nagyon jó, nekem pont ez kell, csak azt egy picit másképp kell csinálnom, de jó lesz.” Olyan egyszerű és olyan kevés munka, csak egy metódust kell felülírni. De biztos, hogy ez mindig jó? Mi van, ha egyszer csak […]

Read More
26
okt

Why do I hate static methods

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) Why do I hate static methods bejegyzéshez

Az a benyomásom, hogy a statikus metódusok több nehézséget okoznak, mint amennyi előnyük van. Sokan mondhatják, hogy a statikus metódusok jók, mert: Azonban úgy gondolom, hogy inkább ezen előnyök épp a hátrányai is a statikus metódusoknak. A szoftver mindig változik, s ha nem figyelünk oda, akkor egy idő múlva el […]

Read More
19
okt

What makes a good unit test?

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) What makes a good unit test? bejegyzéshez

Hányszor írtam már rettenetesen hoszzú unit tesztet, amelynek nagy része az előfeltételek meghatározásából tevődött össze? Mockoltam egy csomó osztályt és metódusait, bemenő paramétereket hoztam létre, inicializáltam azokat, majd meghívtam a tesztelendő metódust, s végül rengeteg assertem volt és még azt is ellenőriztem, hogy a mockolt objektumokon mely metódusok, mely paraméterekkel […]

Read More
12
okt

Divide and Conquer

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) Divide and Conquer bejegyzéshez

Van úgy, hogy elveszel egy adott problémában, beszűköl a látóköröd, és úgy érzed egyszerűen túl bonyolult ahhoz, hogy fogást találj rajta, hogy megold?  

Read More
05
okt

Tell, Don’t Ask principle

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) Tell, Don’t Ask principle bejegyzéshez

Ez az elv nagyon az objektum orientáltság alapjait érinti, de mégis úgy vélem, érdemes megemlíteni azt, hogy fontos, hogy az osztály tudja mi az ő feladata, és ne belső állapotának függvényeként dolgozzunk vele.  

Read More
28
Sze

Talk to friends, not to strangers

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) Talk to friends, not to strangers bejegyzéshez

A tudatlanság áldásos. Minél kevesebbet tud egy osztály a környezetéről, annál kevésbé lesz érzékeny a környezete változásaira.  

Read More
21
Sze

Software rot

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) Software rot bejegyzéshez

A „betört ablak” elve: Az elmélet szerint a bűnözés a zűrzavar, a rendetlenség elkerülhetetlen következménye. Ha betörnek egy ablakot és kijavítatlanul marad, az arra járók azt gondolják, hogy senki nem törődik a házzal. Hamarosan egyre több ablakot törnek be, és az anarchia szelleme az épülettől az utcára terjed; jelzést adva […]

Read More
14
Sze

Orthogonal Code

Posted by | No Tags | Egy csésze kávé · Szoftverfejlesztés | Nincs hozzászólás a(z) Orthogonal Code bejegyzéshez

Ki nem tapasztalta már azt, hogy a projekt során az igények változnak. Vajon az ilyen változásokat átvinni a rendszerben mennyire egyszerű? Vagy ha nem egyszerű, akkor miért is nem az? A kulcsszó az ortogonalitás.  

Read More