NetBeans

aus Wikipedia, der freien Enzyklopädie

Wechseln zu: Navigation, Suche
NetBeans

NetBeans 6.0
Basisdaten
Entwickler: Sun Microsystems
Aktuelle Version: 6.1
(28. April 2008)
Betriebssystem: Java VM
Kategorie: IDE
Lizenz: CDDL, GPL (v2, ab Version 6.0)[1]
Deutschsprachig: ja
Website: netbeans.org

NetBeans ist eine Entwicklungsumgebung, die komplett in der Programmiersprache Java geschrieben ist. NetBeans wurde für Java entwickelt, es werden aber auch Sprachen wie C, C++, Ruby, Fortran, PHP und JavaScript 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. Des Weiteren kann NetBeans als Plattform für eigene Anwendungen verwendet werden. 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.

NetBeans besteht aus sogenannten Packs, welche auf der NetBeans Plattform aufsetzen. Die einzelnen Pakete und eine Auswahl ihrer Funktionen sind:

  • Base IDE
    • grundlegende IDE Eigenschaften
    • der Editor
    • Versionskontrolle
    • Developer Collaboration
  • Java SE (Java Standard Edition)
    • Java Development (JDK 1.1 bis JDK 6)
    • Unit Test
    • Library und Template Manager
    • Java Beans support
    • visueller Swing GUI Editor (Matisse)
    • Debugger
    • Profiler
  • Web and Java EE (Java Enterprise Edition)
    • Web Applications (JSP, JSF, Apache Struts, Spring Web MVC, Hibernate, Ajax, ...)
    • JavaServer Pages Standard Tag Library (JSTL), HTML, JavaScript, PHP, und CSS Unterstützung
  • Java EE Applications
    • J2EE 1.3, 1.4 und Java EE 5 inklusive Annotations
    • Java Persistence API (JSR 220)
    • JavaServer Pages (JSP)
    • Enterprise JavaBeans (EJB 2.1 und 3) ...
    • Unterstützung für Sun Java System Application Server, GlassFish, Apache Tomcat, JBoss, BEA WebLogic, IBM WebSphere ...
    • Web Services
  • Mobility (Java Micro Edition)
    • Mobile Information Device Profile (MIDP) 1.0 - 2.1
    • Connected Limited Device Configuration (CLDC) 1.0 und 1.1
    • Connected Device Configuration (CDC)
    • diverse Emulatoren (OTA, Push-registry, SMS, CBS)
    • MIDP 2.0 Game API
    • SVG Unterstützung
    • Wireless Messaging and Multimedia APIs
    • Mobile Java ME Web service (JSR 172)
  • Ruby
    • Unterstützung für native Ruby, Ruby on Rails 2.0, und JRuby
    • Rake Unterstützung
    • Ruby Shell (IRB)
    • WEBrick
    • Mongrel web servers
    • Debugger für Ruby, JRuby und Ruby on Rails
  • C/C++
    • Editor mit Codevervollständigung ...
    • Classes Browser
    • Compiler-neutral (Unterstützung für GNU Compiler (GCC), MinGW ...)
    • Makefile wizard
    • GNU debugger (gdb)
    • Unterstütze Plattformen: Microsoft Windows, Linux, Mac OS, Solaris 10 Operating System
  • UML
    • Forward und Reverse Engineering
    • 8 Diagrammtypen (Aktivitäten, Klassen, Kollaboration, Komoponenten, Deployment, Sequenz, Zustand und Anwendungsfall Diagramm)
    • Design Patterns Unterstützung (EJB 1.1, EJB 2.0 und Gang of Four)
  • SOA, WSDL, XML
    • Identity Management Server
    • XML Schema Tools
    • XSLT Editor für Extensible Stylesheet Language Transformations
    • WSDL Editor für Web Services Description Language 1.1
    • BPEL Designer und Debugger
    • Service Assembly Editor für Composite Applications
    • JBI Java Business Integration (JSR 208)
  • NetBeans Platform


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ändnis von Java-Entwicklung beim Anwender voraussetzte. Andere Produkte führen durch zahlreiche Assistenten zur Verschleierung der 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] 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 auszukennen. Der Matisse GUI-Builder verwendet zudem einen eigenen Layoutmanager (GroupLayout), der seit Version 6 Teil der Java Platform Standard Edition ist, 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.

Hier steht ein Bildschirmfoto des Matisse-GUI-Builder bereit.

Hier ist ein Flash-Demo von Matisse verfügbar.

[Bearbeiten] Server

Es wird der Sun Java System Application Server (Versionen 8.1, 9.0 und 9.1) unterstützt, bzw. die OpenSource-Pendants zu den Versionen 9.x, GlassFish v1 und v2. 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.

Standardmäßig sind der Apache Tomcat sowie GlassFish v2 schon enthalten. Es gibt unter [1] auch ein fertiges Bundle mit dem JBoss. Somit kann NetBeans sofort für die Webentwicklung eingesetzt werden.

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 Validierung
  • 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] Codevervollständigung 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 Schnittstellengerü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)

Durch NetBeans werden folgende Versionskontrollsysteme unterstützt:

Die Unterstützung fügt sich in den typischen Programmierworkflow ein und versteckt die abstrakte Bedienung mittels bekannter Befehlen. Die IDE erkennt automatisch 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.

Typische Funktionen des Versionskontrollsystemen sind direkt über das Kontextmenü zu erreichen. Die Verwaltung von mehrere Repositories und Branches ist auf einfache Weise möglich. 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 verteilt werden.

Zusätzlich zu den entfernten Versionkontrollsystemen führt NetBeans für jeden Quelltext eine sogenannte Local History. Über diese ist es möglich auch ohne die Unterstützung einer Versionskontrolle Änderungen am Quelltext zu verfolgen und gegebenenfalls rückgängig zu machen (o.ä.).

Ausführliche Informationen zum Thema Versionskontrolle in NetBeans sind hier verfügbar.

[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 (synchrone Collaboration). Alle angemeldeten Teammitglieder können sofort jegliche Änderungen live mitverfolgen, per Chat besprechen, Code Reviews durchführen oder gar das Projekt kompilieren. Das codeBeamer Module von NetBeans erlaubt zusätzlichen Informationsaustausch mit Hilfe von Trackern, Documentshares, Foren ... (assynchrone Collaboration).

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

Eine zehn Minuten lange Demo (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. Diese sind über die Projektseite zu beziehen. Die Modularisierung von NetBeans geht so weit, dass z. B. 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 der 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 zum Beispiel für Handys. Das „CDC Pack“ unterstützt analog Connected Device Configuration (CDC) und Geräte mit „Personal Profile“.

[Bearbeiten] NetBeans Profiler

Der Profiler wird seit Version 6.0 mitgeliefert. Mit dem NetBeans-Profiler können CPU-Last und Speicheranforderung von Java-Anwendungen analysiert werden.

[Bearbeiten] NetBeans Profiler im Überblick

Um eine sichere, skalierbare Anwendung zu erstellen, benötigen Java Entwickler ein Werkzeug welches ihnen Informationen über das Laufzeitverhalten ihrer 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.

Aufgabenbasiertes Profiling: Das Messen des Laufzeitverhalten einer Anwendung ist ein nicht einfach zu handhabender komplizierter Prozess. Der NetBeans-Profiler 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

  • Bildschirmfotos vom NetBeans Profiler finden sich unter [2].
  • profiler.netbeans.org ist die Webadresse des NetBeans-Profiler-Projektes.

[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 Platform

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] 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.

[Bearbeiten] Quellen

  1. „Netbeans 6 Dual-Licensed Under GPLv2, CDDL“ auf Slashdot

[Bearbeiten] Literatur

  • Heiko Böck: NetBeans Platform 6 – Rich-Client-Entwicklung mit Java. Galileo Computing, 2007, ISBN 3836210665 (deutsch)
  • Geertjan Wielenga, Jaroslav Tulach und Tim Boudreau: Rich Client Programming – Plugging into the NetBeans Platform. Prentice Hall, 2007, ISBN 0132354802 (englisch)
  • Tim Boudreau, Jesse Glick, Simeon M. Greene, Vaughn Spurlin und Jack J. Woehr: NetBeans – The Definitive Guide. O'Reilly Media, 2002, ISBN 0596002807 (englisch)
  • Patrick Keegan, Ludovic Champenois, Gregory Crawley: NetBeans IDE Field Guide. Prentice Hall PTR, 2006 (second edition), ISBN 0132395525 (englisch)

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

[Bearbeiten] Weblinks

[Bearbeiten] NetBeans-Seiten

[Bearbeiten] weiterführende Verweise

Persönliche Werkzeuge