7
votes

Productivité de développement de Ruby sur Rails vs. Java en 2009

Je sais que cela a été un sujet brûlant dans le passé, frayant de nombreuses guerres de flamme et une attitude de tribu dans les forums. Certaines années ont passé et Java a évolué: nous avons maintenant plus d'annotations pour presque tout, de beaux outils d'échafaudage tels que Appfuse ou Spring Roo, etc.

J'aimerais savoir, des personnes qui ont développé de vrais projets sur RNR et Java (tous les cadres) si vous pensez que la rapidité de développement en RNR est toujours plus rapide que Java (c'est l'atout majeur de RNR et de Beaucoup de gens la raison de le choisir) après le premier mois de développement

Veuillez noter que ce n'est pas une question sur les autres avantages tels que la vitesse d'exécution, l'évolutivité, etc. Seulement développement vitesse.

Ce n'est pas non plus une question sur d'autres alternatives (comme utiliser Jruby et combinant des mondes ou des greils), il s'agit de Java et de Ruby.

La sincérité dans ce sujet serait vraiment la bienvenue: la plupart des blogs semblent être des fans durs de l'une des deux technologies.

Merci pour toute idée!


1 commentaires

Mise à jour de ma réponse basée sur votre commentaire.


3 Réponses :


4
votes

Il semble une comparaison très pépendant et oranges si vous devez comparer "Ruby On Rails" (un cadre spécifique) et "Java" (langage de programmation à usage général) sans envisager de cadres Java spécifiques. Par exemple, les grails sont assez analogues aux rails en termes de concepts et de terminologie utilisés; Pourtant, vous disiez spécifiquement que ce n'est pas une question à propos de par exemple. Grails, à peu près Java et Ruby. Mais il semble que vous ne parlez pas seulement à Ruby la langue, comme ailleurs, vous vous référez à Ruby sur des rails spécifiquement.

En termes de vitesse de développement, je dirais qu'il n'ya pas grand chose à choisir entre Ruby sur les rails et les greils, car ils permettent tous deux permettre un développement similaire rapide.

Mise à jour: Vous dites "Les cadres et outils Java sont libres", comme si les autres ne le sont pas. Mais Groovy et Grails sont disponibles sous licences open source et sont également des téléchargements gratuits, Afaik -so aussi libre que dans la bière / la parole. Groovy pourrait également être considéré comme un cadre au-dessus de Java, étirement d'un point, comme vous pouvez appeler librement n'importe quel code Java de Groovy.

Une autre plate-forme intéressante est Django, qui fonctionne sur Jython, qui fonctionne sur la JVM. Django propose définitivement une productivité élevée et un développement rapide, et Django sur Jython offre qui fonctionne sur la JVM. Souhaitez-vous également escompter ceci car il est basé sur Python plutôt que Java? La plus grande exploitation de la productivité que les grails et Django ont sur des cadres Java-seuls sont qu'ils sont basés sur des langues dynamiques . Si vous insistez sur la collecte des frameworks linguistiques Java + Java tels que disponible à Springsource, vous perdez beaucoup d'agilité que Python et Groovy fournissent, bien que le printemps a de belles frameworks aussi si vous souhaitez descendre cette route.


1 commentaires

Je éliminant les grails parce que c'est basé sur Groovy, pas pour être un cadre. Les frameworks et les outils Java sont gratuits. C'est Java + le ou mes meilleurs frameworks disponibles aujourd'hui contre RNR



3
votes

La réponse à votre question dépend de la complexité de l'application impliquée et de la connaissance des développeurs impliqués; Un développeur avec une connaissance approfondie de Java mis au travail sur une application Ruby va être beaucoup plus lent et vice versa.

L'un des points de vente de la RNR est que le développement est censé être plus rapide, alors demandez lequel il est plus rapide tout en ne tenant pas compte de toutes les autres variables qui ont une incidence sur votre décision sont une question chargée. Java Development peut avoir des coûts de développement plus élevés, mais il y a des raisons pour lesquelles des personnes absorbent ces coûts.

Les outils que vous utilisez ne doivent pas être utilisés car le développement est "plus rapide" ou "plus facile" s'il est en conflit avec quelles les exigences vous demandent de faire.


2 commentaires

Vous avez raison, mais j'essaie de mesurer une métrique: la vitesse de développement. Je ne prends aucune décision basée seule sur elle seule. Je veux juste avoir une réponse ciblée sur ce sujet. Il a supposé le même niveau d'expérience / compétence pour les développeurs.


Je crois que j'ai abordé cela. RNR est conçu pour être plus rapide au développement au coût d'autres aspects. La plupart, sinon toutes, les langues dynamiques vont avoir des temps de développement plus rapides.



0
votes

Le guichet ou le jeu pourrait apporter "Java hétéro + certains cadre" plus près de ROR.


0 commentaires