Diskussion:Java (Programmiersprache)
Füge neue Diskussionsthemen unten an:
Klicke auf , um ein neues Diskussionsthema zu beginnen.Archiv |
Wie wird ein Archiv angelegt? |
Sonderfall Google Android
Im Artikel wird JavaME und Android gleichwertig erwähnt, was so aber nicht ganz richtig ist; JavaME ist eine "richtige" Java-Implementierung, also Programmiersprache + Bytecode + VM, während auf Android irgendetwas läuft was von Google je nach Situation als Java oder als nicht-Java bezeichnet wird. Für Android schreibt man Java-Sourcecode (allerdings ohne vollständige Standard-Bibliothek), der auch zu Java-Bytecode kompiliert wird, danach aber zu Googles eigenem Dex Bytecode konvertiert wird, der wiederum in einer speziellen Google-VM läuft (Dalvik) oder kompiliert wird (ART). Google zahlt deswegen keine Lizenzen an Oracle "Weil es ja kein richtiges Java ist", begründet Dalvik damit, dass der Google-Bytecode besser wäre (Was fraglich ist, da Dalvik jetzt eingestampft wird), den Entwicklern gegenüber wird aber von Java gesprochen. Oracle klagt ja deswegen auch gegen Google. Oder kurz gesagt: Oracle meint, dass Google nur ein paar technische Details geändert hat um keine Lizenzgebühren zu zahlen und soll entweder zahlen oder es nicht Java nennen, Google meint, dass sie es aus technischen Gründen anders gemacht haben und es trotzdem Java nennen dürfen, ohne zu zahlen. Insgesamt ist das ziemlich kontrovers und ich weiß nicht, wie man das neutral im Artikel unterbringen kann. Vorschläge? RedNifre (Diskussion) 12:37, 10. Mai 2015 (CEST)
- Naja - hier ist ja der Artikel zur Programmiersprache. Und die hat ja mal primär nix mit der Laufzeitumgebung oder dem Bytecode in den sie compiliert wird zu tun. Die Kontroverse wäre mMn richtigerweise in Dalvik Virtual Machine aufgehoben (dort gibts bereits dazu einen Absatz). Es geht ja soweit ich es verstanden habe nicht darum, dass man bei Android in Java programmiert, sondern dass Oracle behauptet, dass Google bei Dalvik die JVM "gestohlen" und leicht verändert hätten. --Sebastian.Dietrich ✉ 23:38, 10. Mai 2015 (CEST)
- Wenn jemand ein 'Java' anbietet/verwendet, das nicht den Standards entspricht (in der Sprache/den verfügbaren Standard-Klassenlibs), dann sollte das imho zumindest (auch hier) kurz erwähnt werden:
- Das für die Android-App-Entwicklung seitens Google angebotene „Java“ entspricht weitgehend der hier beschriebenen Sprache, weicht aber in einigen Bereichen davon ab und bietet auch nicht alle oder abweichende (Standard-)Klassenbibliotheken.
- 1 Satz, das genügt ja schon. --arilou (Diskussion) 14:45, 12. Mai 2015 (CEST)
- Hab kein Problem mit dem einen Satz - aber die Sprache ist meines Wissens nach 1:1 dieselbe (halt eine alte Version) & nur die Klassenbibliothek (deutlich) anders. Wenn die Sprache nicht 1:1 dasselbe ist, dann sollte hier mMn sogar deutlich mehr als nur ein Satz kommen. --Sebastian.Dietrich ✉ 22:21, 12. Mai 2015 (CEST)
- Hab' den Satz jetzt unter 'Apps' eingefügt (leicht abgeändert).
- "Die Sprache" umfasst imo die Klassenbibliotheks-APIs mit - ohne hat Java nicht wirklich einen Sinn.
Für die Klassenbiblitheks-APIs hat Sun einige "Pakete" definiert: EE, SE, ME. Google hält sich nicht (100%) an selbige, und nennt es trotzdem 'Java'. - --arilou (Diskussion) 14:08, 13. Mai 2015 (CEST)
- Passt. @Sprache ists denke ich anders. Die Java Language Spec beschreibt nur die Sprache und nicht die Klassenbibliothek - so wie dieser Artikel nur die Sprache und nicht die Klassenbibliothek beschreibt (bzw. sollte). Alles zusammen (d.h. Sprache, Klassenbibliothek, Runtime, Tools) wird in Java-Technologie beschrieben und umfasst das, was man normalerweise unter "Java" versteht. D.h. ich hab den Satz jetzt (deutlich) auf "Appss für das Android Betriebssystem von Google werden in der hier beschriebenen Sprache Java programmiert, basieren aber auf einer abweichenden Klassenbibliothek." abgewandelt. --Sebastian.Dietrich ✉ 20:13, 13. Mai 2015 (CEST)
Liznenz nicht GNU?
Hallo, eventuell Verstehe ich was Falsch. Die Box beschreibt das Java von Oracle mit der GNU Public License vertrieben wird. Die kann ich aber nicht herunter laden. Mir ist heute aufgefallen das nur mit einer ORacle Binary License die Software herunter zu laden ist. Desweiteren hört die Seite openJDK mit version 7 auf. openJDK war die Open Source Linie von Oracle. Und ich erinnere mich Dunkel das dies früher einmal vereinheitlicht wurde. Was es auch imemr ist, irgendwas ist hier nicht verständlich. Kann jemand das mal gegen checken? --Legine (Diskussion) 15:01 26.06.2015