Akik szeretik a Java nyelvet, azok mit szeretnek benne?
Szerintem az egyik legborzalmasabb nyelv. Okai:
- Használata rendkívül körülményes, mivel "ügyetlenül" lett megtervezve a modulok felépítése, ezért IDE nélkül nem is nagyon lehet eligazodni rajta
- A típusparaméterezés lehetősége nagyon korlátozott. Például a típusparaméter tényleges típusa futásidőben nem érhető el. Emiatt például tömböt sem lehet használni típusparaméterrel, ami szerintem hihetetlenül gáz
- Nagyon szószátyár nyelv. Mindenhez bonyolult, hosszú sorokat kell írni, és rengeteg elnevezés 3-5 szóból álló összetett szó, ami sok helyen csökkenti a kód flexibilitását, máshol meg simán csak zavaró
- Nincs operátor túlterhelés. Pedig elvileg ez egy magas szintű nyelv...
- Kód duplikáció kód duplikáció hátán
- Publikus adattagok megvalósítása getter/setter metódusokkal... A frász tör ki ettől
- Nincs property szintaxis.
- Ahhoz képest, hogy nem sokkal magasabb szintű a C++-nál, indokolatlanul lassabb (bár nem ez tántorít el a Java használatától)
- Nem lehet függvényt vagy osztályt metódus paramétereként átadni. Pedig ez már a 21. század
- A beépített adattípusoknak két implementációja létezik. Holott technikailag megoldható lenne, hogy a megfelelő esetekben a magas szintű típusok is ugyanolyan gyorsak legyenek, mint az alacsony szintűek
- Nem lehetséges mixin classokat készíteni, ami kód duplikációra kényszerít
És még sorolhatnám. Ennek fényében még a JavaScript is jobb nyelv szerintem.
"Lassabb, viszont hordozható (99%-ban)."
"Cserébe a bytekód révén platform független lesz, nem kell minden rendszeren újra fordítani."
Nem ezt jelenti a hordozhatóság. A jól megírt C++ kód hordozható: lefordítod valami másra, és máris fut ott is. Sosem értettem ezt a fetisizmust a fordítással kapcsolatban.
@iostream: Nem mindenki szeretne komplett fordítási környezetek konfigurálni a gépén, hogy 1-2 programot pár óra alatt lefordítson magának.
Kérdező te elkönyvelted, hogy a java sz*r és foggal körömmel ezt bizonygatod.
Ennyi erővel MINDEN programozási nyelv rossz, mindegyikbe bele lehet kötni, mert mindegyik más.
"Kérdező te elkönyvelted, hogy a java sz*r és foggal körömmel ezt bizonygatod.
Ennyi erővel MINDEN programozási nyelv rossz, mindegyikbe bele lehet kötni, mert mindegyik más."
hmm, tehát a te érved az én érveimmel szemben az, hogy én érvelek? Egész meggyőző...
"Ez sem igaz, csak utána kéne nézni.
Az említett Reflection API igazi magic."
Valóban, a Reflection API igazi magic:
Class<T> persistentClass = (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0];
Hiszen mennyivel egyszerűbb, amikor lehetne ilyen bonyolult is:
type(TypeArguments[0])
Na ugye, hogy igazi magic? :)
"@iostream: Nem mindenki szeretne komplett fordítási környezetek konfigurálni a gépén, hogy 1-2 programot pár óra alatt lefordítson magának. "
hmm, egy fordítási környezet konfigurálása a megfelelő eszközökkel majdnem 10 perc! Nagyjából annyi, mint a Java virtuális gép telepítése.
Egyébként szerintem nem értetted meg logikailag iostream érvelését. Nézd meg a #6 kommentem, ott kicsit bővebben ki van fejtve.
"
"Kérdező te elkönyvelted, hogy a java sz*r és foggal körömmel ezt bizonygatod.
Ennyi erővel MINDEN programozási nyelv rossz, mindegyikbe bele lehet kötni, mert mindegyik más."
hmm, tehát a te érved az én érveimmel szemben az, hogy én érvelek? Egész meggyőző...
"
Szerintem viszont maximálisan igaza van a válaszolónak.
Nekem is vannak fenntartásaim a javával szemben, de a te "érveid"-ről ez jut eszembe:
Ha van GC akkor overhead és az a baj, ha nincs akkor memóriaszivárgás van az a baj,
Ha hosszúDeKifejezőEgyMetódusNév akkor az a baj, ha rövid és nem tudja senki hogy mit csinál, akkor meg az a baj,
Ha van operátor túlterhelés akkor az a baj, ha nincs, akor meg az a baj,
Ha nem lehet függvényt vagy osztályt metódus paramétereként átadni akkor az a baj, ha lehet akkor az a baj,
stb..
küldeném az engem megihlető számot neked, és mindenkinek aki nem szereti:
"Ha van GC akkor overhead és az a baj, ha nincs akkor memóriaszivárgás van az a baj, "
Szó sem esett a memóriakezelésről...
"Ha van operátor túlterhelés akkor az a baj, ha nincs, akor meg az a baj, "
Hol írtam én, hogy baj, hogy van operátor túlterhelés? Pont azt írtam, hogy az a baj, ha nincs! Szerintem nagyon is kell, hogy legyen operátor túlterhelés.
"Ha nem lehet függvényt vagy osztályt metódus paramétereként átadni akkor az a baj, ha lehet akkor az a baj, "
Megint: hol írtam én, hogy baj, ha lehet? Azt írtam, hogy az a baj, ha nem lehet!
Lehet, hogy neked ez úgy tűnik, hogy csak dobálózok az állításokkal, de speciel azokban a dolgokban, amiket te kifogásoltál, nem volt ellentmondás. Úgyhogy, nem érzem jogosnak a kifogásod. Ennek fényében szerintem vagy csak a szám kedvéért írtad be poénból ezt a választ (és nekem rossz a humorérzékem), vagy pedig az a szám inkább rólad szól :)
"Ha van operátor túlterhelés akkor az a baj, ha nincs, akor meg az a baj, "
"Hol írtam én, hogy baj, hogy van operátor túlterhelés? Pont azt írtam, hogy az a baj, ha nincs! Szerintem nagyon is kell, hogy legyen operátor túlterhelés."
Én úgy gondolom, hogy (nem a kérdező) ezt úgy gondolta, hogy mindenkinek lesz valami baja állandóan, nyelvtől függetlenül.
Most akkor ki nem érti, hogy mit akart ezzel írni a válaszoló?
Pontosan.
Például ismerek nálam sokkal tapasztaltabb embert, aki szerint nagyon is rossz.
Én meg kódoltam C++-ban, Javában, C++-ban átdefiniáltam néhány operátort, jó. Javában meg nem zavart sosem, hogy nincs.
Téged meg az zavar, hogy nincs.
És ez CSAK 3 ember. Érvekről hiába esett szó, max azt éred el vele, hogy nyelvtanórán érezzem magamat, meggyőzni azt nem tudtál. Csak össze-vissza szidsz valami gyelvet, ez minden.
C/C++-ról le tudnék írni 3x ennyi-t, hogy mi benne az orbitális nagy sz@r, amiért k..va sok bug van, de végső soron mindent rá lehet fogni arra, hogy sz@r programozók gányoltak benne. Ez minden nyelvre igaz.
"@iostream: Nem mindenki szeretne komplett fordítási környezetek konfigurálni a gépén, hogy 1-2 programot pár óra alatt lefordítson magának."
Még jó, hogy a programok többségét nem forrás formájában terjesztik, ugye?
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!