Essentiellement, lorsque vous utilisez Swing, vous devez tout configurer manuellement: vous définissez la fenêtre, chaque zone et contrôle, à l'intérieur de laquelle vous définissez à nouveau chaque contrôle. Pour chaque contrôle et zone que vous définissez, des gestionnaires pour gérer les modifications et les actions de l'utilisateur, etc. Vous devez le faire car rien ne fonctionnera que si vous le définissez et l'implémentez explicitement.
Le RCP le permet également, mais est livré avec un tas de composants de niveau supérieur qui font beaucoup de choses courantes. Par exemple, il suffit de quelques étapes de configuration pour définir une interface à documents multiples (MDI) ou pour ajouter des barres d'outils avec des icônes qui lancent des plug-ins externes lorsque vous cliquez dessus.
Étant donné que le RCP est ce qui alimente Eclipse, les blocs de base ont tendance à se concentrer sur les applications qui ont des besoins similaires à un environnement de développement: édition de texte étendue dans toutes sortes de fenêtres, en utilisant toutes sortes de menus / barres d'outils / opérations / etc. Contextuels.
Donc, si vous voulez créer une petite application personnalisée avec beaucoup de choses non standard (comme un client Twitter flashy qui a toutes sortes de contrôles personnalisés ou skinnables), il n'y a aucun intérêt à utiliser RCP. En fait, il fera glisser 5 + Mo de plug-ins dans votre application sans aucun avantage réel.
Si vous souhaitez créer une application qui affiche des pages Web, nécessite un système d'aide complet, doit effectuer une mise à jour automatique sur Internet et ce type de fonctionnalité d'application de bureau à grande échelle, alors RCP sera un excellent choix.