web-dev-qa-db-ja.com

JavaにRailsのようなフレームワークがないのはなぜですか?

私はRuby on Rails開発者であり、そのシンプルさと速さを気に入っています。その一方で、Java =クライアントのために開発するいくつかのプロジェクト。

私の質問は、なぜ(純粋)JavaがRailsのようなフレームワークを持っていないのですか?

私はいくつかの選択肢を検索して見つけましたが、それらには大きな欠点があります:

  • Spring-roo:小さなコミュニティ、サポートの欠如
  • Grails:欲しいものですが、主な言語はGroovyです。 Java開発者にとっては悪い
  • Play:Java-playとScala-playで2つに分かれたコミュニティで、Scalaが主な言語です。

言語(静的に型付けされている)に制限はありますか、それともコミュニティがRailsのようなソリューションを探していないからですか?

7
xaph

短い答えは、Java Web開発者は全体として、現在持っているツール/フレームワークに満足しており、Railsを好まないようです。 _そのような努力を価値のあるものにするのに十分な働き方。役立つと思われる場合は、プロジェクトを自由に開始してください。

Javaプラットフォームには、Web開発を行うための多くのフレームワークがあり、Sun/Oracleが提供するものもあれば、独自に開発したものもあります。 Javaプラットフォームは、Web開発に使用できるいくつかの言語もサポートしています。たとえば、Groovy/Grailsは、JavaプラットフォームでRuby/Railsのような環境を提供するために発明されました。

Railsのような環境がJavaのようにRubyプラットフォームを採用しなかった理由は、主にアプリケーションを開発するチームの好みと勢いの問題です。既存のJavaテクノロジーは適切に機能し(他のユーザーがそうではないことを意味するものではありません)、異なる方法で進化しました。これは主に、開発者がすでに特定のインフラストラクチャ(サーブレット、JSP、JEE)を持っているためです。 Java開発者は、アプリケーションを設計するJavaの方法を好むようです。彼らはRailsのような環境での作業を好まないかもしれません。 Groovyが選択肢であり、Groovy言語を使用してアプリケーションを開発したい場合は、Grailsを使用して簡単に開発できます。 (あなたができたがJavaコードのみを使用してGrailsアプリを開発したことに注意してください。しかし、それは困難な戦いになるでしょう。)

Javaエコシステムの最も良い点は、ニーズを満たすことを試みている人々によって作成されたことです。十分な必要性があると感じ、手助けしたい場合は、Java言語用のRailsのようなプロジェクトを自由に開始してください。多分それは:)に引っかかるでしょう

5
Kent A.

Javaは、JSP、サーブレットなどのサーバーにいくつかのテクノロジーを提供します。ただし、Rubyにはそのようなテクノロジーはありません。ネットワーキング機能はあります。 Ruby on Rails開発者がしたこと。Java開発者はフレームワークを必要としませんが、Ruby開発者は、JSPとサーブレットのサポートを提供するFAST DevelopmentとOracle自体のために行います。

0
Code Warrior