Új hozzászólás Aktív témák
-
Drizzt
nagyúr
Igen. Leszamitva, hogy azert a Composite nem tul gyakori. Singletont, factoryt altalaban ugyis ad a framework, buildert a Lombok. Strategy szerintem elegge gyakori a jo kodokban ahol tipusfuggoen kell algoritmust valasztani. A java8, meg a Spring eleg sokat segit, hogy az oldschool modon kevesebbszer kelljen patternt implementalni.
-
Castolni nem tudsz, de reflectionnel tudsz játszani, pl. így (a komment helyére írva):
try {
Method method = innerke.getClass().getMethod("multiply");
method.invoke(innerke);
}
catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {
e.printStackTrace();
}
-
Drizzt
nagyúr
Ezerintem local classt nem lehet. De mibe tart kiprobalni? En most tableten vagyok, azert nem tudom. Inner class elerheto kivulrol, hacsak nem private, de a local class definicioja csak a definialo blokkon belul ervenyes. Annyira nem hasznalok ilyeneket soha, hogy nagyon nem vagyok bennuk biztos.
-
Csaby25
őstag
"A String literal is created at compile time and the compiler never creates a duplicate String literal. How-
ever, a string with the new operator is created at runtime and it always creates a new string even if it is identical to
an already existing string." P.Sanghera SCJP exam. -
A clean code teljes félremagyarázása
(főleg Python huszároktól hallotam ezt idági), hogy ha van comment az nem clean code és nem jó...Szerintem kell komment, de ha sikerül olyan függvényeket írnod, ami valóban 5-6 sor akkor adott esetbel lehet, hogy felesleges a komment, mert azonnal látszik, hogy mit csinálsz (pl. elwrappelsz egy lambdát mert még 6 helyen használod).
-
Szmeby
tag
Azt hittem, már valami alter irányzat kezdett kibontakozni clean code-nak csúfolva magát.
Valószínűleg az én angol tudásom kopott meg, de ebben sem látom a tiltást. Persze kiemelhetném a "not to write" kifejezést az egészből, és ignorálhatnám az ezt körbevevő bekezdések tartalmát, de miért is tennék ilyet!Szerintem érdemes elolvasni a teljes fejezetet, ha még nem tetted meg. Különösen azokat a részeket, ahol azt ecseteli például, hogy totálisan felesleges leírni a kód mellé/alá/fölé, hogy mit csinál, mert az olvasó ezt amúgy is látja, viszont például azon ritka esetekben, amikor a miért kérdésre adandó választ kívánja megörökíteni a fejlesztő, a mögöttes szándékot, amit semmilyen más nyelvi eszközzel nem lehetne egyszerűen megmutatni, akkor érdemes ezt megtenni, hogy megkönnyítsük az olvasó dolgát. Persze a gányolást is lehet kommentben magyarázgatni, de a könyv többi része azt szajkózza, hogy ne gányolj, szóval...
Az általad idézett "not to write" arról beszél, hogy ha szépen írod meg a kódot, akkor a kommentek elhelyezése is szükségtelenné fog válni, mivel feltételezzük, az olvasó tud alapszinten jávául és minden szükséges információt megkap a konstansok, változók, metódusok és osztályok elnevezéseiből, struktúrájából.Semmi sem fekete vagy fehér, így tudathasadásról sem lehet beszélni, hiszen értjük az ajánlás mögötti szándékot és aszerint cselekszünk. A clean code szerintem meg amúgy sem szabály, hanem ajánlás.
A public api javadoc meg más tészta, az a feladata, hogy röviden összefoglalja a mögöttes funkció lényegét és tájékoztasson a használat módjáról, megspórolva az olvasónak a forráskód böngészését... de erről a többiek is sokat írtak.
-
Drizzt
nagyúr
"Some comments are necessary or beneficial. We’ll look at a few that I consider worthy of the bits they consume." Tehát kommentet írni bizonyos esetekben és és jogos. Javadoc meg akkor igazán fontos, hogyha egy library API-ját írja le. Mivel akkor az konkrétan inkább dokumentáció, mint komment.
-
axioma
veterán
Engem az zavar amikor a clean code-nak a keplettel ellenorizheto reszet eroltetik, a lenyeget meg siman felrugjak egy unit test kedveert. Kaptam olyan review comment-et hogy a comment-ben (ok kertek hogy legyen leiras hogy miert ugy) a folyo angol szovegben egy zarojel elott nem volt szokoz, potoljam... [osszevontam ket sort es ugy maradt].
En ugy gondolom, hogy a clean code a biorobot kodiroknal muszaj, akik raadasul surun cserelodhetnek, es ezt aztan mint szabvanyt probaltak elterjeszteni hogy a manager egyenletesebb (nem jobb, nem gyorsabb, hanem kiszamithatobb!) haladassal tudjon szamolni.
Nyilvan a clean code masreszt nem mas, mint egy best practice gyujtemeny, iranymutato. Aki gyakorlott, az nem mint clean code csinalja, hanem mint egyszeruen adodo helyes megoldas. [Kedvenc peldam erre, hogy mennyit kuzdenek a tanarok mikor az adatbaziselmeletben keresnek olyan eseteket ami x NF de nem (x+1)NF. Mert termeszetes uton senki nem ugy allitja ossze, ha mar addig eljut hogy atgondolja, hogy ez egy karbantarthato sema legyen. Tok hasonloan a kozosbe irt kod is. Szerintem.] -
Drizzt
nagyúr
És? Aki a Java9-es könyvet írta amit olvasol, azt mondta, hogy clean code enthusiast? Vagy honnan jön a tudathasadás feltételezés? Van aki követi, van aki nem. Nem szeretem a kommenteket, de néha van haszna. Főleg ha valamit úgy írsz meg, hogy elüt a best practice-ről, de van valamilyen jól megfogható oka, hogy miért van mégis úgy. Én nagyjából követem az elveket, bár a refactoring könyveket sokkal jobban és hasznosabbnak tartom.
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Asus ROG G20AJ - Intel Core i7-4790, GTX 980
- Bomba ár! Lenovo X1 Carbon G6: i7-8G I 16GB I 256-512 SSD I 14" FHD I HDMI I Cam I W11 I Gari!
- ÁRGARANCIA! Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Apple iPhone 14 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
- DELL PowerEdge R640 rack szerver - 2xGold 6138 (20c/40t, 2.0/3.7GHz), 64GB RAM,4x1G, H730 1GB, áfás
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Liszt Ferenc Zeneművészeti Egyetem
Város: Budapest