Kezdőoldal » Számítástechnika » Programozás » C# esetén melyik hatékonyabb?

C# esetén melyik hatékonyabb?

Figyelt kérdés

Ha egy metódus mondjuk Kutya objektumot ad vissza, és én egy újat akarok belőle visszaadni, akkor melyik hatékonyabb?


a verzió:

public Kutya GetNewKutya(){

Kutya k = new Kutya();

k.Szin = Szinek.Barna;

k.Nev = "Bodri";


return k;

}


vagy b verzió:

public Kutya GetNewKutya(){

return new Kutya(){ Szin = Szinek.Barna, Nev = "Bodri"};

}


Melyiket érdemes használni a hatékonyság szemszögéből?



2016. márc. 1. 22:13
 1/9 anonim ***** válasza:
100%
Ha nem tévedek a világon semmi különbség nincs. Csak kíváncsiság, de miért nem a konstruktorban adod meg az adatokat? Nem sok értelmét látom annak, hogy csinálj egy külön metódust csak emiatt.
2016. márc. 1. 22:20
Hasznos számodra ez a válasz?
 2/9 A kérdező kommentje:
Puszta kiváncsiságból merült fel ez a kérdés, mert igazából mindig a B módszert használtam eddig, köszönöm a választ, zöld ment
2016. márc. 1. 22:23
 3/9 anonim ***** válasza:
100%
Konstruktorra keress rá, mert ennek így semmi értelme.
2016. márc. 1. 22:58
Hasznos számodra ez a válasz?
 4/9 anonim ***** válasza:

Egyiket sem.

Kutya k = new Kutya("Bodri", Szinek.Barna);

2016. márc. 2. 08:02
Hasznos számodra ez a válasz?
 5/9 anonim ***** válasza:
Tokmindegy, a fordito ugyis a legoptimalisabb megoldast csinalja majd. Olvashatosag szempontjabol meg egyik sem, de azt mar irtak :)
2016. márc. 2. 13:40
Hasznos számodra ez a válasz?
 6/9 anonim ***** válasza:

Nem értem mi a baj az olvashatósággal. Sztem teljesen ok a kód, és bármelyik amelyik tetszik.

Sztem csak az a lényeg, hogy egységes legyen a kód.


Amúgy ha a kutyának pontosan ez a 2 tulajdonsága van, és mind2 kötelező, akkor oké a konstruktor, de ha van 10millió egyéb, amelyből ezt a 2-t állítod be, akkor ez így korrekt. Ha ez lenne a legnagyobb gond a kollégák kódjával, nagyon örülnék...

2016. márc. 3. 10:24
Hasznos számodra ez a válasz?
 7/9 anonim ***** válasza:

#6

A konstruktor mindig jó ötlet, használhatsz opcionális argumentumot aztán viszlát, nem lesz hosszabb a kelleténél akkor sem, ha csak egy paramétert akarsz megadni.

2016. márc. 3. 23:41
Hasznos számodra ez a válasz?
 8/9 anonim ***** válasza:

A hivás nem is lesz, de a konstruktor igen, ha 1000 mezőt akarsz beállthatóvá tenni. Mondom, hogy ha csak ez a kettő van, akkor megfelelő a konstruktor.

Opcionális argumentumokkal meg ismét nem vagyunk előrébb, hisz akkor is fel kell sorolni a nevüket az első kihagyott argumentum után.

2016. márc. 4. 21:11
Hasznos számodra ez a válasz?
 9/9 anonim ***** válasza:
Igazából a nagyobb kérdés az az, hogy akarjuk-e, hogy ezek a tulajdonságok megváltoztathatóak legyenek később, vagy nem... ha nem szeretnénk, akkor marad a konstruktor, ha szeretnénk, akkor sztem sima property beálltás (vagy az object initializer) teljesen megfelelő.
2016. márc. 4. 21:13
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, 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!