SWT/JFace o Eclipse RCP?
-
19-09-2019 - |
Domanda
Quali sono i motivi per scegliere l'Eclipse Rich Client Platform come base per la mia applicazione, invece di utilizzare solo SWT/JFace?
Soluzione
Eclipse RCP non è solo una GUI (SWT / JFace), ma un OSGi piattaforma basata su.
Quindi, si potrebbe scegliere il quadro RCP al fine di:
- avere una migliore definizione dei vostri diversi moduli
- gestire loro ciclo di vita, e la compatibilità versioni
- .
Se l'applicazione è solo una GUI monolitico carattere-end, RCP potrebbe essere un po 'eccessivo.
Altri suggerimenti
In aggiunta a punti VonC ha sottolineato (OSGi piattaforma di chicche:la modularità, l'isolamento del classloader, architettura estensibile), Eclipse RCP fornisce molte applicazioni a livello di servizi che potrebbero facilitare lo sviluppo complessivo del prodotto finale:
Con Eclipse RCP avrai:
- Pronto ed estensibile UI application framework
- prospettive per la separazione di discrete aree di applicazione
- vista e editori per la fornitura di blocchi riutilizzabili di UI con ciclo di vita del proprio
- Comandi astrazione con le associazioni di tasti di scelta rapida, i gestori e le associazioni di menu e barre degli strumenti
- Tutte le chicche dell'intero ecosistema eclipse
- p2 provisioning per la gestione e installazione automatica degli aggiornamenti dell'applicazione
- ECF framework di comunicazione
- BIRT strumenti di reporting
- EMF e strumenti di modellazione
- molto di più...
Naturalmente, in quest'ultima parte non significa necessariamente che devi usare il colosso che è la piattaforma Eclipse RCP per ottenere i vantaggi offrire.
A seconda dell'ambito di applicazione, si potrebbe fare bene a utilizzare solo Equinozio come sottostante OSGi contenitore e costruire il proprio client GUI in cima a quello.
Anche tenere a mente che Eclipse RCP non è più l'unico gioco in città quando si effettua una decisione di framework GUI in SWT/JFace terra.Ci sono seri contendenti che potrebbe suite vostre esigenze meglio:
- Riena Progetto Di Piattaforma sta citando le loro parole "la fondazione per la costruzione di multi-livello enterprise di applicazioni client/server"
- E4 Progetto il progetto è un work in progress per la realizzazione della prossima generazione della piattaforma eclipse RCP con molto più design modulare in mente.
Edit: Eclipse e4 progetto si è laureato da un lavoro in corso, dal momento che il mio originale risposta è stato pubblicato e ora è diventata pienamente utilizzabile applicazione rich client framework/piattaforma propria.Esso è maturato al punto dove è ora utilizzato come piattaforma di base per l'ultima Eclissi 4.2 (Indigo) IDE.
Solo i miei 2 centesimi vale la pena, ma la vaniglia SWT / JFace può essere meno di una curva di apprendimento. Mi piace il fatto che sono solo semplici interfacce grafiche, non è necessario per imparare la "piattaforma" (come nel modo RCP), basta fare i conti con i componenti SWT e costruire sei GUI! Nel complesso, lo vedo come semplice (ma poi in realtà non so molto di RCP!).
Eclipse 4 meccanismo di iniezione di dipendenza è una grande risorsa, scegliere Eclipse RCP, e ora con E4, la piattaforma può essere molto leggero,
Aggiungi a questo strumento E4 con esso editor di modello, consentono di risparmiare un sacco di tempo