Ich bin dabei, mit der Entwicklung einer ziemlich großen java-basierten Desktop-Anwendung zu beginnen. Nach dem Betrachten von JIDE-Komponenten und -Frameworks scheint es eine gute Lösung auf einen Blick zu sein. Ich würde gern von denen hören, die diese Produkte benutzt haben. Wie zuverlässig sind sie? Was ist die Lernkurve? Vor- und Nachteile?
Ich benutze JIDE seit 2,5 Jahren. Soweit es mich betrifft, ist es die beste Swing-Komponenten-Bibliothek, die es gibt (wie es nicht viele gibt). Einige der Funktionen können durch andere Alternativen ersetzt werden, wenn Sie eine Komponente von hier und eine andere von dort nehmen möchten, aber einige scheinen einzigartig zu sein. Und natürlich ist es einfacher, eine komplette Lösung anstelle von separaten Komponenten und Frameworks zu verwenden. Obwohl ich darauf hinweisen muss, dass ich hauptsächlich separate Komponenten aus der Bibliothek sowie das Docking-Framework verwendet habe, aber nicht JDAF, kann ich dazu nichts sagen.
Die Qualität war für die meisten Teile gut, obwohl es sich irgendwann so anfühlte, als ob jede Veröffentlichung einen neuen Bug einführte. Aber auch jede Swing-Veröffentlichung kann sie nicht wirklich beschuldigen. Antwortzeiten und Kundendienst im Allgemeinen waren gut, so dass Sie mit Ihren Problemen nicht allein sind. Sie scheinen auch bereit zu sein, ihre Produkte an die Bedürfnisse der Kunden anzupassen
An einigen Stellen wirkt ihre Bedienung jedoch etwas amateurhaft. Zum Beispiel wurde das Forum bei der letzten Überprüfung immer noch als Fehlerdatenbank verwendet. Sie haben auch eine große Anzahl neuer Produkte veröffentlicht, von denen einige für immer in der Beta-Phase stecken bleiben.
Ich würde empfehlen, dass Sie sich mit ihnen über die Bereitstellungsgebühr in Verbindung setzen, um sich einen Überblick über die Gesamtkosten zu verschaffen, das Produkt zu bewerten und dann die Risiken und Kosten der Einführung von JIDE im Vergleich zu den Risiken und Kosten anderer Alternativen zu berücksichtigen. Open Source ist auch nicht risikolos. Sich auf einem toten kommerziellen Produkt festzuhalten, kann schlimmer sein, als auf einem toten Open-Source-Produkt stecken zu bleiben, aber mir würde das auch nicht gefallen.
Ich habe JIDE seit fast 2 Jahren gelebt und geatmet. Als Hauptentwickler der Swing-GUI-App meines Unternehmens hat JIDE mein Leben sowohl einfacher als auch härter gemacht.
Zuerst der gute Teil.
Die Breite und Tiefe ihrer Komponenten ist unglaublich. Ihre letzte Demo hat 171 Artikel, und die meisten sind für verschiedene Komponenten. Es ist, was Swing hätte sein sollen. Die Firma ist zwar klein, aber man kann unmöglich sagen, dass sie nur "ein Produkt" haben (re @ Stephen C). Sie werden keine andere Komponentensuite finden, die alles von Datumswähler und Popup-Warnung über eine durchsuchbare und filterbare Liste und Tabelle bis hin zu Pivot-Tabelle und Docking verfügt.
Ihre Unterstützung ist surreal. Es stimmt (per @Carlos), dass das einzige Medium das Forum ist, aber die Bearbeitungszeit und die Qualität der Antworten sind wirklich erstaunlich (ich bin das 3. Top-Poster dort, also weiß ich es). Viele meiner Posts sind neue Features und API-Änderungen (z. B. private - & gt; geschützte) Anfragen, und sie erfüllen die überwiegende Mehrheit von ihnen innerhalb eines oder zweier Releases (was höchstens ein paar Wochen bis zu einem Monat bedeutet).
Sie können die Quellcode-Lizenz für den vollständigen Quellcode und die unverschmierten Debug-Jars kaufen. Ich würde vorschlagen, dass Sie es tun (ich wünschte, ich könnte eine Verkaufsprovision von ihnen bekommen), wenn Sie planen, ihre komplizierteren Produkte wie Pivot und Docking zu verwenden.
Sobald Sie ihren Quellcode haben, können Sie bei Bedarf viele Anpassungen vornehmen, da der Code sehr offen und für Erweiterungen strukturiert ist. Manchmal ist es riskant, undokumentierte Klassen / Methoden zu erweitern, aber sie haben ihren Code sehr stabil gehalten.
Und ich muss sagen, dass ihre Codequalität erstklassig ist. Es ist nicht blitzsauber (es ist so groß wie Swing selbst), aber ich war nie gezwungen, meinen Kopf zu kratzen und den WTF zu wundern.
Sie haben sehr solide Entwicklerhandbuch (scrollen Sie auf der Seite nach unten) für jede Produktgruppe. Javadoc ist ausgezeichnet. Die vollständige Demo selbst ist eine großartige Möglichkeit, die Komponenten und Funktionen zu erkunden. Dokumentation war der Hauptgrund, warum ich JIDE-Docking über FlexDock wählte (und später fand ich, dass JIDE-Docking auch viel mehr Funktionen hat).
Jetzt der schwierige Teil.
Wie von @Carlos erwähnt, führen sie bei jeder Veröffentlichung Regressionen ein. Es scheint nicht so, als hätten sie vollständig umfassende und vollautomatisierte Regressionstests, aber das ist wahrscheinlich angesichts der Komplexität und Interaktivität ihrer Produkte, insbesondere bei Dingen wie Pivot und Docking, nahezu unmöglich. Obwohl sie die Dinge sehr schnell reparieren, ist es immer ein Schmerz, warten zu müssen und dann auf eine neue Version zu aktualisieren, nur um andere Regressionen zu finden. Davon abgesehen hat die GUI-App meines Unternehmens mehrere Versionen ohne größere Probleme ausgeliefert.
Ich habe hauptsächlich viele ihrer etwas eigenständigen Komponenten wie Datumsauswahl, Sprechblase, Statusleiste, mehrseitiger Dialog usw. und zwei ihrer kompliziertesten Produkte verwendet: Pivot-Tabelle und Docking. (Sorry, kein JDAF.)
Sie sind aus guten Gründen kompliziert. OLAP ist eine eigene Industrie und Docking ist die Grundlage aller modernen IDEs. Deshalb habe ich diesen Abschnitt nicht als "den schlechten Teil" bezeichnet. Pivot und Docking sind schwer zu benutzen, nicht wegen ihrer Qualität, sondern aufgrund ihrer Komplexität .
Zum Beispiel verfügt der JIDE-Docking-Manager über 70 primitive Bean-Eigenschaften (ab 2.9.5). Einige sind voneinander abhängig, und es dauert eine Weile, bis Sie herausgefunden haben, wie Sie sie für Ihre speziellen Bedürfnisse einstellen können.
Alles in allem würde ich JIDE uneingeschränkt weiterempfehlen. Es wäre sehr schade, wenn Sie es wegen seiner Anständigkeit nicht verwenden können, in welchem Fall schauen Sie nicht einmal auf sein Demo, sonst finden Sie alles andere da draußen fehlt.
Ich wäre vorsichtig mit diesem Produkt:
Es scheint, dass Ihnen eine "verhandelbare" Bereitstellungsgebühr in Rechnung gestellt wird, wenn Sie sie an Kunden verteilen oder eine interne Masseninplementierung durchführen möchten.
JIDE Software scheint eine kleine Produktfirma zu sein. Bei einem solchen Unternehmen besteht ein erhebliches Risiko, dass es aus dem Geschäft ausscheidet oder aufgekauft wird, so dass Kunden mit einem toten Produkt im Stich gelassen werden.
Die Verwendung von JIDE wäre ein Hindernis dafür, Ihre Anwendung Open Source zu machen ... wenn dieser Schritt in Ihren Zukunftsplänen enthalten ist.