Privacy Policy Cookie Policy Terms and Conditions NetBeans - Wikipedia

NetBeans

aus Wikipedia, der freien Enzyklopädie

NetBeans

NetBeans-5.0-Bildschirmfoto
Basisdaten
Entwickler: Sun Microsystems
Aktuelle Version: 5.5 für Java 5 (SE und EE) (31. Oktober 2006)
Betriebssystem: Java VM
Kategorie: IDE
Lizenz: CDDL
Deutschsprachig: nein
Website: www.netbeans.org

NetBeans ist eine Entwicklungsumgebung, die komplett in Java geschrieben ist. NetBeans wurde für die Programmiersprache Java entwickelt, es werden aber auch Sprachen wie C, C++, und Fortran unterstützt. Die Architektur der Software ist vollständig modular aufgebaut und durch sogenannte Module bzw. Plugins erweiterbar. Zusätzlich gibt es sogenannte Packs, welche die IDE um größere Funktionspakete erweitern. Desweiteren kann NetBeans als Plattform für eigene Anwendungen verwendet werden. Zahlreiche Entwicklungen und Funktionen aus NetBeans wurden später durch andere IDEs übernommen, z. B. durch Eclipse. Schwerpunkte bei der Entwicklung von NetBeans bildeten Funktionen, welche den Entwickler produktiver machen und ihn in den Techniken unterstützen, die er tatsächlich nutzt. Das Ziel ist eine IDE "aus einem Guss".

Das Programm ist ein Open-Source-Projekt mit einem sehr großen Nutzerkreis, einer wachsenden Community und beinahe 100 (Tendenz steigend) Partnern weltweit. Sun Microsystems gründete das NetBeans-Open-Source-Projekt im Juni 2000 und ist dessen Hauptsponsor.

Das NetBeans Projekt stellt folgende Produkte bereit:

  • die NetBeans IDE
  • das Mobility Pack für CLDC/MIDP
  • das Mobility Pack for CDC
  • der NetBeans Profiler
  • das NetBeans C/C++ Pack
  • das NetBeans Enterprise Pack
  • das NetBeans Visual Web Pack (Technology Preview)
  • die NetBeans IDE BlueJ Edition
  • sowie die NetBeans Plattform


Inhaltsverzeichnis

[Bearbeiten] Geschichte

Im Jahr 1996 wurde ein Projekt von Studenten aus der Tschechischen Republik (siehe TECFA (englisch)) ins Leben gerufen, die Java Entwicklern eine integrierte Entwicklungsumgebung zur Verfügung stellen wollten, die ähnlich der damaligen Borland Delphi IDE sein sollte. Der Name des Projektes war Xelfi. Die Studenten wünschten sich eine IDE, die insbesondere die grafische Entwicklung einer Anwendungsoberfläche (GUI) für Java Entwickler stark vereinfachen sollte.

Das Studienprojekt wurde sehr schnell zu der Firma NetBeans, die dann die IDE unter dem Namen Developer in Version 2.0 und 2.1 als kommerzielle Programme veröffentlichte. Die Developer Beta 3.0 wurde im Mai 1999 veröffentlicht. Allerdings erschien niemals die endgültige Version unter dem Namen NetBeans Developer 3.0, denn Sun Microsystems übernahm im Oktober 1999 die Firma NetBeans. Kurz darauf veröffentlichte Sun das auf Developer 3.0 basierende Forté for Java Community Edition IDE. Der Name Forté wurde gewählt, weil Sun zu dem Zeitpunkt ebenfalls eine Firma für Komponentenentwicklung namens Forté akquirierte. Im Juni 2000 wurde Forté wieder unter den Namen NetBeans der Open Source-Gemeinde zur Verfügung gestellt.

Zu der frei verfügbaren NetBeans-Version gab es weitere kostenpflichtige Versionen. Zum Beispiel Sun ONE Studio und Sun Java Studio Creator, die um spezielle Funktionen und Plugins für Web-Server- und HTML-Entwicklung erweitert wurden. Seit November 2005 ist Sun Java Studio Creator nun ebenso kostenlos erhältlich.

[Bearbeiten] NetBeans IDE

Die IDE von NetBeans unterstützt den Anwender bei einer Vielzahl von Aufgaben und hat einen Funktionsumfang, der den anderer freier Entwicklungsumgebungen weit überschreitet. Einige Funktionen, die NetBeans bietet, sind teilweise nur in kommerziellen Versionen von JBuilder oder IBM WSAD (basierend auf Eclipse) zu finden. Bisher unterschied sich NetBeans von anderen Java IDEs darin, dass NetBeans ein gewisses Grundverständniss von Java-Entwicklung beim Anwender voraussetzte. Andere Produkte führen durch zahlreiche Assistenten und verschleiern dadurch die Zusammenhänge für den unerfahrenen Nutzer. NetBeans ging bisher einen etwas anderen Weg, indem es den Anwender bei der Konfiguration und Erstellung von z. B. J2EE-Anwendungen nur rudimentär unterstützte. Inzwischen hat aber auch NetBeans einen umfangreichen Pool von Assistenten, die alle möglichen Arbeitsbereiche vereinfachen sollen.

[Bearbeiten] Eigenschaften der NetBeans-IDE im Überblick

NetBeans unterstützt zu 100% Java 5.0. Allerdings kann man mit NetBeans auch in der Beta Version Java 6.0 (Codename Mustang) entwickeln. Die NetBeans-IDE umfasst unter anderem folgende Eigenschaften:

  • Class Browser
  • voll konfigurierbarer Editor mit Syntaxhervorhebung und Code Folding
  • Ant-basierte Projektverwaltung und Unterstützung von existierenden Ant-Buildscripts
  • Unterstützung für die J2EE 1.4 Plattform
  • ermöglicht die Integration von Application Servern
  • Library Manager zur projektunabhängigen Verwaltung von Bibliotheken und Ressourcen
  • Plattform Manager zur projektunabhängigen Verwaltung von unterschiedlichen Ziel VMs (beispielsweise auch Java 6.0)
  • Unterstützung für Projekte mit multiplen Quellcodebäumen (verschiedenen Wurzeln) als Standardprojekt
  • ermöglicht die Erstellung von J2EE-Anwendungen, automatisches Hinzufügen von EJB und Web Modulen
  • Verteilen (Deployen) von Enterprise Anwendungen
  • Erzeugen von EJB Modulen und deren Verteilung als Stand-Alone Module oder Pakete in J2EE Anwendungen
  • Erzeugen von Session Beans, Entity Beans und Message-Driven Beans
  • Erzeugen von Entity Beans unter Benutzung bestehender Datenbank-Schemata
  • Erzeugen von Web Modulen welche EJBs aufrufen, Verteilung dieser wiederum als Stand-Alone oder als Paket für J2EE-Anwendungen
  • Erzeugen, Registrieren und Testen von Webservices
  • Beispielanwendungen für J2EE
  • Importunterstützung für existierende Projekte (z. B. J2EE) (auch aus fremden IDEs wie Eclipse)
  • NetBeans bietet einen Validationmechanismus für J2EE-Anwendungen
  • für die Konfiguration von EJBs, Web Services und Web Komponenten stehen visuelle Helfer zur Verfügung
  • NetBeans unterstützt das Testen der erstellten Anwendungen mittels JUnit
  • NetBeans bietet eine Unterstützung für die Entwicklung von Java Programmen für mobile Endgeräte (J2ME) wie Handys oder PDAs (Visuelle Unterstützung für das Design des Workflows und der Oberflächen, Hilfe bei der Code-Entwicklung)
  • NetBeans bietet zahlreiche Unterstützungen für die Kommunikation verschiedener Enterprise-Systeme (End-to-end support für J2ME-J2EE-Anwendungen).

[Bearbeiten] NetBeans IDE im Detail

[Bearbeiten] Entwicklung von NetBeans-Modulen

NetBeans bringt Assistenten für die Entwicklung von Modulen für NetBeans und auf der NetBeans-Plattform basierenden Anwendungen mit. So ist es sehr einfach möglich, komplexe Fat Clients zu entwickeln, die auf der NetBeans-Plattform gründen oder auch Befehlserweiterungen für NetBeans zu programmieren. Als gutes Beispiel dient ein Tutorial für eine GoogleToolbar, die direkt in NetBeans integriert werden kann.

[Bearbeiten] Matisse GUI-Builder

Der Matisse GUI-Builder ermöglicht eine einfache und intuitive GUI-Gestaltung, ohne dass es nötig ist, sich mit den Eigenarten von Swing-Layoutmanagern auskennen zu müssen. Der Matisse GUI-Builder verwendet zudem einen eigenen Layoutmanager und kann das Layout in das null-Layout konvertieren. Mittels Drag & Drop können die Komponenten der Form hinzugefügt werden, wobei Ausrichtung, Größe oder andere Eigenschaften einfach anpassbar sind bzw. durch die IDE automatisch vorgegeben werden. Textelemente können direkt in dem GUI-Builder bearbeitet werden. Matisse unterstützt JavaBeans als Komponenten und Container. Alle beschreibenden Texte können internationalisiert und aus Übersetzungstabellen (Resourcedateien) eingelesen werden.

Ein Bildschirmfoto von dem Matisse GUI-Builder steht hier bereit.

Ein Matisse Macromedia Flashdemo ist hier verfügbar.

[Bearbeiten] Server

Es wird der Sun Java System Application Server 8.1 unterstützt, zusätzlich können JBoss 4 und WebLogic 9 in der IDE registriert werden. D.h., man kann seine Webanwendungen direkt zu diesen Application Servern hin entwickeln. Außerdem wurde Apache Tomcat stark integriert.

Ein Bildschirmfoto von der NetBeans-Serverintegration steht hier zur Verfügung.

[Bearbeiten] Web Frameworks

Der Projektwizard umfasst Java Server Faces (JSF) und Struts. Dadurch ist es möglich, Projekte zu erstellen, welche eines der beiden Frameworks oder gar beide nutzen. NetBeans erzeugt automatisch alle notwendigen Konfigurationsdateien und kopiert alle benötigten Bibliotheken in die richtigen Verzeichnisse. Damit entfallen aufwendige Anpassungen der Buildskripts per Hand. Die automatische Vervollständigung unterstützt alle notwendigen Erweiterungen für diese Konfigurationsdateien. Der New File Wizard enthält Templates für JSF Managed Beans, Struts Actions oder Struts Form Beans. In bereits bestehende Projekte kann der "Framework support" hinzugefügt werden.

[Bearbeiten] Web Services

Mit der Unterstützung für Web Services ist es möglich, entsprechende Clients in J2SE Applikationen zu erzeugen. Die für die Erzeugung und den Betrieb von solchen Clients notwendigen Bibliotheken werden mit NetBeans ausgeliefert. Des Weiteren wird ein direkter Aufruf eines Web Service aus einer JSP unterstützt, ohne den Umweg über ein Servlet. Abgerundet wird das Paket mit einem neuen Wizard, welcher direkt in der IDE das Erstellen einer WSDL-Datei ermöglicht, die wiederum für die Generierung von speziellen, für einen Web Service relevanten Dateien genutzt werden kann.

[Bearbeiten] Quelltexteditor

[Bearbeiten] Editorfunktionen

Ein Bildschirmfoto des Editors aus NetBeans 5.0 wird hier bereitgestellt.

  • Javatipps, die bei der Quelltexterstellung helfen
  • Komponentenpaletten zum einfachen Einfügen von Codeschnipseln (z. B. HTML, JSP oder SQL) via Drag & Drop in eine JSP- oder HTML-Seite
  • Fehlermarkierung, die anzeigt, ob die Datei kompilierbar ist oder nicht, und einen Überblick über alle Fehler, Warnungen, Todos und Bookmarks im Quelltext gibt
  • Umschließen eines selektierten Statements mit einem try/catch-Block
  • SQL-Editor mit Syntaxhervorhebung
  • einfaches Hinzufügen von XML-Dateien, wie Dokumenttypdefinitionen (DTD) und Schemas (XSD), für die Nutzung bei der Code Completion und die Validatierung
  • Einführung einer Möglichkeit, aus vorgegebenen Sets für Tastenkürzel oder Farbschemas (z. B. im Emacs-Stil) zu wählen oder diese nach eigenen Wünschen anzupassen

[Bearbeiten] Code Completion von Java-Quelltext

Für das Vervollständigen von Klassen, Methoden und Feldern können durch die Code Completion Box Codeschnipsel aus folgenden Bereichen neu erzeugt werden:

  • Code von konfigurierbaren Vorlagen
  • Getter und Setter
  • Anonyme Innere Klassen
  • Methodenkörper für Methoden, welche überschrieben oder implementiert werden
  • try/catch-Blöcke mit passenden Exceptions

Zusätzlich kann durch die Verwendung bestimmter Abkürzungen (Camel Case Identifier) Code erzeugt werden. So kann beispielsweise die Eingabe von AIOOBE automatisch durch ArrayIndexOutOfBoundsException ersetzt werden.

[Bearbeiten] Refactoring von Java-Quelltext

Der Java-Editor beherrscht folgende Refactorings inklusive Wiederherstellen und Vorschau der Ergebnisse:

  • Rename - Umbenennen von Paketen, Klassen, Methoden und Variablen
  • Extract Method - Quelltextabschnitte innerhalb von Methoden zu neuen Methoden extrahieren
  • Change Method parameters - Signatur einer Methode interaktiv verändern (Parameterreihenfolge ändern)
  • Encapsulate Fields - Direktzugriffe auf Objektfelder in Getter- und Setter-Methoden wandeln
  • Pull Up - Eine Methode in die Superklasse verschieben
  • Push Down - Eine Methode in eine Subklasse verschieben
  • Move Class - Eine Klasse in ein anderes Paket verschieben
  • Move Inner to Outer Level - Eine innere Klasse in eine normale Klasse wandeln
  • Convert Anonymous Class to Inner - Eine anonyme Klasse in eine benannte innere Klasse wandeln
  • Extract Interface - Aus der Klassensignatur ein Interface-Gerüst erzeugen
  • Extract Superclass - Aus einer Klasse eine Superklasse extrahieren
  • Use Supertype where Possible - Casts auf Superklassen umstellen
  • Safe Delete - Testet vor dem Löschen von Feldern, Methoden und Klassen, ob Verwendungen existieren

Natürlich werden alle Referenzen im gesamten Projekt angepasst, wenn ein Refactoring durchgeführt wird. Wenn also per Change Method parameters die Reihenfolge von Parametern geändert werden soll, wird im gesamten Quelltext jeder Aufruf entsprechend angepasst. Verschiebt man eine Klasse in ein anderes Paket, so passen sich mit dem Refactoring-Vorgang alle import-Befehle an.

Außerdem kann die Verwendung von Variablen, Parametern, Methoden und Klassen aufgelistet werden (Find usages). Mittels Fix Imports können import-Anweisungen automatisch und interaktiv dem Quelltext hinzugefügt werden.

Zusätzliche Module erlauben das Auffinden von ungenutzten Variablen, leeren catch Blöcken oder toten Methoden. Durch diese Module kann die bereits sehr mächtige Refractorfunktionalität von NetBeans weiter ausgebaut werden.

[Bearbeiten] Version Control (Versionskontrolle)

Die CVS-Unterstützung fügt sich in den typischen Programmierworkflow ein und versteckt die abstrakte Bedienung mittels CVS-Befehlen. Die IDE erkennt automatisch CVS-Arbeitsverzeichnisse und listet alle geänderten Dateien im Versioning Window auf. Die Versionsunterstützung ist ebenfalls in das Projektsystem und in die Refactoring-Funktionen integriert.

Da Updating und Committing von Dateien die meistgebrauchten Funktionen von CVS sind, wurden diese Kommandos direkt in die Navigationsfenster der IDE eingefügt (Projekt, Files und Favorites). Das Versioning Window zeigt einen Überblick über den Status von Dateien, Ordnern, Paketen und Projekten. Mit dem Kommando Diff können Unterschiede zwischen den einzelnen Versionen angezeigt werden. Zusätzlich zu dem Quelltext können auch Projektmetadaten über das CVS-Tool verteilt werden.

Eine Flashdemo des neuen CVS-Supportes ist hier verfügbar.

Statt CVS kann auch Subversion (SVN) als Versionskontrolle eingesetzt werden. SVN kann nachträglich über das Updatemenü installiert werden.

[Bearbeiten] Debugging

[Bearbeiten] Java-Quelltext

Mittels des grafischen Debuggers können Haltepunkte direkt im Quelltext (auch während der Laufzeit) aktiviert und deaktiviert werden. Haltepunkte können fest, bedingt oder signalorientiert sein. Bedingte Haltepunkte werden nur ausgeführt, wenn ein berechneter boolescher Ausdruck erfüllt ist. Signalhaltepunkte reagieren zum Beispiel auf bestimmte Ausnahmen (Exceptions) oder Einstiegs- und Ausstiegspunkte von Methoden. Außerdem beherrscht der Debugger interaktive Haltepunkte (Run to Cursor und Run to method).

Zu beobachtende Variablen können mittels Code Completion (wie im normalen Editor) eingegeben werden. Während der Laufzeit können beliebige Java-Ausdrücke berechnet werden, und Variableninhalte können zur Laufzeit geändert werden. Eine besondere Übersicht vereinfacht es, große beobachtete Arrays darzustellen. Im Quelltext kann per Tooltip der Variableninhalt angezeigt werden. Ab dem JDK 5.0 können auch Methodenblöcke während der Laufzeit modifiziert werden.

Der Debugger ist multisession- und multithreadingfähig. D. h., es können gleichzeitig mehrere Programme und in jedem Programm mehrere Threads überwacht werden.

[Bearbeiten] Ant-Skripte

Das Projektsystem basiert auf einer starken Integration von Apache Ant-Skripten. Diese können angepasst und auch mittels eines Debuggers kontrolliert werden.

[Bearbeiten] Developer Collaboration

Das Developer Collaboration erlaubt es Entwicklern und Programmieren, zeitgleich und in Echtzeit in einer Art Chatmodus an einer Anwendung zu entwickeln. Alle angemeldeten Teammitglieder können sofort jegliche Änderungen live mitverfolgen, per Chat besprechen, Code Reviews durchführen oder gar das Projekt kompilieren.

Mehr zur NetBeans Developer Collaboration findet sich hier (englisch).

Eine zehn Minuten lange Demo (Macromedia Flash) findet sich hier (englisch).

[Bearbeiten] Zusätzliche Module und Plugins für die IDE

Darüber hinaus gibt es zahlreiche freie und kommerzielle Plugins für NetBeans, aus den Bereichen:

Die Modularisierung von NetBeans geht so weit, dass sogar das komplette Projektmanagement ausgetauscht werden kann. So ist es möglich ein Maven-Plugin zu installieren und darüber Java-Projekte zu verwalten.

Jeder Benutzer kann eigene Module entwickeln und diese über die NetBeans-Seiten anderen zur Verfügung stellen. Der NetBeans Plugin Catalogue findet sich hier.

[Bearbeiten] NetBeans Mobility Pack

Das Mobility Pack und das CDC Pack fügen dem IDE Komponenten hinzu, die die Entwicklung, das Testen und Debuggen von Java-Anwendungen für mobile Endgeräte ermöglichen. Dazu zählen Handys, PDAs und alle Geräte, die die Java Micro Edition unterstützen.

Es stehen zwei spezialisierte Packs zur Verfügung: Das "Mobility Pack" enthält das Java Wireless Toolkit, Emulatoren für mobile Endgeräte, und visuelle Designwerkzeuge für mobile Anwendungen; Es unterstützt die Connected Limited Device Configuration (CLDC) 1.1, Mobile Information Device Profile (MIDP) 1.0 und 2.0 für z.B. Handys. Das "CDC Pack" unterstützt analog Connected Device Configuration (CDC) und Geräte mit Personal Profile.

[Bearbeiten] NetBeans Profiler

Der Profiler kann als zusätzliches Modul in NetBeans integriert werden. Mit dem NetBeans-Profiler können CPU-Last und Speicheranforderung von Java-Anwendungen optimiert werden.

[Bearbeiten] NetBeans Profiler im Überblick

Um eine sichere, skalierbare Anwendung zu erstellen, benötigen Java Entwickler ein Werkzeug welches ihm Informationen über das Laufzeitverhalten seiner Anwendung zur Verfügung stellt. Der NetBeans Profiler ist solch ein Werkzeug. Durch innovative Techniken erlaubt es dem Entwickler seine Anwendung mit wenig Aufwand zu messen. Die Ergebnisse des Profilers sind klar strukturiert und einfach zu interpretieren. Die zu messenden Anwendungen können sich auf dem lokalen oder einem entfernten System befinden.

Folgende Funktionen beherrscht der Profiler:

  • Überwachung der CPU-Geschwindigkeit und CPU Ausführung
  • Speicherbenutzung
  • Speicherüberwachung mit Speicherlecktests
  • Überwachung von nebenläufigen Prozessen (Threads) und deren Status
  • Unterstützung für das JDK 1.4.2, JDK 5.0 und JDK 6.0
  • Profiling von laufenden Anwendungen
  • Speichern von Profiler-Abbildern für die nachträgliche Bearbeitung
  • Profiling von entfernten VMs (über Netzwerkprotokolle)

Durch die Integration in den NetBeans IDE Arbeitsablauf erlaubt es der Profiler Performance Probleme und Speicherprobleme aufzuspüren.

Der Profiler basiert auf einem Forschungsprojekt der Sun Laboratories, welches sich speziell mit Analysetechniken für Java Anwendungen beschäftigt. Der Profiler nutzt diese Methoden um zur Laufzeit dynamisch den Bytecode zu untersuchen und mittels spezieller Algorithmen auszuwerten. Dadurch kann der NetBeans Profiler auch komplexe und große Java Anwendungen behandeln.

Der Profiler nutzt für eine geringe Belastung der Laufzeittests eine dynamische Laufzeit-Instrumentalisierung. Dabei bleibt das gespeicherte Programm unangetastet. Die Profiler-Marken für die statistischen Auswertungen werden vor dem Ausführen im Arbeitsspeicher hinzugefügt. Mit dynamisch ist gemeint, dass die Instrumentalisierung jederzeit aktiviert und deaktiviert werden kann, ohne eine Anwendung beenden oder neu starten zu müssen.

[Bearbeiten] Eigenschaften des NetBeans Profiler

Einige der NetBeans Profiler Eigenschaften im Detail:

Schlanker Messprozess: Durch den Profiler können gezielt einzelne Abschnitte der Anwendung gemessen werden. Die restlichen Programmteile laufen ohne Beeinflussung des Profilers. Die zu messenden Teile der Anwendung und die Untersuchungsaspekte (CPU, Speicher, ... ) können zur Laufzeit geändert werden.

Keine Beeinflussung der Programmausführung: Die Anwendung kann wie gewohnt gestartet und ausgeführt werden, ohne auf den Profiler Rücksicht zu nehmen. Der Profiler kann jeder Zeit zur Programmausführung hinzugeschaltet werden. Wenn der Messvorgang beendet ist, verbleiben keine Instruktionen o.ä. innerhalb des Anwendungscodes.

Aufgaben basiertes Profiling: Das Messen des Laufzeitverhalten einer Anwendung ist ein nicht einfach zu handhabender komplizierter Prozess. Der NetBeans Profilier bringt einige Vorgaben mit, die Standardaufgaben (Monitoring, Speichernutzung,...) im Profiling bereits abdecken. In diesen Voreinstellungen sind bereits die wichtigsten Konfigurationen getroffen und es bedarf nur noch wenigen Anpassungen. Erfahrene Nutzer können selbstkonfigurierte Messungen durchführen.

[Bearbeiten] Weitere Informationsquellen für den NetBeans Profiler

  • Screenshots vom NetBeans Profiler finden Sie hier.
  • Die Webseite des NetBeans Profiler Projektes finden Sie hier.

[Bearbeiten] NetBeans C/C++ Pack

Das NetBeans C/C++ Development Pack ermöglicht es Entwicklern, die Vorteile von NetBeans IDE 5.5 nicht nur für Java-, sondern auch für C- und C++-Entwicklung einzusetzen. Das bedeutet konkret:

  • C- und C++-Unterstützung im Editor
  • C/C++-Projekt-Vorlagen
  • Dynamischer Klassen-Browser
  • Erstellen und Einbinden von Makefiles
  • Debugger
  • Einfache Erweiterbarkeit

[Bearbeiten] NetBeans Enterprise Pack

Das Enterprise Pack ist eine Erweiterung von NetBeans IDE 5.5, die das Entwickeln von Java Enterprise-Anwendungen noch mehr erleichtert.

Es ist nützlich für Entwickler, die Anwendungen basierend auf Serviceorientierter Architektur (SOA) schreiben, testen und debuggen, und dabei XML, BPEL, und Java Webservices benutzen. Das Pack enthält visuelle Design-Werkzeuge für UML Modellierung, XML schema, und Webservice-Orchestration, und es unterstützt sichere Webservices mit Identity Framework. Außerdem installiert es eine BPEL engine und einen Identity Management-Server als Teil der Sun Java System Application Server-Installation.

[Bearbeiten] NetBeans Plattform

Die NetBeans Platform ist eine Anwendungs-Laufzeitumgebung – eine Basis für eine generische große Desktop-Anwendung. Die meisten Anwendungen haben ähnliche Anforderungen: Menüs, Dokumentenmanagement, Änderungen von Einstellungen und so weiter. Die NetBeans-Plattform erstellt beispielsweise Menüs oder generiert Code für das Speichern von Einstellungen. Der Entwickler muss seinen Anwendungscode als ein NetBeans-Modul erzeugen und dieses der Plattform hinzuzufügen, um eine plattformunabhängige Anwendung zu erstellen. Die NetBeans-Plattform soll es ermöglichen, dass Entwickler sich auf die Geschäftslogik als wesentliche Aufgaben konzentrieren und somit Zeit und Aufwand sparen.

[Bearbeiten] Vorteile der NetBeans-Plattform

[Bearbeiten] Schneller am Markt

Die NetBeans-Plattform stellt allgemeine Dienste für Desktop-Anwendungen zur Verfügung, wie Fenster- und Menü-Management, Einstellungsverwaltung und weitere. Durch die Wiederverwendung zahlreicher Komponenten soll die Entwicklung von unötigen und langweiligen Aufgabenwiederholungen befreit und der Fokus auf die eigentliche Programmlogik gesetzt werden.

[Bearbeiten] Zugänglichkeit und Konsistenz der Benutzeroberfläche

Benutzbarkeit ist eine Anforderung an alle Anwendungen, vor allem wenn es sich um kommerzielle Programme handelt oder Werkzeuge die eine große Verbreitung finden. Die NetBeans-Plattform stellt ein Framework für die Oberflächengestaltung zur Verfügung, das die Aspekte Konsistenz, Zugänglichkeit und Benutzbarkeit vollständig berücksichtigt. Das Benutzerinterface der NetBeans-Plattform entspricht den Richtlinien des Java Look and Feel. Durch Reduzierung des Entwicklungsaufwandes und Wiederbenutzung von Komponenten sollen die plattformbasierenden Anwendungen robuster werden, weniger Tests und weniger Fehler aufweisen. Dadurch soll die Gesamtentwicklungszeit eines Projektes reduziert werden.

Da die Zugänglichkeit heute immer mehr an Bedeutung gewinnt, hilft die NetBeans-Plattform, basierend auf Java Swing, diese Anforderungen zu erfüllen. Mit der NetBeans-Plattform können mit relativ wenig Aufwand Anwendungen erstellt werden, die der Section 508, the United States Government's regulations on accessibility entsprechen.

[Bearbeiten] AutoUpdate für auf NetBeans basierende Anwendungen

Anwendungen die auf der NetBeans-Plattform basieren, bestehen aus der Laufzeitumgebung und den Anwendungsmodulen. Diese umfassen die Business Logik der Anwendung (Architektur (Informatik)). Über die AutoUpdate-Funktion der Plattform können neue Module schnell verteilt werden oder ältere durch neuere Versionen ersetzt werden.

Somit müssen nicht alle Kunden der Anwendung durch den Hersteller dazu bewegt werden, auf neue Versionen der Anwendung umzustellen. Die Updates können modulweise verteilt und eingespielt werden, wodurch unterschiedliche Funktionen durch unabhängige Entwicklungsteams erstellt und ausgeliefert werden können. Durch den modularen Aufbau können Entwicklungen, welche noch nicht fertig gestellt sind, andere, fertig gestellte Module nicht in ihrer Auslieferung behindern.

[Bearbeiten] Plattformunabhängigkeit

Die NetBeans-Plattform basiert auf internationalen Standards und wiederverwendbaren Komponenten. Dadurch sind Java Anwendungen, die auf ihr basieren, automatisch lauffähig für eine Vielzahl von Systemen, wie Windows, Linux oder Mac OS-X, sofern eine Installation von Java 2 Standard Edition vorhanden ist. Da sich die Anforderungen und das Umfeld für Anwendungen ständig ändern, ist es wichtig, dass eine Anwendung so entworfen wird, dass sie erweiterbar und für viele Zielsysteme verfügbar ist. Dies alles leistet die NetBeans-Plattform und spart somit Zeit und Kosten. Anwendungen, die auf der NetBeans-Plattform basieren, benötigen keine weiteren Bibliotheken oder Komponenten außer der Java 2 Runtime Environment.

[Bearbeiten] Wiederverwendbarkeit und Planungssicherheit

Die Plattform stellt eine Reihe von Funktionen und Modulen zur Verfügung, die auch Teil der NetBeans-IDE sind. Diese können für die eigenen Anwendungen genutzt werden. Sollten einige nicht den eigenen Anforderungen entsprechen, so kann man diese Module als Basis nutzen und um seine eigenen Aspekte erweitern oder ändern.

Da zu der Plattform auch der Sourcecode zur Verfügung gestellt wird, welcher unter einer Open-Source-Lizenz steht, kann notfalls die Plattform auch geändert oder weiterentwickelt werden. Dies bedeutet Planungssicherheit und Freiheit.

[Bearbeiten] Eigenschaften der NetBeans-Plattform

Einige Eigenschaften der Plattform sollen hier vorgestellt werden:

[Bearbeiten] User Interface Management

Fenster, Menüs, Symbolleisten und andere Komponenten werden durch die Plattform zur Verfügung gestellt. Dadurch kann sich der Entwickler auf die eigentlichen Aktionen konzentrieren, und der erstellte Code wird schlanker, besser und hat weniger Fehler. Wie in Swing üblich, kann die Plattform auch um eigene grafische Komponenten erweitert werden.

[Bearbeiten] Daten- und Gestaltungsmanagement

Durch die Plattform wird bereits eine große Palette an mächtigen Werkzeugen zur Verfügung gestellt, mit denen Daten angezeigt und manipuliert werden können.

[Bearbeiten] Editor

Der mächtige NetBeans-Editor kann durch die Anwendung genutzt werden. Die Werkzeuge des Editors lassen sich schnell und einfach erweitern und auf die Anforderungen der Anwendung zurechtrücken.

[Bearbeiten] Einstellungsverwaltung

Durch die NetBeans-Dateisysteminfrastruktur können abstrakte Daten verwaltet werden. Egal ob Dateien lokal vorliegen oder entfernt, via FTP, CVS oder in einer Datenbank, der Zugriff auf sie ist transparent. Die dafür verantwortlichen Module sind wohlgetestet und einfach zu bedienen. Natürlich können auch neue Arten der Datenspeicherung für die Plattform ergänzt werden. Alle Anwendungen, die auf der NetBeans-Plattform erstellt wurden, sind internetfähig.

[Bearbeiten] Das Wizard Framework

Die NetBeans-Plattform bietet einfache Werkzeuge, um erweiterbare, anwenderfreundliche Assistenten zu erstellen, welche den Anwender durch komplexe Sachverhalte leiten.

[Bearbeiten] Konfigurationsmanagement

Durch die NetBeans-Plattform werden sich wiederholende Aufgaben, wie der Remotedatenzugriff, das Management und die Speicherung, von Benutzerkonfigurationen übernommen. Somit besteht die Anwendung aus der Plattform und dem logischen Code, der die eigentliche Funktionalität bereitstellt.

[Bearbeiten] Speichermanagement

Das Speichermanagement beruht auf der Abstraktion eines dateibasierten Datenzugriffs. Dateien oder "Files" sind im NetBeans-Konzept lokale Dateien, entfernte Dateien auf einem FTP-Server, in einem CVS Repository oder in einer Datenbank. Durch die Abstraktion des Datenzugriffs ist der Zugriff auf Dateien für alle anderen Module transparent, sprich diese müssen sich nicht um den eigentlichen Datenzugriff kümmern, sondern können dies über das Speichermanagementmodul der Plattform realisieren.

[Bearbeiten] Plattformunabhängigkeit

Da die Applikation-Plattform, wie die NetBeans-IDE, vollständig in der Sprache Java geschrieben ist, sind Anwendungen, die auf der NetBeans-Plattform basieren, von Natur aus nahezu unabhängig von einem Betriebssystem (soweit eine VM dafür portiert wurde). Dadurch laufen alle auf der NetBeans-Plattform basierenden Anwendungen auf allen Systemen, welche mit einer zu Java 2 kompatiblen virtuellen Maschine (1.3 und höher) ausgerüstet sind. Dies spart Entwicklungszeit und Kosten für Migrationen und erleichtert die Wartung sowie den Support für die Anwendung.

Die Anwendungen, die auf der NetBeans-Plattform basieren, laufen damit zum Beispiel auf folgenden Betriebssystemen, soweit diese mit einer passenden Java-VM ausgestattet sind:

  • Windows
  • Linux
  • Mac OS-X
  • Solaris
  • HPUX
  • OpenVMS
  • OS/2
  • ...

Anwendungen, die Standards unterstützen und plattformunabhängig entwickelt wurden, haben eine größere Marktchance durch die breitere Zielgruppe. Dies wird durch die NetBeans-Plattform unterstützt.

[Bearbeiten] Weitere Java-IDEs

[Bearbeiten] Literatur

Zu NetBeans gibt es leider nur wenig Literatur, daher seien hier nur drei, allerdings sehr empfehlenswerte Bücher genannt:

  • NetBeans - The Definitive Guide
von Tim Boudreau, Jesse Glick, Simeon M. Greene, Vaughn Spurlin und Jack J. Woehr
O'Reilly Media, 2002,
ISBN 0596002807 (englisch)
  • NetBeans IDE Field Guide
von Patrick Keegan, Ludovic Champenois, Gregory Crawley,
Prentice Hall PTR, 2006 (second edition)
ISBN 0132395525 (englisch)
(Beispielkapitel)
  • Introduction to XML using NetBeans
initialer Artikel von Richard T. Watson, University of Georgia,
Wikibook, 2005 (englisch)
siehe: b:en:Introduction_(XML)

Eine Liste von Büchern über NetBeans und Java Büchern, die NetBeans nutzen, findet sich auf den NetBeans-Internetseiten.

[Bearbeiten] Weblinks

NetBeans Seiten

weiterführende Links

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -