Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 84 reacties
Bron: The Inquirer, submitter: foobar

Binnen Sun Microsystems zelf wordt er flink gediscussieerd over de kwaliteit van het Java-platform, schrijft The Inquirer. Dit meldt een bron binnen het bedrijf, die tevens stelt dat de problemen met het Java-platform ervoor zorgen dat de programmeertaal vooralsnog weinig voor productiesoftware binnen Sun gebruikt wordt. Zo wordt het platform als inefficiënt en onpraktisch beschouwd, en is de Java-implementatie voor Sun's eigen besturingssysteem Solaris vrij slecht. Op het Solaris-platform neemt de Java Runtime Environment (JRE) een bijzonder grote hoeveelheid geheugen in, blijkt uit meldingen van klanten.

JAVA logoMogelijke incompatibiliteit met vorige versies is waarschijnlijk één van de redenen dat Java nog altijd niet wijdverspreid is op de desktop, maar vooral als taal voor het web wordt gezien. De JRE moet elke zoveel maanden geupdate worden, en er is geen mogelijkheid om terug te gaan naar een vorige versie. Daarnaast is het aantal bugs dat niet opgelost wordt in Java veel groter dan in bijvoorbeeld C++, en zijn er significante verschillen tussen Sun's en Microsoft's JRE-implementatie.

Moderatie-faq Wijzig weergave

Reacties (84)

Java is vrij goed alleen het heeft zoals elke taal een paar zwakheden. Swing zuigt, er zit al een hoop deprecated stuff in (voor zo'n jonge taal) en er moeten imho native compilers komen voor java
(gcc 3+ schijnt ook Java te kunnen compilen)
Native compilers bestaan wel maar zijn niet gratis, overigens blijkt dat Java native gecompileerd qua snelheid niet onderdoet voor C++.
(gcc 3+ schijnt ook Java te kunnen compilen)
GCJ bestaat al sinds 1998.

http://gcc.gnu.org/java/old-news.html
Tja... Sun en Microsoft leveren momenteel slag, maar is het daarmee interessant dat de Java-taal wel eens binnen de muren van het moederbedrijf Sun wordt bekritiseerd? 't Is vast koren op de molen van Microsoft, maar ik klaag ook wel eens over ons eigen spul met collega's.

Hoeveel Microsoft werknemers discussieren flink over de kwaliteit van VB of C#?
Hoeveel Progress werknemers klagen over Webspeed tekortkomingen?
Hoeveel Borland employees hebben wat op Delphi aan te merken?
Hoeveel Microsoft werknemers discussieren flink over de kwaliteit van VB of C#?

Niet veel, alle nieuwe software dat geintegreerd wordt met het windows .net platform wordt in C# geschreven ... dat is ook wel een heerlijk taaltje ook ... :9

Hoeveel Progress werknemers klagen over Webspeed tekortkomingen?

Vreemd, ik vond zelf altijd dat Progress 4GL meer tekortkomingen had dan WebSpeed ... (wat natuurlijk wel op de 4GL gebasseerd is) ... verder is WebSpeed geen slecht product.

Hoeveel Borland employees hebben wat op Delphi aan te merken?

Geen idee, ik denk dat er door het doorstomen van Delphi naar .NET wel een hoop nekharen overeind zijn gaan staan bij de oude die-hard Delphi programmeur ... (die dus daadwerkelijk bij Borland werken bedoel ik dan).
Mensen zouden zich ook meer bezig moeten houden met cross-platform coden ipv cross-platform compileren. De enigste manier waarop programma's fatsoenlijk draaien is als de code gecompileerd is met specifieke compilers voor dat systeem. Als programmeurs nu eens rekening gaan houden met dat hun software gecompileerd moet kunnen worden op meerdere platforms, dan kan iedereen blij genieten van vlot werkende programmatuur.
Voorbeeld zijn bv veel hobby programmeurs die an sich hele leuke GPL'd software schrijven, maar die zo slordig geprogrammeerd is dat het alleen te compileren valt onder Linux. Als niet-programmeur heb je vervolgens de grootste problemen de boel werkend te krijgen op bv Solaris.
Het idee van Java is hiervoor een uitkomst, en op mijn werk gebruiken we een hoop software van Tibco, allemaal in Java geschreven. Maar je wilt niet weten hoe @% traag het is, of hoeveel resources het vreet. Op alle platformen, incl. Sun's eigen spul.
EDIT: wat ook al niet helpt is dat de ene applicatie Java 1.2.0 nodig heeft, de volgende 1.3.1 en weer een ander 1.4.2. En dat ze geen van alle werken als niet die specifieke versie gebruikt wordt. Backward compatibility? Nooit van gehoord....
Op zich is Java helemaal geen "slechte" taal om in te programmeren, alleen de verschillende RunTime Environments maken het "leven" er niet makkelijker op. Zo draaien bij mij op een oude 350 MHz Win98 machine met bijbehorende MS Runtime de programma's stukken sneller dan op een 2 GHz XP machine met de "officiele" Sun runtime :( Waarom nou, terwijl de hardware stukken sneller is :r . En bovendien moet ik de programma's toch steeds weer aanpassen. En dan te bedenken dat ik ooit met Visual J++ begonnen ben dat bij een boek van Deitel&Deitel over Java programmeren zat. Dat liep toen heel aardig ;) De Borland Jbuilder loopt ook behoorlijk goed :) Toch ben ik nu naar Delphi over aan het gaan, die taal zit ook goed in elkaar :9 .
java is idd wel gestructureerd en dergelijke, ik vind het logisch ineen zitten (logisch als c++ adept :+ )

om te programmeren is dat inderdaad een vrij snel ding, ik bedoel daarmee, als je je er es 2 dagen achter zet heb je snel iets waar je mee kan naar buiten komen, een beetje als bij VB, dat is ook in een wip gefixt.
Alleen, en dat vind ik een ongelooflijk groot nadeel ten opzichte van c++ en zelfs VB dat op zich ook niet supersnel is... Java is gewoon extreem traag, zelfs de Swing dingen. Qua performance mag het dan mss vergelijkbaar zijn met andere, maar die interface is echt traag.
Wie het aandurft zet eens een stuk of 10 JButtons op een form, compileer dat als exe, of eender wat, maar dat is het snelst, en klik dan zo snel als ge kunt op elk ene keer.. eer al die knopkes in en uitgegaan zijn zit je alweer 5 seconden verder, en dat is traaaaag. Het is nu niet dat ik met een trage computer werk.
Heel veel crossplatform lichte objectgeorienteerde programmeer talen die java kunnen vervangen zijn er niet hoor.

Java draait bijvoorbeeld op een tal van apperatuur (telefoons anyones?), draait onder bijna elke platform.

Als alternatief misschien C#? Denk niet dat een MS platform het op elk besturingsysteem goed gaat doen. Python? Ook hier gelden weer een aantal restricties. Op pocketPC draait dit niet echt lekker (op oudere windows CE versies wel.. vreemd :))

Dus er zijn IMHO niet echt goede alternatieven op de markt..
waarom moet alles zo cross-platform zijn ? meestal gaan de internet applicaties voor het grote publiek toch via normale html met een serverside scripttaal.. maar ook dan vind ik 't gebruik van applets geen doodzonde of zo hoor :) heus niet.. maar om nou in windows normale applicaties via de JVM te moeten draaien ? thanx but no thanx..

daar komt bij dat er voor C++ bijvoorbeeld voor ieder platform hele degelijke compilers zijn.. tis niet voor niks dat quake bijvoorbeeld zo makkelijk naar linux geport wordt.
Java wordt nog nauwelijks gebruikt voor applets.
DE manier waarop Java momenteel wordt gebruikt, is binnen het J2EE framework, en specifiek binnen servlet & JSP containers als Tomcat.
Verder is het wel zo achterhaald dat Java traag en log zou zijn. Heb je wel 's gekeken naar IBM's Eclipse ontwikkelomgeving ?

Verder, quake naar Linux porten: tsja je blijft gewoon op dezelfde x86 architectuur dus al te moeilijk kan 't niet zijn.

Als ik in Java een Tomcat webapp ontwikkel op een WinXX machine, kan ik daarna de hele *.war en *.jar handel zo op een Solaris bak gooien of welk ander platform dan ook waar een JVM (en Tomcat natuurlijk) draait.
Onderschat dat voordeel niet.
ik onderken een heleboel trage dingen in Java. Maar heb gezien dat alles wat traag is wordt veroorzaakt door het visuele aspect (trage paint routines). Dit is meest in de enviroment niet netjes gebouwd.

BTW: ik zou toch echt een applicatie in C++ moeten porten naar een Mac of moet recompilen op zijn minst. Dat hoeft dus niet met een Java class of Jar. In dat opzich zou er dus niet eens een portatie gedaan moeten worden naar een ander platform.
Java is idd maybe verouderd, en heeft zo zijn nadelen, maar er moet niet vergeten worden dat het een krachtige programmeer taal is. Als je deze beheerst kan je met gemak alle andere talen leren. Waarschijnlijk idd alleen leren, want snappen doe je het wel. Tis niets voor niets dat je op TU-Delft meteen begint met java proggen in het eerste jaar
Het feit dat je andere talen makkelijker leert als je Java kent is echt geen voordeel van Java hoor!
Dat is met zowat elke programmeertaal zo. Het idee is namelijk in grote lijnen altijd hetzelfde (if-statements, for-loops, etc.). Dus ook al ken je VB erg goed, ook dan pik je bijv. C# vrij snel op.
Tis niets voor niets dat je op TU-Delft meteen begint met java proggen in het eerste jaar
Heb op het MBO ook al JAVA 2 gekregen
Heel veel crossplatform lichte objectgeorienteerde programmeer talen die java kunnen vervangen zijn er niet hoor.
Die zijn er genoeg (lees: 1..*) hoor... C++ is tegenwoordig al aardig cross-platform (lees: portable) geworden, vooral Borland heeft daar veel energie in gestoken. (CLX-applicaties van Borland C++ Builder 6 en Delphi 6/7 zijn aardig ``cross-platform'', ze kunnen zonder aanpassingen geport worden van Windows naar Linux.) Verder kan je tegenwoordig m.b.v. Windows-emulators en Lindows OS de meeste Windows-applicaties gewoon onder Linux draaien.

Java zuigt echt aars, het is koffiedik (lees: dikke stront) door een trechter... volgens mij kan je nog beter FlashMX gebruiken. Met FlashMX kan je tegenwoordig ook hele leuke programmatjes maken en het is cross-platform (toch?). Het is dat ik voor school met JBuilder (en dus ook Sun's Java-implementatie) moet werken, maar anders... Microsoft's versie is volgens mij veel sneller--iig vind ik die implementatie minder irritant.

Volgens mij heeft C# (de 100% OOP-opvolger van C++) de toekomst... Het maakt tegenwoordig toch niet meer uit hoeveel geheugen je applicatie vreet (een standaard Delphi-programma met één leeg formulier is al ~200 kb groot! :r), de gebruiker heeft toch wel genoeg--en dit programmeer-gedrag zal in de toekomst alleen maar ``erger'' worden.
Joh je kan zien dat je geen ID hebt waar je over praat. Super veel enterprise applicaties, dan heb ik het met name over backoffice apps draaien tegenwoordig op Java. Met de komst van JVM in Windows (als het erdoor komt) en snelle pc`s met veel geheugen is het draaien van Java op de desktop niet verweg meer van realiteit. Stekker eruit is geen optie.

Dan daarbij gaat Sun zich in J2SE 1.4.2 en 1.5 zich richten op de memory footprint van Java applicaties. Tevens is in 1.4.2 de opstart tijd van GUI bases Java apps al verbeterd.

Kleine quote uit 1.4.2 changes:
Startup Time Improvements

Optimizations have been made to the core libraries to reduce startup time. For a small command line application, startup time has been reduced by roughly thirty percent; for a small Swing application, by fifteen to twenty percent.
Meer leuke info @ http://java.sun.com/j2se/1.4.2/changes.html

Voor wie het nog niet wist, ja ik vind Java een prachtige taal :)
Bij de HIO opleiding in Groningen (Hanze Hoge school) is Java de hoofdtaal. Je krijgt ook alleen maar les in Java. Het zou zonde zijn als ze nu als het ware de stekker eruit zouden trekken :(
Bij ons op de Hogeschool van Utrecht is java ook de hoofdtaal. Het wordt gebruikt voor bijna ieder vak.
tijdens mijn studie was nederlands de hoofdtaal ;)

maar ff serieus, Er is niet iets zoals een perfecte programmeertaal.

ZO is C goed om OS-sen mee te schrijven en COBOL perfect om mainframe apps te schrijven. Dat nu pas Java onder vuur ligt van binnenuit is alleen maar een bewijs van mijn eerste stelling. Blijkbaar is er iemand hevig terleurgesteld in het effect dat JAVA tot nu heeft gehad
SvC zeker? dat ze daar alleen java gebruiken zegt verder niet zoveel, dat ligt gewoon aan de onkunde van de leraren.

Niet dat java een slechte keuze is in mijn ogen, maar ik vind het zeker nog wel log en traag. En de argumenten die hier als kritiek zijn gegeven zijn gewoon juist.
Het zou zonde zijn als ze nu als het ware de stekker eruit zouden trekken
Nee. Ik ben zelf geen programmeur (ken alleen een beetje Perl en Bash) maar van wat ik heb gehoord is 't zo: het gaat 'm om de ervaring die je opdoet.

Wanneer je een bepaalde programmeertaal goed kunt, kun je een andere makkelijker (gaat niet altijd op, is een vuistregel), met betrekkelijk minder moeite, leren. Zo zou het best kunnen zijn dat je met je Java ervaring makkelijker C++ kunt leren en later met C++ gaat werken en verder niks meer met Java te maken gaat krijgen. De kennis die je op hebt gedaan tijdens je ervaringen met Java gaan je helpen bij je C++ programmeerkunsten.

Maw: maak je niet teveel zorgen!
HIO Den Bosch geeft eerst Java, dan C++ er bij, en dan ook nog 's Delphi er bij!
Het zal in de toekomst waarschijnlijk wel vaker gebeuren dat je je progjes via een zgn VM moet runnen...

hele .net gebeuren gebruikt het ook....
Het zal in de toekomst waarschijnlijk wel vaker gebeuren dat je je progjes via een zgn VM moet runnen...
hele .net gebeuren gebruikt het ook....
Umm, .Net word wel degelijk gecompiled, terwijl java geinterpret word.
Natuurlijk zal een .Net app nooit zo snel zijn als een zelfde app in C++ oid, maar het gaat wel veel sneller dan Java.
Wat het .Net framework eigenlijk doet, is een programma (zogouw je 't uitvoert) compileren vanaf de MSIL (MS Intermediate Language) naar native code, wat veel sneller gaat dan een interpreter.

Overigens word .Net nog maar heel weinig gebruikt..
Ik heb een paar maanden geleden een cursus gevolgd.. en ik was de allereerste die een .Net cursus deed..

Maar dat zal vast veranderen wanneer Microsoft hun Windows .Net (aka Windows 2003) uitbrengt, en ze zullen er waarschijnlijk alles aan gaan doen om ontwikkelaars te dwingen .Net apps te maken.

Maar als je op de lange termijn platform-onafhankelijke programma's wil maken, kan ik je voorlopig aanraden Java te gebruiken.. want het .Net framework is heel erg windows-oriented, en heeft weinig flexibiliteit naar andere OS's toe.
Van Hotspot gehoord misschien?

Java wordt op verschillende OSsen al lang niet meer geinterpreteerd maar m.b.v. de z.g.n. hotspot compiler geoptimaliseerd en omgezet naar native code.
Dat is even een slag in de nek van Java. Java lijkt z'n tijd te ver vooruit, het is cross-platform (iets waar MS nu pas aan begint) en opereert op een hoger abstractiniveau dan bijvoorbeeld C++. Die zaken zorgen voor een langzame omgeving die eigenlijk hardware nodig heeft die nog niet bestaat (probeer maar eens een grafische Java-applicatie, die is zelfs op een P4 nog te langzaam).

Java doet veel goed en kent voor beginnende programmeurs een lage opstap, voor ervaren (C++) programmeurs juist een hoge opstap en teleurstelling.

Sun is slim geweest door het in te zetten voor het web, daar doet het z'n taak naar behoren. Die medewerkers moeten eigenlijk niet zeuren, Linux en Windows zijn ook niet te vergelijken...dat komt omdat ze beide een ander doel nastreven.
Als iedereen nu ook nog eens de moeite had genomen om het artikel te lezen voordat we ons hier gingen wijden aan onze hobby 'voeren-van-een-MS-vs-Sun-of.Net-vs-Java-discussie-zonder-kop-of-staart' hadden we het volgende kunnen lezen:
Sun engineers think that Solaris gets in the way of implementing many software applications. The problem is widely recognised internally.
Kijk, het lijkt er dus meer op dat Sun nooit de moeite heeft genomen om de JRE voor Solaris echt goed in orde te maken. Dat heeft dus niet zoveel met Java als taal te maken.

Gelukkig lijkt ook Sun langzamerhand het licht te zien en te begrijpen dat sinds de doorbraak van Linux een proprietary Unix niet levensvatbaar is op de lange termijn en zal ook Solaris in de verre toekomst gaan verdwijnen.
Java is al zeker sinds 1998 z'n tijd ver vooruit, dat begint nu toch wel erg lang te duren...
Java is op zich wel een goed bedacht iets. Je kan het runnen op meerdere os'en ed. Maar het is te traag voor woorden en bovendien moet je ook nog JVM hebben om het te draaien. Ik heb ook nooit goeie proggels gezien die in java zijn geschreven.
Het is wel jammer voor het web, want het was toch altijd wel grappig die java games :) maar ook zoals map24 het gebruikt. Een java route app. Maar ja, ook hier is een opvloger voor :P, flash en shockwave.
Al met al het zal niet worden gemist. :7
Ik heb ook nooit goeie proggels gezien die in java zijn geschreven.
Kijk eens naar jEdit of IntelliJ IDEA. 2 full size applications, in Java geschreven.

Swing is inderdaad een beetje een zootje maar als je het van binnen en van buiten kent, valt het blijkbaar toch mee en is het niet zo "baggertraag" als men ons soms wil doen geloven. Misschien zijn veel Java-applicaties gewoon slecht geprogrammeerd en vertekenen die zo het beeld van wat Java echt kan.
Ik vindt swing helemaal geen zooitje,
het is een taal waarmee e heel veel kunt:

Bijvoorbeeld het Look&Feel dat het ondersteund. Je kunt gewoon skins gebruiken voor je programma's.
En het draait gewoon op elke pc.

Het enigste nadeel is, zoals velen zeggen, dat JAva gewoon langzaam is. Ze moeten de JVM maar eens verbeteren, en ook de javax.swing classes kunnen nog worden verbetered. In Versie 1.4_1 van het JRE is Swing bijvoorbeeld al hast 2 keer zo snel dan in versie 1.4.

Snelheid is dus een belangrijk punt.
Ik maak ook jsp pagina's maar gebruik steeds vaker php omdat dat gewoon 100 keer sneller is. Maar jsp is toch wel beter ontworpen, zoals die taglibs.

Java is de beste taal die ik ken, hij moet alleen een beetje worden gegeknapt. Mischien is een native compiler wel een idee, maar dan is dat hele Cross Platform gedoe weg, dat zou jammer zijn.
Met gcj in gcc kun je java gewoon compileren hoor ;-), dan wordt het lekker snel maar is het alleen niet meer on the fly te veranderen in je webpages. Voor apps werkt dat echter prima
jEdit is dan een slecht voorbeeld vind ik :)

Eclipse is met afstand beter :)
www.eclipse.org
swing is sowizo wel bagger ja maar ik heb dat winforms ook gezien en in vergelijk daarmee is t een snelheids monster. zeker met de verbeteringen die in jdk 1.4 zijn doorgevoerd.

swt wat gebruikt word in eclipse is helemaal netjes maar helaas een bedenksel van de jongens bij IBM en geen standaard
dan betekend het gewoon dat java ook erg moeilijk is. Vooral die swing dingen. En dat maakt het ook een beetje een slechte taal.
Niet?

Together (Control Center) ! (overgenomen door borland, dus website is een beetje anders geworden, oude was een stuk mooier.........

compleet programma voor het maken van java progsels (class diagrammen tot sequence, activity, etc, etc met generatie van standaard code die erbij hoort, met text editor etc etc)

alleen dus niet erg snel op een computer onder de gigahertzen.....
Je kunt wel zien dat je niets van java weet. Op dit moment werk ik aan een high performance java (serverside) project voor een grote bank-verzekeraar. Dat kan dus. De grootste performance-verschillen zitten tussen efficiente en inefficiente code.
Natuurlijk zou het mogelijk zijn in C of assembly nog snellere code te schrijven, maar de tijd die daar voor nodig zou zijn weegt qua kosten niet op tegen de kosten van een extra server.

Java is niet zo geschikt voor client-side grafische applicaties. Logisch, gezien de grote verschillen in grafische aansturing op verschillende platforms. Dus verwacht neit te veel van java games.
lijkt me niet echt goed voor t bedrijf.. dat de eigen werknemers er over klagen.. dat wekt toch niet echt een betrouwbare indruk lijkt mij.
In alle bedrijven wordt geklaagd, maar dat het naar de media uitlekt is idd geen goede zaak.
Er wordt al eeuwen door Sun-werknemers en ontwikkelaars geklaagd, dat Sun teveel vasthoudt aan de backwardse compatibiliteit, waardoor het pakket veel groter is dan nodig.

Veel ontwikkelaars zouden liever een 'opgeruimde' versie van 1.4 zien zonder de meuk die er allemaal nog in zit om oudere versies te laten werken.
Dat wordt dat een 2.0 neem ik aan.

Zodra het niet meer backward compatible is verhoog je de eerste decimaal.

Apache 2.0 werkt niet met 1.4 modules.
Het lijkt me juist heel erg goed dat er open gediscussieerd kan worden. Hoe meer mensen er mee kunnen denken hoe beter de ideeen, over het algemeen.
Java is zo eenvoudig; mooi gestructureerd en gedocumenteerd. Spijtig dat weinig mensen dat appreciëren...
Het enige echte voordeel van java is de crossplatform functionaliteit en als je een gestructeerde taal wilt dan kun je het nog altijd op Visual basic gooien
C++ niet gestructureerd ? of niet gedocumenteerd anders ? ... hmm :?

en ik vind delphi altijd nog veel prettiger werken dan heel dat java.. wat is er mis met pascal ? :)

ik heb een beetje een hekel aan 't idee dat alles maar een object is (strings, etc...) ;(

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True