2012-01-23 7 views
2

J'essaye d'écrire une application Eclipse rcp en utilisant seulement jruby, ou au moins avec seulement la quantité strictement nécessaire de Java. Comme seulement quelques lignes de code pur ruby ​​vous donneront une application SWT de base, j'espérais que l'écriture d'une application rcp dans jruby devrait se résumer à l'implémentation de quelques classes, comme IApplication, et ainsi de suite ... Disclaimer: J'ai travaillait avec (j) ruby ​​depuis plusieurs années mais n'a presque aucune expérience java ou rcp d'ailleurs.Application Eclipse RCP dans jruby

Ce qui semble viable est de coller avec le modèle généré par Eclipse et d'appeler les classes ruby ​​à partir de là. Cependant: est-il possible d'utiliser du rubis pur?

Il semble y avoir de la magie qui colle toutes les classes d'une application rcp ensemble. Une bonne partie de cette magie réside probablement dans plugin.xml dans le répertoire racine d'un projet rcp. Cependant, quand je regarde la ligne de commande d'une application rcp en cours d'exécution il y a beaucoup de paramètres de cadre ...

La recherche de mots-clés comme "éclipse, rcp, jruby" ne m'a pas donné le résultat que j'espérais. Il y a one project qui semble essentiellement aller dans le sens de l'appel des classes ruby ​​à partir d'un squelette java. Pas de rubis pur.

Objectif: l'application que je cherche à écrire traitera des séries temporelles. Cette tâche s'intègre bien à mon humble avis dans le concept de perspectives dans une application rcp:

  1. série chronologique Sélectionnez,
  2. construire un modèle,
  3. Analyser le résultat.

En outre, les séries chronologiques de traitement est agréable dans un environnement établi: vous pouvez avoir beaucoup de fenêtres ouvertes, les regrouper, et ainsi de suite ...

Donc, je suppose, ma première question est la suivante: do vous avez des pointeurs, comment écrire une application rcp Eclipse dans ruby? Mais je suis également ouvert à des suggestions complètement différentes pour la tâche à accomplir.

George

Répondre

0

En ce qui concerne Eclipse RCP, je suggère à l'aide Glimmer avec l'hypothèse que le développeur est déjà tout à fait à l'aise avec Java et Eclipse RCP, et peut ainsi améliorer davantage la productivité en utilisant Glimmer via JRuby. Cependant, je n'ai pas d'expérience personnelle directe, même si je sais que c'est possible en ayant des panneaux d'interface utilisateur dans l'application Eclipse RCP charger le code UI Glimmer Ruby via JRuby. D'un autre côté, pour un développeur Ruby, je ne conseille pas d'utiliser Eclipse RCP car il suit les paradigmes Java lourds (notamment en s'appuyant fortement sur XML) et a une courbe d'apprentissage relativement abrupte. Le principal avantage des développeurs Eclipse RCP pour Java était de pouvoir démarrer rapidement avec une application de bureau typique, et par "typique", je veux dire une application qui consiste en une fenêtre intitulée, une barre d'outils, une barre de menu, et un ou plusieurs panneaux, dont l'un est généralement au centre, et souvent axés sur l'édition d'un fichier (image, document, formulaire de données structurées, tableur, etc ...). Eclipse RCP fournit des solutions prêtes à l'emploi pour ces problèmes d'applications de bureau "typiques", mais même si c'est le cas, je préférerais qu'un développeur Ruby réécrive ces solutions dans Ruby et peut-être proposer un nouveau cadre en remplacement à Eclipse RCP. C'est parce que Ruby peut fournir des solutions beaucoup plus simples qui reposent sur beaucoup moins de code et évitent l'utilisation de XML.Une autre alternative est d'éviter Ruby et de travailler avec du Java pur pour résoudre vos problèmes en profitant des tables de travail, des perspectives, etc. d'Eclipse RCP. Et puis seulement une fois que vous maîtrisez Eclipse RCP, peut-être utiliser Glimmer via JRuby. Mais, cela peut prendre encore plus de temps, surtout si vous êtes déjà investi dans beaucoup de code Ruby. Si vous optez pour la première alternative (en utilisant du Ruby pur sans Eclipse RCP), je serais intéressé de voir si vous pouvez apporter des widgets ou des extensions Glimmer à Glimmer ou une bibliothèque/framework Glimmer de support. sur GitHub.

Humblement,

Andy Maleh - Créateur de Glimmer

+0

où trouve le projet de lueur? La page de projet eclipse est liée à un projet terminé en raison de métadonnées inadéquates. Les deux pages que j'ai trouvées sont laconiques et ne contenaient aucune information sur l'installation ou l'utilisation du module. – will