Kezdőoldal » Számítástechnika » Programozás » Te miért szereted a Javát?

Te miért szereted a Javát?

Figyelt kérdés
30 éve tudok programozni, sok nyelvet használtam már, és most ismerkedem a Javával, de szörnyen terjengősnek és modorosnak találom. Elég csak egymás mellé tenni egy helloworldöt Pythonban meg Javában... (Tudom, hogy nem ugyanarra valók!) Belenéztem valaki másnak a programjába, egymillió forrásfile, mindegyiknek a fele import. Mi ebben a jó? Az egyszer OK, hogy a JVM révén nagyon hordozható, de mitől lesz ez a nyelv szerethető?

2014. márc. 15. 19:46
1 2 3
 11/29 anonim ***** válasza:
100%

É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.

2014. márc. 15. 22:42
Hasznos számodra ez a válasz?
 12/29 anonim ***** válasza:

"@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.

2014. márc. 15. 22:51
Hasznos számodra ez a válasz?
 13/29 anonim ***** válasza:

Hát, a programozást kell megtanulni. :)

Sz*r kódot bármilyen nyelven lehet gyártani.

2014. márc. 15. 23:34
Hasznos számodra ez a válasz?
 14/29 iostream ***** válasza:
A Python egyáltalán nem objektumorientált, pusztán támogatja azt is.
2014. márc. 16. 00:58
Hasznos számodra ez a válasz?
 15/29 A kérdező kommentje:

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?

2014. márc. 16. 11:02
 16/29 anonim ***** válasza:

Á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.

2014. márc. 16. 12:11
Hasznos számodra ez a válasz?
 17/29 A kérdező kommentje:

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?

2014. márc. 16. 12:31
 18/29 anonim ***** válasza:

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]

2014. márc. 16. 12:36
Hasznos számodra ez a válasz?
 19/29 A kérdező kommentje:

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ó.

2014. márc. 16. 13:10
 20/29 anonim ***** válasza:
Nem nagyon tudok elképzelni olyan valós esetet, amikor egy azonos nevű függvénynek 3 tök ugyan olyan típusú paramétert adsz és mégis mást csinál. :)
2014. márc. 16. 13:14
Hasznos számodra ez a válasz?
1 2 3

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!