Melyiket válasszam a kettő közül: olvasható kód vagy duplikáció mentes kód?
Figyelt kérdés
Abba a helyzetbe kerültem, hogy választanom kell, hogy a kódom vagy kiválóan olvasható vagy pedig van benne némi kódduplikáció. Az előbbiben különböző esetekhez különböző metódusok párosulnának, a metódusok neveiben pedig az eset benne szerepelne, így a kódot olvasó személy azonnal látná, hogy az adott metódus miért felel és az egész tesztet gyorsabban megértené, viszont a metódusok függvénytörzse nagyon hasonló lenne. Ha a második eshetőség lenne, akkor viszont tele lenne elágazásokkal a kód, a metódusok sokkal általánosabb nevet kapnának, és több idő lenne kibogarászni, hogy mi mit csinál.2021. okt. 3. 19:39
A kérdező szavazást indított:
Olvasható/magát dokumentáló kód a prioritás
DRY elv fontosabb, ne legyen duplázás
11 szavazat
1/5 anonim 



válasza:





Én ilyen esetekben azt szoktam csinálni, hogy megcsinálom az általános implementációt, majd létrehozok specializált metódusokat is, amik csak az álltalános implementációt hívják. Így nincs duplikáció + a végsö kód, ami a specializált metódusokat hívja, az is érthetö marad.
def _do_stuff_generally(a,b,c):
__...
def do_stuff_this_way(b,c):
__return _do_stuff_generally('this', b,c)
def do_stuff_that_way(b,c):
__return _do_stuff_generally('that', b,c)
2/5 anonim 



válasza:





Ha megmutatnád a kódod vázlatát, még az is lehet, hogy valami értelmes tanácsot tudnánk adni neked.
3/5 anonim 



válasza:





Szerintem legyen olvasható, jól dokumentált, redundancia-mentes kód! :-)
4/5 anonim 



válasza:





Tudom könnyű mondani, de szerintem a kettő együtt: olvasható és duplikációmentes kód.
5/5 anonim 



válasza:





Nézz utána a function overloading fogalmának.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!