Java Development Kit (JDK)
Integrierte Entwicklungsumgebungen (IDE)
andere Java Tools
Java Konventionen
These tools are the foundation of the Java Development Kit. They are the tools you use to create and build applications.
javac | The compiler for the Java programming language. |
java | The launcher for Java applications.
In this release, a single launcher is used both for development and deployment.
The old deployment launcher, jre, is no longer provided. |
javadoc | API documentation generator. Also see Javadoc Enhancements for 1.2 |
appletviewer | Run and debug applets without a web browser. |
jar | Manage Java Archive (JAR) files. |
jdb | The Java Debugger. |
javah | C header and stub generator. Used to write native methods. |
javap | Class file disassembler |
extcheck | Utility to detect Jar conflicts. |
These tools help to create apps that interact over the Web or other network.
rmic | Generate stubs and skeletons for remote objects. |
rmiregistry | Remote object registry service. |
rmid | RMI activation system daemon. |
serialver | Return class serialVersionUID. |
This tool helps to create localizable apps.
native2ascii | Convert text to Unicode Latin-1. |
These tools help you set security policies on your system and create apps that can work within the scope of security policies set at remote sites.
keytool | Manage keystores and certificates. |
jarsigner | Generate and verify JAR signatures. |
policytool | GUI tool for managing policy files. |
These tools are used when creating apps that use CORBA to access databases.
tnameserv | Provides access to the naming service. |
idltojava | Generates .java files that map an OMG IDL interface and enable an application written in the Java programming language to use CORBA functionality. This tool is available for download from the Java IDL web site. Documentation for the idltojava compiler is included in the download. |
Projektgenerierung mit Templates
Visuelle GUI-Gestaltung
Visuelle Interaktionsgestaltung
Visuelle Verwaltung der Projektkomponenten (z.B. Klassenbrowser)
Komfortables Debuggen
Komfortable Schnürung von Endprodukten
Code Generierung aus UML Diagrammen
Visual Cafe (Symantec)
JBuilder, Kylix (Inprise)
Forte for Java, forte4j war Netbeans (Sun)
JDE im Emacs Editor
meist bei (X)Emacs dabei
(JDE)
Übersicht von JavaWorld
ArgoUML, Poseidon (Argo, GentleWare)
Symantecs Visual Cafe 4.0:
Eclipse 2.0:
Forte4Java, Netbeans 3.0:
ArgoUML, Poseidon:
Neben den schon genannten Tools gibt es noch eine Reihe weiterer Java Compiler und Interpreter.
Kaffe OpenVM
komplette Implementierung von Java unter GPL
kommerziell unter Transvirtual
Japhar
Open Source Java VM ohne Bibliotheken
jikes
Java Compiler in C++ geschrieben von IBM, aber OpenSource
GNU Java gcj
Java Compiler und VM von GNU, kann Binaries erzeugen, die ohne VM laufen
Open Runtime Platform (ORP)
Open Source Implementierung der Java Laufzeitklassen
Warum Konventionen?
Lesbarkeit
Wartbarkeit
für den Author
für Partner oder Nachfolger
wenn Abweichung, dann Konsistent
Namen für | Wort | Bezeichner beginnen mit | Beispiele |
---|---|---|---|
Variablen, Attribute | Substantive, Adjektive | mit Kleinbuchstaben | done, length, rein, raus |
Konstanten | Substantive, Adjektive | nur Grossbusstaben | ONE, ZERO, BLUE, RED, MIN_WIDTH |
Methoden | Substantive, Adjektive, Verben | mit Kleinbuchstaben | toString(), print(), multiply(), length |
Klassen, Interfaces | Substantive | mit Grossbuchstaben | StringBuffer, PrintWriter |
Pakete | Substantive | nur Kleinbuchstaben, Worttrennung mit '.' | edu.unima.kredel.pk1, edu.cmu.cs.author |
Schreiben Sie bei Bezeichnern, die aus mehreren Worten bestehen,
die ersten Buchstaben der inneren Worte gross:
toString, toByte, drawLine, BitString, BigInteger
.
Benutze die Java Dokumentationskommentare.
Benutze konsistente Einrückungen.
Methoden: mac. eine Bildschirmseite Code.
Dateien/Klassen: max. 1000 Zeilen Code.
Rechnen Sie mit Ihrer eigenen Dummheit / Beschränktheit
Denken Sie an Testhilfen: if (debug) { ... }
Plausibilitätsprüfungen: assert( a > 0 )
Sehen Sie eine Methode zum Auslesen des Objektzustands vor.
z.B. size(), empty(), full()
Minimieren Sie die *-Form in import
Statements.
Falls mehrere Implementierungen denkbar sind ist ein Interface angebracht.
Objekt-Variablen sollten nie public
deklariert werden.
Initialisieren Sie Variablen immer selbst, verlassen Sie sich nicht auf die Defaults.
public static
Variablen sollen auch immer final
sein.
Erstellt unter Verwendung von Vorlesungsunterlagen von Dr. V.-H. Winterer, Universität Freiburg, Rechenzentrum.
© Universität Mannheim, Rechenzentrum, 2000-2002.
Heinz KredelLast modified: Sat Nov 9 16:47:47 CET 2002