Hirdetés
- Real Racing 3 - Freemium csoda
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- btz: Internet fejlesztés országosan!
- urandom0: Száműztem az AI-t az életemből
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- GoodSpeed: Munkaügyi helyzet Hajdú-Biharban: észak és dél
- Brogyi: CTEK akkumulátor töltő és másolatai
Új hozzászólás Aktív témák
-
Lortech
addikt
válasz
MrSealRD
#8355
üzenetére
Szerintem nem hogy ok az alsó, de számomra az a jobb. Nyilván nem azért, mert a kevesebb sor jobb. Számomra olvashatóbb, ez persze attól is függ, hogy az ember milyen kódhoz van szokva.
Szmeby javaslata is jobb, bár erre egy metódus hívás már határeset, és valóban kontextustól függ, de ha egy ismétlődő, üzletileg jelentéssel bíró logikai kifejezés vizsgálatáról van szó, akkor metódus is indokolt lehet. -
Szmeby
tag
válasz
MrSealRD
#8355
üzenetére
Tedd azt.
1 sor mindig jobb, mint 5. Főleg, ha ilyen boolean marhulásból áll. Az egyik kedvenc "egysorosom":boolean isOk(String param) {
boolean ok;
if ("OK".equals(param)) {
ok = true;
} else {
ok = false;
}
return ok;
}Egyébként, ha még szeretnéd cizellálni, adhatsz valami szép, értelmes nevet annak a logikai kifejezésnek, valahogy így:
...
myObject.setOnePropertyValue(isConstant1Checked());
...
}
private boolean isConstant1Checked() {
return myVariable.equalsIgnoreCase(CONSTANT1) && checked;
}Bár a kontextus ismerete nélkül lehet, hogy nem így kell, vagy nem is lehet, csak arra akartam rávilágítani, hogy a bonyolult logikai kifejezéseket érdemes olvasható formába önteni. Akinek pedig nagyon furdalja az oldalát a kíváncsiság, hogy vajon mit is jelent az isConstant1Checked(), mert számára nem nyilvánvaló, majd belenéz abba az egysoros metódusba, esetleg még ad neki valami kifejezőbb nevet.
Egyébként ez már túlzás is lehet... csináld érzéssel, az a lényeg.
Ahogy szebb, olvashatóbb, nincsenek kőbe vésett szabályok. Akár maradhat úgy is, amilyenre átírtad. Örülök, hogy segíthettem.
---------------------------
#8354 MPeter87:
Ha már kifogytál a könyvekből meg az oktatóvideókból, keress magadnak feladatot és készítsd el. Van-e olyan igényed, problémád, amit lehetne automatizálni, amit egy szoftver megoldana? Akár a hobbiddal kapcsolatban, vagy akár amit el tudnál adni másoknak, mert szükségük lehet rá, vagy csak készíts egy 826-ik jegyzettömb, vagy naptár, esetleg rss olvasó alkalmazást. Csatlakozhatsz akár opensource fejlesztésekhez is, nézelődj pl. a githubon, keress olyan projektet, amiben látsz fantáziát, vagy csak ihletet ad egy saját projekthez. Persze az a legjobb, ha fizetnek is érte, csak akkor nem biztos, hogy olyan terméken dolgozhatsz, amit szeretsz is.Egyébként - ha van már rutinod - az előbb említett clean code tanulmányozása sem ördögtől való gondolat, mert szerintem az Angster könyben lévő példakódokban nem kevés code smell lehet. Már nem emlékszem, csak a hasonló oktatókönyvekkel szerzett tapasztalat mondatja ezt velem. Merem ajánlani Josh Bloch Effective Java könyvét (az angol változatot... hacsak nem szereted az interface-t felületnek hívni, mert akkor a magyar is megteszi), vagy uncle Bob (Robert C. Martin) Clean Code könyvét, videóit. Meg ha már a Martinoknál tartunk (
), Martin Fowler, és Kent Beck is egész jó könyveket írt a refactoringról meg a TDD-ről. De blogokat, cikkeket is találsz elvétve, pl. http://blog.cleancoder.com/, vagy http://martinfowler.com/
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- NFL és amerikai futball topik - Spoiler veszély!
- Akciókamerák
- Milyen processzort vegyek?
- Real Racing 3 - Freemium csoda
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Házimozi belépő szinten
- sziku69: Szólánc.
- BestBuy topik
- Luck Dragon: Asszociációs játék. :)
- Óvodások homokozója
- További aktív témák...
- GYÖNYÖRŰ iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3133, 95% Akkumulátor
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Razer Blade 17" i7-12800H / 32GB / 1TB / RTX 3080 Ti 16GB / 4K 120Hz
- Dell Latitude 7420 Core i7-1185 G7, 16GB RAM, SSD, jó akku, számla, 6 hó gar
- Telefon felvásárlás!! Apple iPhone 16, Apple iPhone 16e, Apple iPhone 16 Plus, Apple iPhone 16 Pro
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: ATW Internet Kft.
Város: Budapest
1 sor mindig jobb, mint 5. Főleg, ha ilyen boolean marhulásból áll. Az egyik kedvenc "egysorosom":


