Kezdőoldal » Számítástechnika » Programozás » Ilyen esetben hogyan lehet...

Ilyen esetben hogyan lehet elkerülni a kódduplikációt?

Figyelt kérdés

Az alábbi kérdésnél merült fel bennem a dolog:

http://www.gyakorikerdesek.hu/szamitastechnika__programozas_..


Ha megnézzük a #1-es választ, akkor a szám beolvasása kétszer szerepel, míg #2 esetében az ellenőrzés. Hogyan lehet itt elkerülni a duplikált kódot?


2016. júl. 26. 19:25
 1/5 anonim ***** válasza:

Javaban ciklus feltételben is adhatsz át értéket, pl.:


int i;

while((i = beolvas()) > 10) {

...

}


Ha az adott nyelv nem támogat ilyen akkor lehet egy boolean kapcsoló állítgatásával:


boolean kilép = false;

while(!kilép) {

int i = beolvas();

if(i > 10) {

...

} else {

kilép = true;

}

}


Vagy csak simán breakkel ki lehet lépni a ciklusból amikor kell (végtelen ciklus nem clean kód általában):


while(true) {

int i = beolvas();

if(i <= 10) break;

...

}

2016. júl. 26. 19:41
Hasznos számodra ez a válasz?
 2/5 anonim ***** válasza:

int i;

while((i = beolvas()) > 10) {

...

}


Akar lehet igy is, bar nem tudom javaban mennyire szokas.


for(int i; (i = beolvas()) > 10;) {

...

}

2016. júl. 26. 20:06
Hasznos számodra ez a válasz?
 3/5 anonim ***** válasza:
A kódduplikáció nem ezt jelenti, ezek teljesen rendben vannak.
2016. júl. 26. 21:00
Hasznos számodra ez a válasz?
 4/5 _Jessy_ ***** válasza:
függvény, osztály, származtatás, ...
2016. júl. 27. 14:40
Hasznos számodra ez a válasz?
 5/5 anonim ***** válasza:
Az első függvényt hív, azért szervezte ki függvénybe, hogy elkerülje a kódduplikációt.
2016. júl. 27. 20:11
Hasznos számodra ez a válasz?

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!