Te miért szereted a Javát?
Én azt szeretem benne, hogy átláthatóbb számomra, mint a C/C++, szabályosabbnak érzem, már csak az elnevezési konvenciók is tetszenek (bár ez nyilván más nyelvnél is van). És igen, hordozható a kód, ami előny, egyszer kell csak fordítani.
A millió forrásfájl nyelvfüggetlen dolog. A saját dolgodat könnyíted meg, ha nem egy 20ezer soros fájlba pakolsz mindent, hanem logikusan mappákba és fájlokba szervezed a kódodat.
Az importok pedig ehhez kellenek. Egyrészt, hogy te lásd, hogy X fájlod mely másik fájltól függ. Másrészt, hogy a fordító lássa és akár a programod egy részét le tudja fordítani, mert ha kiadod a fordítási parancsot X fájlra, akkor fordítja vele együtt a függőségeit is.
Egyébként Java-ban is lehet rövidíteni az import listát, pl. import csomag.neve.*;
Ha meg IDE-ben szerkesztesz (pl. Eclipse), össze lehet csukni az import-okat, tehát a világon semmit nem zavarnak.
A Python-nal meg ne hasonlítsd össze. Az egy interpretált nyelv és direkt úgy van megalkotva, hogy minél tömörebb lehessen a kód.
A Java-s hello world meg lehet, hogy 4-el több sor, de legalább látod egyből az OOP struktúrát.
Ja és egyébként egyik nyelvet sem Hello World-re találták ki.
"@22:06: Hát nem tudom te mit csináltál, de egy viszonylag egyszerűbb adatrögzítő programot elég kevés osztályból is meg lehet oldani. "
Egyik sem én voltam. Csak azt mondtam, hogy valahogy mindig Javával követték el a legnagyobb általam látott merényleteket.
Hát, a programozást kell megtanulni. :)
Sz*r kódot bármilyen nyelven lehet gyártani.
Most épp ott tartok az ismerkedésben, hogy nincsenek alapértelmezett paraméterek. Tehát amit más nyelven úgy adnék meg, hogy valami(A, B, C=0, D=""),
arra itt négy konstruktort kell létrehoznom (A,B / A,B,C / A,B,D / A,B,C,D) meg esetleg egy olyan metódust, ami a tényleges konstruálást elvégzi mind a négy helyett, hogy ne kelljen a kódot ismételgetni.
Jól látom?
Nekem ez elég merevnek és bonyolultnak tűnik. Mi ennek a haszna?
Átláthatóbb a kód.
Nem egymásba ágyazol cuccokat, hanem szépen látod, hogy pontosan milyen paraméter listára mi történik.
Nem kötekedni akarok, de eddig is láttam. :-)
És mi van, ha meg akarok adni két opcionális paramétert, aminek azonos a típusa? Pl. fuggveny(a, b, c=false, d=false)
Ha példányosítok egy (a, b, valami boolean) hívással, akkor nem fogja tudni, hogy c-t vagy d-t adom meg. Ezen hogy lehet átlépni?
Nem teljesen látom mi ezzel a probléma.
A paraméter listát és a paraméterek típusát tudja a java.
Vagyis, ha a 3 paraméterest hívod, ahol a 3. boolean az fog lefutni.
Ha ha a 4 paraméterest, akkor az.
Itt van hozzá egy részletesebb leírás: [link]
Kösz a linket. De félreértettél: én két 3 paraméteresre gondoltam, ahol a 3. két különböző paraméter, de azonos típussal. Ezt nem lehet. A linken, amit adtál, hasznos megoldásokat javasolnak, csak ezektől is megint olyan érzésem van, hogy jobb kézzel vakarom a bal fülem... Tehát van egy szintaktikus nehezítés, aminek a megkerülésére nagyszerű módszerek léteznek. :-)
Ettől függetlenül mindenképpen ki fogom próbálni, hátha akkor rájövök, mi benne a jó, csak megvárom a keddet, amikor kijön a következő verzió.
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!