2010-10-23 22 views
10

Vorrei avviare un nuovo progetto che utilizzi estesamente i plug-in. So che sia Eclipse che Netbeans hanno le rispettive piattaforme Rich Client, entrambe con i rispettivi punti di forza e di debolezza.Netbeans RCP vs Eclipse RCP

Vorrei alcuni commenti su cui la comunità Overflow dello stack preferisce.

Inoltre, e soprattutto, quanto è facile con le rispettive piattaforme scrivere plug-in per le applicazioni già esistenti. Ad esempio, se termino la mia domanda e vorrei consentire a terze parti di estenderla con i propri plugin, in che modo ognuna di queste piattaforme fornisce funzionalità per questo? Avrebbero avuto bisogno della mia fonte per farlo, o queste piattaforme forniscono API di plugin verso le quali terze parti possono codificare?

risposta

6

Vorrei alcune osservazioni su cui preferisce la comunità Stack Overflow.

Appoggio la preferenza a Eclipse RCP, soprattutto perché continuo a pensare che l'IDE sia il migliore in questo momento. Eclipse RCP è anche più maturo e ha più libri e documentazioni sul web. Netbeans RCP è leggermente indietro con solo tre libri che posso trovare su Amazon.com per quanto riguarda la piattaforma.

Sono anche molto ansiosi di vedere la piattaforma di crescita con i suoi e4 progetti che semplificheranno un sacco di cose (da iniezione di dipendenza alla personalizzazione dell'interfaccia utente)

Inoltre, e cosa più importante, come è facile con le rispettive piattaforme per scrivere plugin per applicazioni già esistenti. Ad esempio, se termino la mia domanda e vorrei consentire a terze parti di estenderla con i propri plugin, in che modo ognuna di queste piattaforme fornisce funzionalità per questo? Avrebbero avuto bisogno della mia fonte per farlo, o queste piattaforme forniscono API di plugin verso le quali terze parti possono codificare?

Posso immaginare che la risposta a questa domanda non sarà davvero soddisfacente mentre entrambe le piattaforme sono progettate per essere estensibili. Sono abbastanza uguali in questo reparto.

La cosa più importante è progettare l'applicazione in modo che sia estensibile. Cioè, fornendo punti di estensione . Non è necessario fornire il codice sorgente, ma è possibile documentare i punti di estensione. Inoltre, nel caso sia necessario fornire interfacce, è sufficiente fornire javadoc senza la vera fonte.

Ripeto il punto, la progettazione dell'applicazione utilizzando RCP non significa che l'applicazione sarà automaticamente estensibile. Devi anche progettare la tua applicazione per essere così. Questo non sarà facile quando imparerai la piattaforma per la prima volta, ma alla fine ne saprai l'esperienza.

+1

Non sono d'accordo. Ora sono per un anno e mezzo in un team che sviluppa un'applicazione basata su RCP4. IMHO l'intero ecosistema Eclipse è tutto un casino. Male documentato Se si cerca in rete è del tutto impossibile distinguere, se è roba RCP3 superata o meno. I canali IRC sono morti. E infine se guardi nel codice per trovare le risposte: non ho mai visto un codice così mal progettato e documentato! Non riesco a capire se Netbeans RCP è migliore. IMHO Fai l'interfaccia utente e getta l'intera struttura di Eclipse. – Weltraumschaf

3

(Nota: io non sto parlando per la comunità qui;))
Le due principali differenze tra Netbeans ed Eclipse RCP sono:

Un altro fattore, come possibile read in this blog post è RAP (Rich Ajax Platform), che può aiutare a distribuire l'app su molte piattaforme in base a un codice sorgente. Ma questo potrebbe non riguardarti.

L'integrazione di Maven è abbastanza buona da entrambi i lati (vedere l'articolo Hello World Netbeans-RCP-Maven), ma l'integrazione di Maven3-Tycho viene principalmente sviluppata su Eclipse.
Anche in questo caso, potrebbe non essere necessario queste nuove caratteristiche Maven (o si potrebbe utilizzare un altro sistema di gestione della costruzione del tutto, come l'edera o Graddle)

+0

Grazie per la risposta. Sono consapevole delle differenze menzionate tra le due architetture. Quello che vorrei davvero sapere è quanto sia facile (per entrambi separatamente) scrivere plugin "al di fuori" dell'ambiente applicativo. Ad esempio, se completo l'applicazione e la spedisco, quanto è facile per qualcun altro scrivere plugin per esso. –

+0

@Nico: è per questo che ho citato il link a http://www.nuxeo.org/static/book-draft/osgi2.html: OSGi è progettato per facilitare le estensioni. E mi rendo conto che sai già molto di questi due ambienti;) Ma devo * anche * rispondere al cercatore occasionale degli occhiali che si imbatterà in questa domanda, quindi i dettagli sulle principali differenze tra i due modelli. – VonC

1

Considerare se i plug-in richiedano effettivamente un'architettura così complessa come forniscono eclipse RCP o NetBeans. I plugin per RCP o NetBeans possono essere creati solo dagli sviluppatori Java con strong esperienza RCP/NetBeans. Tieni presente che puoi fare (molto facile) un'applicazione RCP che non è affatto collegabile. In alcuni casi è meglio scrivere il proprio, forse meno flessibile ma più amichevole modo per collegare nuovi plugin. Puoi persino fare dei maghi per loro.

+0

Hai controllato la data del post? Comunque, grazie per la risposta, ho deciso di andare con Java Simple Plugin Framework, funziona perfettamente. –

+0

Devo perdere questo. Grazie per le informazioni su JSPF, non ne ho mai sentito parlare. –

Problemi correlati