Fondamentalmente, quando usi Swing, devi impostare tutto manualmente: tu definisci la Finestra, ogni area e controllo, al suo interno definisci di nuovo ogni controllo. Per ogni controllo e area definiti dai gestori per gestire le modifiche e le azioni dell'utente, ecc. È necessario farlo perché nulla funzionerà a meno che non venga definito e implementato esplicitamente.
L'RCP lo consente anche, ma viene fornito con un sacco di componenti di livello superiore che fanno molte cose comuni. Ad esempio, è solo un paio di passaggi di configurazione per definire un'interfaccia a più documenti (MDI) o per aggiungere barre degli strumenti con icone che avviano plug-in esterni quando si fa clic su di essi.
Poiché l'RCP è ciò che alimenta Eclipse, i blocchi di base tendono a concentrarsi su applicazioni che hanno esigenze simili a un ambiente di sviluppo: ampia modifica del testo in tutti i tipi di finestre, utilizzando tutti i tipi di menu / barre degli strumenti / operazioni / ecc. Sensibili al contesto.
Quindi, se vuoi creare una piccola applicazione personalizzata con un sacco di cose non standard (come un client Twitter appariscente che ha tutti i tipi di controlli personalizzati o personalizzabili), non ha senso usare RCP. In effetti, trascinerà 5 + MB di plug-in nella tua applicazione senza alcun vantaggio reale.
Se si desidera creare un'applicazione che visualizza pagine Web, richiede un ampio sistema di guida, è necessario eseguire l'aggiornamento automatico su Internet e quel tipo di funzionalità di applicazione desktop su larga scala, allora RCP sarà perfetto.