Frage

Ich arbeite an der Gestaltung und Erstellung einer Desktop-Anwendung.Ich denke darüber nach, Eclipse oder NetBeans als Basis für diese Anwendung zu verwenden.Allerdings habe ich noch nie auf einer dieser Plattformen gebaut.Ich persönlich neige dazu, Netbeans zu verwenden, weil es so aussieht, als ob diese Plattform eine einfachere Lernkurve darstellt.Aber ich wollte Leute fragen, die tatsächlich schon einmal auf diesen Plattformen gebaut haben, welche davon einfacher zu verwenden ist?

Meine persönliche Definition von Easer ist wie folgt:

  • Einfacher Einstieg

  • Konsistente und logische API

  • Gute Dokumentation

  • Einfach zu erstellen und bereitzustellen

Vielen Dank,

Josh

War es hilfreich?

Lösung

Ich kann nicht genug über die Eclipse RCP-Plattform sagen.Ich würde es für jede Java-Desktop-App-Entwicklung empfehlen.

Es ist kostenlos, verfügt über tolle Tutorials und ermöglicht die plattformübergreifende Entwicklung umfangreicher Desktop-Anwendungen, die das native Fenster-Toolkit des Betriebssystems verwenden, was bedeutet, dass Ihre Anwendung auf jeder Plattform nativ aussieht.Es verfügt außerdem über eine saubere API, die Ihnen nicht im Weg steht und die Bereitstellung auf jeder Plattform zum Kinderspiel macht.

Wenn Sie interessiert sind, schauen Sie sich dieses Buch an: http://www.amazon.com/Eclipse-Rich-Client-Platform-Applications/dp/0321334612

Andere Tipps

  • Einfach zu verwenden:Ich habe Erfahrung in der Entwicklung auf Eclipse und muss sagen, dass es nicht einfach ist, das Entwicklungsmodell zu verstehen.Sicherlich gibt es für grundlegende Dinge einige Assistenten, die es einfacher machen, aber für etwas komplexere Dinge ist es einfach schwierig.Ich weiß nichts über Netbeans, aber ich habe gehört, dass es einfacher ist.
  • Konsistente API:Ich denke, dass Eclipse in dieser Hinsicht gewinnt.Es läuft über OSGI (bringt allerdings etwas Komplexität mit sich) und verfügt über Plugin-Erweiterungen für so ziemlich alles.Es scheint die Plattform der Wahl für die Plugin-Entwicklung zu sein, daher kann ich davon ausgehen, dass sie zuverlässig ist.
  • Dokumentation:Eclipse gewinnt mit Abstand.Die Hilfe von der Eclipse-Website ist ausgezeichnet und die Mailingliste enthält viele Benutzerfragen.

Ich habe Eclipse als Framework-Basis verwendet, aber größtenteils nur SWT – wir haben nicht wirklich viel vom RCP verwendet.

Es hängt wirklich davon ab, was Sie schreiben, aber nach dem, was ich durch die Verwendung von Eclipse gelernt habe, eignet es sich eigentlich nur zum Schreiben einer App, bei der Sie Daten mithilfe verschiedener Ansichten bearbeiten (genau wie beim Bearbeiten von Code).

Alles, was zufälliger ist, kann dazu führen, dass Sie das Framework in eine Richtung drängen, in die es nicht entworfen wurde, und massive Fehler verursachen.

Sie werden Swing verwenden, um Ihre Anwendung zu entwickeln, da jedes andere Fenster-Framework nur dann nützlich ist, wenn Sie über Vorkenntnisse oder den entsprechenden Hintergrund verfügen.

Du kannst dich auf .... verlassen http://www.javadocking.com/ um Ihre Anwendung zu optimieren.

Wenn sich Ihre Anwendungsanforderungen stark auf die Benutzeroberfläche konzentrieren, können Sie vielleicht in eine andere Richtung wie Adobe Air schauen.

RCP hat eine größere Lernkurve, aber sobald Sie die Grundlagen erlernt haben, unterstützt die Eclipse-IDE selbst die Erstellung von RCP-Anwendungen sehr gut.Ich habe nur ein Plugin für NetBeans erstellt (keine vollwertige Anwendung) und die Lernkurve war geringer als für die RCP-Anwendung.Das Buch Eclipse Rich Client-Plattform:Entwerfen, Codieren und Verpacken von Java(TM)-Anwendungen Bietet eine detaillierte Einführung in die Erstellung von RCP-Anwendungen.

Bitte sehen Sie sich einige der Open-Source-Anwendungen an unter http://www.eclipse.org/community/rcp.php bevor ich meinte, dass RCP nur zum Erstellen eines Texteditors dient.Danke.

Ich habe eine ähnliche Aufgabe und denke auch über andere Frameworks nach.Ich habe einige Erfahrung mit Eclipse (~4 Monate RCP entwickeln) und jetzt Netbeans (ein paar Tage herumgespielt).Meiner Meinung nach sind diese Frameworks zu kompliziert.Am Ende debuggen Sie einfach in Eclipse-spezifische Plugin-Loader und versuchen herauszufinden, warum Sie eine ClassNotFoundException oder einen NullPointer erhalten.Die gleiche Geschichte mit NetBeans:Irgendwie liest irgendwo irgendwo XML-Konfigurationsdateien aus und erstellt daraus eine Benutzeroberfläche, cool, solange man dem Tutorial folgt.Und natürlich kann man kein Eclipse-basiertes RCP mit einer anderen IDE entwickeln, NB ist auch sehr eifersüchtig auf dessen Verwendung (es sei denn, man macht ein paar Hacks wie ich).Was mir fehlt, ist eine klare Möglichkeit, meine Threads vom Hauptthread bis zur ausgeführten Aktion zu debuggen.Stattdessen wird mir immer gesagt, was ich tun muss, um Ausnahmen zu vermeiden.Deshalb muss ich jedes Mal die Daumen drücken, wenn ich versuche, etwas Neues zu schaffen.Und es klappt nie beim ersten Mal.Jetzt habe ich über die Funktionen nachgedacht, die ich benötige, und nach kleineren Projekten Ausschau gehalten, die auf bestimmte Funktionen abzielen, wie z. B. Plugin-Verwaltung.Und es gibt jede Menge.Erstellen Sie einfach eine Liste der von Ihnen benötigten Funktionen und beginnen Sie mit dem Hinzufügen kleinerer Frameworks, indem Sie diese in Ihr Projekt integrieren.Dies ist auch sinnvoll, da Ihr Projekt am Ende weniger RAM verbrauchen sollte.

Ich habe ein wenig mit beiden gearbeitet, aber nur mit relativ einfachen Anwendungen.Beide scheinen ungefähr die gleichen Fähigkeiten zu haben.Ich persönlich bevorzuge die Netbeans-Plattform, da sie für mich sinnvoller ist.

Sie sollten auch JSR-296, das Swing Application Framework, in Betracht ziehen.Es bietet ein grundlegendes Framework zum Erstellen von Swing-Anwendungen, zum Verwalten von Anwendungsressourcen, Status usw., jedoch ohne so viel „Ballast“ wie Netbeans und Eclipse.Netbeans IDE verfügt über eine Reihe von Tools zum Erstellen von Anwendungen auf der SAF.Sehen https://appframework.dev.java.net/ Für mehr Information.

Ohne mehr über Ihre Anwendung zu wissen, ist es schwierig, Sie auf die entsprechenden Stärken/Schwächen der beiden Plattformen hinzuweisen.

Wenn Sie die plattformübergreifende Wartung wirklich vermeiden möchten, arbeiten Sie mit Swing.Damit erwirbst du alle Plattformen.RCP erfordert native Bibliotheken für jede Plattform.

Wir haben mit Swing gute Erfahrungen gemacht.

Ich würde Eclipse RCP verwenden, wenn Sie wirklich eine Plattform benötigen, auf der Sie aufbauen können, und nicht nur „Widgets“ wie Swing oder SWT.RCP ist absolut solide und konsistent, modular und sehr flexibel.Sobald Sie es beherrschen, profitieren Sie enorm.Da es sich um eine Plattform handelt, bietet sie Ihnen die am häufigsten verwendeten Dinge – Präferenzen, Konfigurationen, automatische Updates, Layout-Management, Branding und ähnliches.Sie erstellen ein Produkt, keine App.Aber die Lernkurve ist am Anfang ziemlich steil.

Swing hingegen ist keine Plattform, Sie werden das Rad neu erfinden, indem Sie Ihre eigenen Dinge schreiben, die ich oben erwähnt habe.Aber ja, Swing lässt sich schneller erlernen und beginnen.Ich denke, es eignet sich besser für kleinere Anwendungen mit kürzerer Lebensdauer.

Schauen Sie sich einige der Open-Source-Anwendungen an http://www.eclipse.org/community/rcp.php Bevor Sie das RCP öffnen, dient es nur zum Erstellen von Dingen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top