A szakma Java

Megint előkerült a Java. Abban bizony nem lehet browsert írni ( http://hup.hu/cikkek/20141124/gngr_uj_webbongeszo_privacy_es_biztonsag_… ). Meg hogy 32 és 64 bit ( http://hup.hu/cikkek/20141124/gngr_uj_webbongeszo_privacy_es_biztonsag_… ). És ismerem, Applet, AbevJava, és társai.
Akik ezeket puffogtatják tudnak értelmes, technkai indíttatású Java-alázást bemutatni? Mert komolyan kíváncsi vagyok rá, köszi.

szerk.:
- légyszi ne személyeskedjünk
- csak szeretnék konkrét, technikai jellegű hozzászólásokat. Például: "szerintem a Java azért nem alkalmas modern alkalmazás fejlesztésre, mert [...] és ráadásul [...]". Akár összehasonlításokat is szívesen látok, például ".net -ben [...] ellenben java -ban [...]"

Hozzászólások

Vitainditonak:

A Java ellen egyik leggyakrabban felhozott problema az egyseges Look and Feel hianya. Ezt ugye ketfelekeppen lehet athidalni, az egyik megoldas, hogy csinalunk custom Look&Feel-t es koszonjuk, a masik, hogy mindenutt legyen nativ (kind of, se Windowson se Linuxon nem sikerult ezt meg maradektalanul megtenni, es hat az OS X-es megvalositashoz is igen erost szo fer...); a harmadik termeszetesen az SWT, ami berantja magahoz a 32 bit/64 bit problemajat (hiaba full java a kod, akkor is kezelni kell legalabb installer szinten a fuggoseget). Hopp, ez mar harom ut.

A masik pedig a version-hell. Az 1.7-es, 1.8-as valtoztatasok nagy resze nem portabilis visszafele, egy lambdakkal teletuzdelt kod sosem fog futni 1.6-os targeten, es az 1.7 is necces. Ez azert fontos, mert meg mindig vannak Windows XP-k is a kornyeken (foleg egy olyan szeles potencialis felhasznalotaboru alkalmazas eseteben, mint egy bongeszo), viszont 1.6-os javara performancia optimalizalni ugy, hogy kozben ne torjenek performancia szempontjabol az ujabb JRE-k tamogatasa... hat, sziszifuszi melonak latszik innen, amennyi effortot egy most indulo opensource projektbe nem fognak beletolni.
--
Ki oda vágyik, hol száll a galamb, elszalasztja a kincset itt alant:


()=() 
('Y') Blog | @hron84
C . C Üzemeltető macik
()_()

Elsohoz: a swing oda-vissza egysegesen nez ki minden platformon, az nem jo? es ennek van koze ahhoz hogy 32 vagy 64 bites a rendszer? nincs. akkor van ilyen problema, amikor az alkalmazasunk nativ kodot hasznal (ez java-tol fuggetlen kerdes)

Masodikhoz:
Bocs, de szerintem a harmas python kod se fut a kettes pythonnal, mirol beszelunk? Ez egy teljesen altalanos dolog. Siman lehet irni 1.6 kompatibilis kodot, ami fut mindenfele regi ocska vason. Kulonben a Windows XP egy _halott_ termek, szerintem nem valid ezzel elojonni. Egyebkent language szinten nincs olyan baromi sok dolog, amirol le kellene mondani ha 1.6-os kodot akarunk irni. Az egyik a lambda, a masik a diamond operator, a harmadik meg a project coin aprosagai (pl. string switch-ben amugy se szep). De lehet hogy meg van 1-2, de emlekeim szerint egyik sem olyan utos dolog, ami ANNYIRA kene.

--
arch,debian,windows,android

dev: http://goo.gl/7Us0GN
BCI news: http://goo.gl/fvFM9C

" a swing oda-vissza egysegesen nez ki minden platformon, az nem jo?" - Konkretan melyik Look & Feel-re gondolsz a Swingen belul? Merthogy pl. a Gtk L&F baromira nem ugy nez ki, mint a Windowsos vagy a Maces, raadasul a Gtk-s meg a Linux szintjen is egy hanyadek se nez ki nativan. Meg a Nimbus lenne a so-so kategoria (az meg lehetne multiplatformosan szep), de az meg Linux-only L&F. Egyedul a Metal lehetne kozos, de... most komolyan, Metal?

"es ennek van koze ahhoz hogy 32 vagy 64 bites a rendszer? nincs." - "a harmadik termeszetesen az SWT, ami berantja magahoz a 32 bit/64 bit problemajat" - Hint: az SWT nativ kodot hasznal, meghozza platformspecifikus nativ kodot.

"Kulonben a Windows XP egy _halott_ termek, szerintem nem valid ezzel elojonni" - oke, ezt most mondd meg a vilagnak is. Tessek megnezni a legutolso bongeszo statisztikat, es a Windows XP aranyat ezek kozott. Utana tessek elolvasni, honnet is indult ez a topic. Koszonom.

Language szinten meg nem is annyira szopo a dolog (bar a lambdakkal lehet szep dolgokat is csinalni egyszerubben), de egy csomo minden runtime szinten sincsen, ami egyszerusitene/roviditene a kodot, vagyis jo esellyel egy rahedli fuggese lenne a cuccnak, es bejon az, hogy alapszinten is eleg sok memoriat esz a cucc, vajh' miert. Ezert lenne jo egy fejlett, kevesbe szegmentalt platformon elindulni, pl. Qt-ban.
--
Ki oda vágyik, hol száll a galamb, elszalasztja a kincset itt alant:


()=() 
('Y') Blog | @hron84
C . C Üzemeltető macik
()_()

Köszi, ezek már konkrétumok :)
A Swinget úgy értettem, hogy mindenhol csont ugyanúgy néz ki, persze nem a platformhoz natívan. Az SWT-t egyáltalán nem vágom, köszi a kiegészítést.

A Windows XP-s dolgot lehet kerülgetni, a lényeg az hogy múzeumba és a sírba való, ahova a Microsoft már belerakta, hiába próbálják kikapirgálni onnan. Halott. Természetesen ha az az igény hogy oda megfeleljünk, akkor fogjuk a Java 7-et, és ennek megfelelően dolgozunk.

A desktopos téma feszegetése nyomán nekem is úgy tűnik, hogy desktopra kevésbé alkalmas, igaz, hogy én a Java-ból való megélhetésem óta egyszer sem gondoltam rá, hogy ilyen alkalmazást fejlesszek (értsd, kiszolgáló oldal).

--
arch,debian,windows,android

dev: http://goo.gl/7Us0GN
BCI news: http://goo.gl/fvFM9C

"A Swinget úgy értettem, hogy mindenhol csont ugyanúgy néz ki, persze nem a platformhoz natívan"

Bakker, meg mindig nem mondtad meg, mire gondolsz. A Swing-en belul van also hangon is 3-4 Look&Feel platformonkent, konkretan melyik nez ki ugyanugy minden platformon? A Metal? Te tenyleg szeretnel napi szinten egy Metal alapu UI-t hasznalni? Attol eltekintve, hogy rettenetesen ronda, nehez vele ertelmes UI-t csinalni, raadasul komoly kihivasokkal kuzd az UX teren. Oke, hogy ugyanugy nez ki, de ez hadd ne legyen mar ultimate indok mellette.
A Motif-rol azert nem szeretnek e helyt megemlekezni (o a masik, ami meg ugyanugy nez ki minden platformon), mert szegeny inkabb csak tortenelmi okokbol resze meg a Java runtime-nak, orizzuk kegyelettel az emleket, de szerintem nincs olyan Java dev, aki ezzel kivanna kinozni a usereit.

Ugy tudom, a Windows alapu L&F csak mersekelten erheto el a tobbi platformon (csak a standard 98-like kinezet, az XP/7 alapu nem), a Nimbus pedig nem kepezi reszet a Windowsos csomagnak (az OS X-rol nem tudok beszelni), az OS X-es Cocoa alapu kinezet pedig Mac-en kivul sehol nem erheto el.

XP: en nem kerulgetem, tisztaban vagyok a termek jelenlegi allapotaval. Azonban egy bongeszonek nem egy embernek es nem is nehanynak kell jonak lennie, hanem egy kicsivel szelesebb kozonsegnek.
--
Ki oda vágyik, hol száll a galamb, elszalasztja a kincset itt alant:


()=() 
('Y') Blog | @hron84
C . C Üzemeltető macik
()_()

A Custom L&F nem szar, es az IntelliJ ebben a temakorben egeszen professzionalisat alkotott, ezt nem is vitatom. De a beepitett L&F-ek szarok, es nem nagyon lattam meg opensource programot, ami minosegi custom look&feel-t tudott volna hozni. Ahhoz ugyanis egeszen komoly mennyisegu UX-os, UI designeres munka kell, amit - isten bocsassa meg, de - nem nezek ki a gngr bongeszo mogott allo kicsinyke csapatbol.
--
Ki oda vágyik, hol száll a galamb, elszalasztja a kincset itt alant:


()=() 
('Y') Blog | @hron84
C . C Üzemeltető macik
()_()

"Az idea is még mindig csak a 6-os javat támogatja (okkal), és ez sem probléma senkinek."

[citation needed]. Linuxon tokeletesen mukodik 7-es es 8-as Javaval, mert a rendszeret hasznalja alapbol.
--
Ki oda vágyik, hol száll a galamb, elszalasztja a kincset itt alant:


()=() 
('Y') Blog | @hron84
C . C Üzemeltető macik
()_()

Engem meg az hogy néha egyszerűen bugzik. Pl. feljön egy popup ablak, véletlenül mellé kattintok, na utána a popupban hiába kattintok bármelyik gombra, nem veszi, csak az ablak bezárása segít. Olyat is láttam már, hogy a modális ablakban kattintok és a háttérben levő ablakban érvényesül a kattintás.

"mert meg mindig vannak Windows XP-k is a kornyeken"

Miért kell feltétlenül célcsoportnak lennie egy olyan OS-nek, amit már a készítője sem támogat? Lehet, hogy van ahol még fellelhető néhány őskövület példány, de az eléggé rétegfelhasználás, és aki magára vállalja, hogy XP-vel utazik vállalja azt is, hogy nincs új verzió adott szoftverből. Már maga az MS sem adta ki az IE 9-es verzióját XP-re, pedig az nem ma jelent meg.

Pfff... oke, latom el kell vegeznem a hazi feladatot helyetted.

W3Schools Browser statistics by OS
Usage share of operating systems.

Az XP-nek meg mindig 12-17 szazalekos reszesedese van a tortabol, ami joval tobb, mint a "van ahol még fellelhető néhány őskövület példány, de az eléggé rétegfelhasználás" kategoria. Mar ha azt veszem alapul, hogy a Linux Desktop a retegfelhasznalas etalonja.

Nem hulyegyerek vagyok, elsore is megertettem, amikor a Microsoft bejelentette az XP EoL veget, azonban ez meg mindig nem hatja meg azt a 12-17 szazaleknyi embertomeget, akik meg aktivan hasznaljak ezt az operacios rendszert.

Szoval erdeklodnek, mit kellene azzal az informacioval kezdenem, hogy az XP egy halott oprendszer? Az, es?
--
Ki oda vágyik, hol száll a galamb, elszalasztja a kincset itt alant:


()=() 
('Y') Blog | @hron84
C . C Üzemeltető macik
()_()

Igazad van. Ha mondjuk az ügyfélcsoport nem zárt, managelhető, hanem pl. valamilyen publikus csoport, akkor nincs eszközöd arra hogy befolyásold őket. Ha fontos az a 12-17% akkor Java7-ezni kell.

--
arch,debian,windows,android

dev: http://goo.gl/7Us0GN
BCI news: http://goo.gl/fvFM9C

Megértem, hogy az xp rendelkezik még felhasználóbázissal, azt is, hogy egyeseknek fontos szempont emiatt támogatni. Főleg azoknak akik pénzt csinálnak belőle. Én csak azt nem értettem, hogy miért feltétlenül szükségszerű egy teljesen új, még gondolat szinten létező böngészőnél erre figyelni. Ha megnézed az általad linkelt táblázatokat az XP felhasználók aránya évről évre rohamosan esik. Mire lesz a projektből valami kézzel fogható ki tudja hányan fogják még használni.

De nem arra akartam rávilágítani hogy mennyire jelentéktelen vagy sem az XP, inkább arra, hogy egyáltalán nem biztos, hogy ez nekik, a böngésző készítőinek egyáltalán szempont. Miért kell hogy szempont legyen, mit vesztenek azzal a 10% felhasználóval?

Tobb mint tiz eves (Date of Report: 26 June 2002) research:

DarpaBrowser Capability Security Experiment

"The broad goal of this research was to assess whether capability-based security [Levy84] could achieve security goals that are unachievable with current traditional security technologies such as access control lists and firewalls. The specific goal of this research was to create an HTML browser that could use capability confinement on a collection of plug-replaceable, possibly malicious, rendering engines. In confining the renderer, the browser would ensure that a malicious renderer could do no harm either to the browser or to the underlying system.

[..]

To tackle the problem, Combex used the E programming language, an open source language specifically designed to support capability security in both local and distributed computing systems. We used E to build CapDesk, a capability secure desktop, that would confine our new browser (the DarpaBrowser) which would in turn use the same techniques to even more restrictively confine the renderer. Once we had completed draft versions of the CapDesk, DarpaBrowser, and Malicious Renderer, we brought in an outside review team of high-profile/high-power security experts to review the source code and conduct live experiments and attacks on the system. The DarpaBrowser development team actively and enthusiastically assisted the review team in every way possible to maximize the number of security vulnerabilities that were identified."

http://www.combex.com/papers/darpa-report/html/

Ossze lehet vetni, milyen tamadasi modellekre "gondoltak" ehhez kepest.

Szerintem szűkítsd le az OP-ban a scope-ot GUI-s alkalmazásra, úgy még érdekes is maradhat a thread, de amint átmegy backend oldalra onnantól bullshit.