programmiersprachen:java

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
programmiersprachen:java [2006/11/17 21:29] stprogrammiersprachen:java [2014/03/24 18:39] (aktuell) – [Frameworks] st
Zeile 1: Zeile 1:
 +====== Java ======
 +[[wpde>Java (Programmiersprache)|Java]] ist eine objektorientierte Programmiersprache und als solche ein eingetragenes Warenzeichen der Firma Sun Microsystems.
  
 +Java-Programme werden in [[wpde>Bytecode]] übersetzt und dann in einer speziellen Umgebung ausgeführt, die als Java-Laufzeitumgebung oder Java-Plattform bezeichnet wird. Java-Programme laufen dann (ohne weitere Anpassungen) auf allen Plattformen für die eine Java-Laufzeitumgebung existiert.
 +
 +Die Java-Middleware-Plattform [[http://www.sourcelabs.org/sash.html|Sash 2]] kombiniert eine Reihe von Open-Source-Projekten zu einer kompletten Umgebung für die Entwicklung von Java-Anwendungen (die unten genannten).
 +
 +
 +
 +===== Lizenzprobleme =====
 +Java ist kostenlos erhältlich, aber nicht komplett unter einer [[oss:opensource lizenzen|freien Lizenz]]. [[http://de.sun.com/|Sun]] hat zwar das Entwicklungskit [[http://openjdk.java.net/|OpenJDK]] unter der [[oss:opensource lizenzen#gnu_general_public_license_gpl|GPL]] freigegeben, eine vollständige (und kompatible) Java-Umgebung lässt sich aber nur mit dem Sun-JDK und "binary Plugs" (unfreie Klassen und Zusatzpakete) erzeugen. Das führt zu einem unfreiem Softwarepaket das komplett freie [[linux:distributionen und live-cds|Distributionen]] nicht mitliefern können.
 +
 +Daher bemüht sich Redhat für Feodora mit freien Teilen ([[http://kaffe.org|Kaffe]], [[http://www.gnu.org/software/classpath/|GNU Classpath]] und [[http://openjdk.java.net/|OpenJDK]]) eine komplett freie Java-Variante unter dem Namen [[http://icedtea.classpath.org/wiki/Main_Page|icedtea]] zusammenzustellen. Bisher fehlen allerdings wichtige Teile (u.a. kryptografische Routinen und die grafischen Benutzeroberflächen AWT und Swing).
 +
 +
 +===== Links =====
 +  * [[http://java.sun.com|Java.sun.com: The Source for Java Developers]]
 +  * [[http://www.heise.de/open/artikel/80965|Open-Source-Java]]
 +  * [[http://kaffe.org/links.shtml|Java Links]]
 +  * [[http://www.codehaus.org/|Software-Repository mit Schwerpunkt Java]]
 +  * [[http://www.heise.de/newsticker/meldung/82033/|Java-Clustering-Lösung Terracotta unter Open-Source-Lizenz freigegeben]]
 +  * [[http://www.xiguaforever.net/confluence/display/JPT/Home|Java Performance Tuning]]
 +
 +
 +===== Installation in Debian/Ubuntu =====
 +
 +Zuerst muss das Partner-Repository in Synaptic aktiviert werden (unter Paketquellen). Anschließend reicht folgender Befehl:
 +
 +  sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts
 +
 +Standardmäßig wird der Aufruf von java auf den gcj (GNU Java-Compiler) umgeleitet, um auf die Sun-Version umzustellen reicht dieser Befehl:
 +  sudo update-alternatives --config java
 +
 +siehe auch [[http://wiki.ubuntuusers.de/Java|Java @ ubuntuusers]].
 +
 +===== Apache Axis =====
 +[[wpde>Apache Axis]] ist eine [[wpde>SOAP]]-Engine.
 +[[http://www.torsten-horn.de/techdocs/java-soap-axis.htm|SOAP Web Services mit Axis]]
 +
 +===== Frameworks =====
 +
 +  * [[wpde>Apache Wicket]]
 +  * [[wpde>Spring (Framework)]]: [[http://www.springframework.org/|Spring Framework: full-stack Java/JEE application framework]]
 +  * [[http://www.willuhn.de/projects/jameica/?page=download|Jameica (GPL)]]
 +  * [[wpde>Apache Struts]]: [[http://struts.apache.org/|Apache Struts project]], [[http://cwiki.apache.org/WW/home.html|Apache Struts Wiki]]
 +  * [[wpde>Hibernate (Framework)|Hibernate]]: [[http://www.hibernate.org/|Relational Persistence for Java and .NET]]
 +
 +===== Modultests oder Unit-tests =====
 +**[[wpde>Modultest|Modultests oder Unit-tests]]** helfen bei der Entwicklung von Software indem sie die Verifikation der Korrektheit von Modulen einer Software ermöglichen.
 +
 +Hier bietet sich [[wpde>JUnit]] an.