Javaにdjango/RoRに相当するものがあるかどうかを調べていました。
私が見つけた:
これらのフレームワークを試したことがある人はいますか、それとも他のフレームワークを知っていますか? django/RoR よりも高速ですか?
Javaにdjango/RoRに相当するものがあるかどうかを調べていました。
私が見つけた:
これらのフレームワークを試したことがある人はいますか、それとも他のフレームワークを知っていますか? django/RoR よりも高速ですか?
私が Grails に出会ったのは約 1 年前で、振り返ることはありませんでした。Ruby on Rails (元は Groovy on Rails という名前でした) から多くのアイデアが取り入れられており、プラグイン/拡張機能の豊富なエコシステムがあります。Grails とその基礎となる Grails 言語 (Java のスーパーセット) により、プログラミングが楽しくなり、本質的な部分に集中することができます。その GORM 機能 (休止状態の上のレイヤー) も非常に強力であり、プラグイン システムに加えて、チェックアウトする 2 つの大きな理由の 1 つです (Java アプリでも使用できます)。
バージョン 1.2 が間もなく登場するので、機能が豊富で、すべての開発者がツールベルトに持つべきものとして十分に成熟していると思います。
パフォーマンスに関しては、純粋な Java よりも確実に劣りますが、Spring / Hibernate / J2EE のすべてを最適化するために利用でき、コードの重要な部分についてはいつでも純粋な Java にドロップできます。静的メソッド解決を使用して Groovy コードの一部を実行できるようにする最近の実験がいくつかありました。これは、invokedynamic サポートと相まって、パフォーマンスが大幅に向上するはずです。
Java でチェックアウトする他のものは、Spring Roo と AribaWeb です。
追加資格に基づく更新
スケーラビリティ、生産性、ドキュメント、適切なリソース消費
Stripesは非常に軽量なようで、Convention over Configuration を採用しています。
支柱、ウィケット、レール、タペストリーを使用したので、タペストリー 5を検討することをお勧めします。
サポートしています
唯一の欠点はドキュメンテーションです。これは優れていますが、少し簡潔ですが、ユーザー グループ/メーリング リストは非常に活発で、ほとんどの質問には適切かつ熱心に回答されています。
(また、T4,3,2,1..... ではなく、T5 のみを確認してください。これらは現在のバージョンとは大きく異なるためです)
理由の詳細はこちら.
Lift Frameworkを試すことを検討してください。それは本当に素晴らしいです。
アプリケーション スタック (言語、フレームワークなど) を検討するときはいつでも、何を解決しようとしているのか、どのようなプログラミング スキルを自由に使用できるのかを考慮する必要があります。経験豊富な Java プログラマーは、経験の浅いプログラマーと比較して、Groovy および Grails スタックで非常に生産的であることがわかりました。
懸念事項として次の点に言及しています。
お役に立てれば。
Spring Rooは、ソリューションであると主張しています。
Play フレームワークについては知りませんが、2 番目の質問に答えるために、Google のWebtoolkitを使用していくつかのプロジェクトを行っています。チェックする価値があるかもしれません。
幸運を!
JRoRはどうですか
私は grails を使用してプロジェクトを実行しましたが、一部のタスクでは非常に高速であることがわかりましたが、デバッグ時に困難になる多くの「魔法」が舞台裏で実行されます。
また、ドキュメントが不自然だと感じたため、何度も何度もドキュメントを読んでいることに気付きました。簡単な例は、アクションがフィールドとして定義されているコントローラーです (アクションをメソッドと考えるのは自然なことです...)。静的フィールドに配置すると、フィールドをトランジェントにするなどの魔法を行う特別な単語を知る必要があるGORMについて何か言えます...注釈もオートコンプリートもありません...マニュアルのみです。
プレイは!開発が驚くほどシンプルで高速で、習得も覚えも簡単であることがわかりました。コミュニティは Grail よりも小さいように見えますが、Grail よりも活発で、回答も迅速です。唯一の欠点は、サーブレットの API に依存しないため、一部のサードパーティのフィルターやその他のものを統合するのは困難ですが、不可能ではないことです。Play アプリケーションを従来の Web サーバー パッケージにデプロイできることに注意することが重要です。
私の意見では、Grails は素晴らしいものですが、生産性を高めるには Grails で多くの経験を積む必要があります。そうしないと、マニュアルで多くの時間を失うことになります。そうでない場合は、Play をお勧めします。特にGroovyに慣れていない場合
自分で試したことはありませんが、私の大学ではストライプの使用を楽しんでいます
本とすべてがあります。
SpringMVCとHibernateがRubyonRailsと同じ使いやすさを提供するかどうかはわかりません(実際には、はるかに複雑です...)。PlayFrameworkはRubyonRailsに非常に似ていると思いますが、私はそれを自分で使用せず、スクリーンキャストを見てドキュメントを読んだだけなので、RoRを使用した開発と同様の体験をしたい場合は、次のことができると思います。 HibernateでSpringMVCの代わりにPlayのようなものを試してみてください。後者の利点は、それが非常に強力であり、たとえば既存のデータモデルに適応できることです(RoRで私が知っていることから、RoRではそれほど些細なことではありません)。検討できるもう1つのフレームワークは、GroovyonGrailsです。Javaを使用していませんが(Groovyを使用しています)、非常にRoRに似ています。内部でSpringとHibernateを使用します(私が m正解)そしてGroovyの利点は、Javaの厳密な静的型付けがないことです。Ruby on RailsとDjangoは、それが実装されている言語の動的な性質から大きな恩恵を受けています。これは、静的な型付けのためにJavaが見逃している機能です。
編集:ああ、あなたはすでにあなたの質問でGrailsに言及しました...
Stripesフレームワークを幅広く使用しており、非常にうまく機能します。それは本当に軽量であり、それはあなたのアプリケーションのすっきりとしたデザインにあなたを導きます。それは基本的にあなたから開発の退屈な部分を隠すだけなので、あなたは楽しいものに集中することができます(そのような例の1つはインデックス付きのプロパティです)。
AribaWebはGroovyもサポートしています。http://aribaweb.org/で他の機能をチェックし、Web開発を生産的にするためのアプローチを見つけてください。
Play フレームワークについてはわかりませんが、Spring MVCまたはStrutsを組み合わせれば、 Hibernateと同様の機能が提供されます。
利用可能な他の多くのオプションがあります。基本的に、MVC フレームワーク (Spring MVC、Struts、Wicket) と ORM ツール (Hibernate、iBatis) が必要です。もちろん、必要なコンポーネントを自分で統合する必要がありますが、これはすでに何度も行われており、多くの情報を見つけることができます。
VRaptorはどうですか?- Spring を DI コンテナーとして使用し、Rails Action-Pack に似たコントローラー/ビュー エンジンを使用します。
grails がオプションである場合 (これは実際には Java ではなく、Groovy フレームワークです)、Scala ベースのLiftフレームワークもオプションになります。
もう 1 つのオプションはRIFEです。これは、Java のままで RoR の最小構成を保持しようとします。あなたのリストでは、Play Framework だけがその機能を持ち、他のものは JVM 上にありますが、Java ではありません (それがあなたにとって重要である場合)。
私はhttp://www.ninjaframework.org/をマイクロサービスに使用してきましたが、これはほとんどの mvc パラダイムに非常に近いものです。レール、asp.net mvc、または nancyfx を使用した場合は、問題ありません。それはその哲学に非常に近く、本当に素晴らしく、テストが簡単です。ドキュメントがあまりないという欠点がありますが、mvc パターンにかなり厳密に従っています。フレームワークで独自のものを使用しないため、純粋な Java ベースのソリューションです。したがって、これはドキュメントの不足を補います。