# Netbeans RPC vs Programmierung per Hand - Vor- und Nachteile



## Guest (10. Okt 2008)

Hallo,

ich würde sagen, ich kenne mich im Umgang mit vielen Java Technologien, wie Swing, Datenbanken... ganz gut aus. Kurz: An Erfahrung mangelt es mir nicht.

Allerdings habe ich bisher alles immer "per Hand" programmiert.

Das Netbeans RPC Framework bietet allerdings die Vereinfachung vieler Konzepte (wie Matisse für GUI Entwicklung).

Mir fallen momentan folgende Vor- und Nachteile der Verwendung ein:
Vorteile:
- Einfache, schnellere Entwicklung

Nachteile:
- Schwerer nachvollziehbar
- Schlechtere Anpassbarkeit von Komponenten?!

Welche Vor- und Nachteile seht ihr durch die Verwendung eines solchen Frameworks?


----------



## Wildcard (10. Okt 2008)

Ich würde zwar eher zu Eclipse RCP tendieren, weil das der Industriestandard ist, aber grundsätzlich liegen die Vorteile in beiden Fällen doch auf der Hand:
Die Features die du geboten bekommst würden Jahre dauern selbst zu entwickeln (und vermutlich weniger leistungsfähig).


----------



## dzim (10. Okt 2008)

Also erstes Problem seh ich hier in NetBeans ;-)

Im Ernst: Eine IDE zu verwenden ist bei Java immer sinnvoll, gerade wenn man sehr lange Kostruckte hat (wie etwa x.get().get().set()...) hilft einem eine IDE unglaublich weiter - ich denke auch völlig egal, ob es sich um NetBeans, Eclipse oder eine andere handelt.
Und "schwer nachvollziehbar" - diese Aussage ist für mich eher schwer nachvollziehbar - was meinst du damit???
RCP bietet die Möglichkeit der Plug Ins, deswegen kann man auch nicht von einer "schlechteren Anpassbarkeit von Komponenten" sprechen. Wenn du was brauchst, das auch andere benötigen könnten, wirst du es wahrscheinlich im Netz auch finden.

Ich entwickle seit Jahren mit Eclipse und kann nur sagen, das ich mir ein "per Hand"-rumgefrickel gar nicht mehr - oder nur in Notfällen - vorstellen kann.


----------



## Gast (10. Okt 2008)

Mit schwerer nachvollziehbar meine ich beispielsweise die Auslagerung in XMLs. 
Wenn ich in per Hand was in Swing programmiere, dann weiss ich wo ich drehen muss um das gewünschte Resultat zu erhalten. Baue ich meine GUI mit einem WYSIWYG Editor, dann erhalte ich Code, den ich selbst kaum nachvollziehen kann.

Die mitgelieferten Funktionen sind natürlich ein kaum aufzuwiegender Vorteil.


----------



## dzim (10. Okt 2008)

wer sagt denn, dass du den WYSIWYG Editor von NetBeans nutzen musst?
Du kannst doch Swing oder whatever trotzdem noch per Hand, aber unterstützt durch die IDE programmieren - ist immer noch schneller als nur von Hand.
Und ich stimme Wildcard voll und ganz zu: Nimm Eclipse - und wenn du mal nen WYSIWYG-Editor brauchen solltest - nimm den von Istantiations (WindowBuilder....)


----------



## Wildcard (10. Okt 2008)

Ich bin gerade verwirrt. Sprichst du nun von RCP Entwicklung, oder ob du eine IDE verwenden solltest?
Das du hier davon sprichst ausreichend Erfahrung mit Java zu haben, aber dann keine IDE verwendest, kann ich ich mir eigentlich nicht vorstellen, also geht es um RCP, oder?
Das die IDE Funktionalität und die Toolchain (GUI-Builder etc.) aber herzlich wenig mit RCP Entwicklung zu tun haben ist bekannt, oder?


----------



## Gast (10. Okt 2008)

"per Hand" meint natürlich unter Verwendung einer IDE -> so masochistisch bin ich dann doch nicht


----------



## Wildcard (10. Okt 2008)

Konkretisiere doch bitte deine Frage. Suchst du nach einer Antwort ob du einen GUI Builder verwenden sollst, oder möchtest du wissen ob du auf RCP umsteigen sollst. Mir fehlt der Zusammenhang zwischen beidem.


----------



## Guest (10. Okt 2008)

Wildcard hat gesagt.:
			
		

> Das du hier davon sprichst ausreichend Erfahrung mit Java zu haben, aber dann keine IDE verwendest, kann ich ich mir eigentlich nicht vorstellen, also geht es um RCP, oder?


 - Ja, RPC ist gemeint



			
				Wildcard hat gesagt.:
			
		

> Das die IDE Funktionalität und die Toolchain (GUI-Builder etc.) aber herzlich wenig mit RCP Entwicklung zu tun haben ist bekannt, oder?


 - Jein, ich hab in Bezug auf RCP Dinge wie Matisse gleichgesetzt mit Lookup Konzept.


----------



## Gast (10. Okt 2008)

Nein,

auf kurz oder lang werde ich ohnehin die Eclipse oder Netbeans RCP ausführlicher testen.

Mich hat nur die Anzahl an Möglichkeiten bei einer RCP, die Java selbst nicht mitbringt etwas geschockt. Die Auslagerung in XMLs und die Automatisierung (bsp. GUI Builder) macht es einem RCP Einsteiger nicht leicht, noch den Überblick über die Funktionsweise seines Programms zu halten.

Daher wollte ich einfach generelle Vor- und Nachteile eines solchen RCP auflisten. Nachteile sind beispielsweise Dinge, die mich (noch) davon abhalten eine solche Plattform zu nutzen.


----------



## Wildcard (10. Okt 2008)

Gast hat gesagt.:
			
		

> Mich hat nur die Anzahl an Möglichkeiten bei einer RCP, die Java selbst nicht mitbringt etwas geschockt.


Ganz so ist es nicht. Eclipse setzt zum Beispiel auf ein (eigens implementiertes) OSGi Framework auf. OSGi wurde inzwischen von JCP adaptiert und ist damit Teil der offiziellen Java Welt. 
Das Framework beschreibt zB wie Services miteinander kommunizieren, wie das Classloading innerhalb des Frameworks zu funktionieren hat und einige Services die jedes OSGi Framework direkt anbieten muss.
Eclipse RCP ist dann nichts anderes als das du reguläre OSGi Bundles schreibst, die theoretisch auf allen OSGi Frameworks laufen. Da alles an Eclipse aber ebenfalls ein OSGi Bundle ist, kannst du vorhandene Funktionalität mitverwenden.
Nachteile gibt es praktisch keine (der Build ist etwas komplizierter), Equinox (das Eclipse OSGi Framework) ist IMO in jedem Fall besser als eine Java Anwendung from Scratch zu schreiben. Je mehr die Anwendung können soll (bzwg. von Eclipse übernehmen soll), desto mehr Bundles fügt man der Plattform hinzu. Passt eine Eclipse Funktionalität nicht ins eigene Konzept und kann man sie nicht entsprechend Anpassen, ersetzt man sie eben durch etwas eigenes.


----------

