質問

私が見ごろがあれば相当django/RoR java.

私は見つかり:

は誰でもいっその枠組みるようにするかどうかを知っていますか。いよdjango/RoR?

役に立ちましたか?

解決

私は約1年前にGrailsを発見しましたが、振り返ることはありません。 Ruby on Rails(元々はGroovy on Railsという名前でした)から多くのアイデアを取り入れており、プラグイン/拡張機能の豊富なエコシステムを備えています。 Grails、および基礎となるGrails言語(Javaのスーパーセット)を使用すると、プログラミングが楽しくなります-必需品に本当に集中できます。 GORM機能(休止状態の最上位のレイヤー)も非常に強力であり、プラグインシステムに加えて、チェックアウトする2つの大きな理由の1つです(Javaアプリでも使用できます)。

バージョン1.2がまもなくリリースされると、機能が豊富で成熟しており、開発者がツールベルトに入れるべきものになります。

パフォーマンスに関しては、純粋なJavaのパフォーマンスよりも明らかに劣っていますが、最適化するために春/冬眠/ J2EEのすべてを使用できます。また、いくつかの重要なコードについては常に純粋なJavaにドロップできます。静的メソッド解決を使用してGroovyコードの一部を実行できるようにする最近の実験がいくつかあり、invokedynamicサポートと相まって、パフォーマンスが大幅に向上するはずです。

Javaでチェックアウトする他のものは、Spring RooとAribaWebです。

追加の資格に基づいて更新

  

スケーラビリティ、生産性、   ドキュメントとまともなリソース   消費

  • スケーラビリティ-実績のあるJava / Spring / Hibernateスタックを入手できますが、Grails自体が多くを提供しているとは言えません。
  • 生産性-これがGrailsを使用する主な理由です。パフォーマンスのオーバーヘッドはありますが、開発時間/生産性がより重要な場合はGrailsを使用します。
  • ドキュメント-grailsのドキュメントは素晴らしく、Grailsだけで書かれた良い本が少なくとも3つあります。コミュニティは繁栄しており、非常に役に立ちます。
  • リソースの消費-それがトレードオフです。 Grails(部分的には基礎となるJavaスタックのため)はリソースを大量に消費します。私がグーグルのようなものを構築していたなら、Grailsは選択肢ではありません。ただし、あらゆる高度なWebアプリでは、キャッシングソリューションでうまくいくので、ここでも同じことが言えます。

他のヒント

ストライプは非常に軽量であるようで、設定よりも規約を取り入れています。

ストラット、改札、レール、および使用済みタペストリー、 Tapestry 5 をご覧になることをお勧めします。

サポート

  • コンテナクラスのリロード(変更を行うたびにwebappを再起動する必要はありません)
  • 開発時間の短縮&生産性の向上-宣言的な配線を備えたコンポーネントベースのモデルを使用
  • 最小限の設定。ほとんどの場合はコードにあり、設定よりも規約などがあります。
  • 拡張する基本クラスはありません
  • テンプレートファイルで使用するための式言語
  • 優れたajaxサポート
  • 優れたデバッグサポート、クライアント側とサーバー側の両方
  • 適切なデータアクセス統合
  • アクティブなコミュニティ
  • ゼロからパフォーマンスで書かれたを念頭に置いてください。例えばページプーリング(リソース使用量を最小限に抑えるため)、ページ圧縮、空白の削除、すべての動的コードはネイティブにコンパイルされます。
  • 良好なBeanとフォームのサポート-一般的なタスクを簡単にします。 1行のテンプレートコードと最小限のスケルトンサーバーバックエンドを使用して、並べ替え可能なデータベースバックアップドリッドをコーディングできます。

唯一の欠点は、ドキュメントですが、これは優れていますが、少し簡潔ですが、ユーザーグループ/メーリングリストは非常に活発であり、ほとんどの質問はよく回答されます。熱心に。

(また、T4、3、2、1 ..ではなくT5のみを確認してください。これらは現在のバージョンとは非常に異なるためです)

なぜこちら

Lift Framework を試してみてください。本当に素晴らしい。

アプリケーションスタック(言語、フレームワークなど)を検討しているときはいつでも、何を解決しようとしているか、どのようなプログラミングスキルを自由に使用できるかを考慮する必要があります。経験豊富なJavaプログラマーは、ジュニアプログラマーと比較して、GroovyとGrailsスタックで非常に生産的であることがわかりました。

懸念事項として以下を挙げています:

  • スケーラビリティ:正確には何の面で? (ページビュー/秒、#トランザクション/秒など)一般に、Groovy& Grailsはページのレンダリングに関してスケーリングしますが、ORMを使用するアプリケーションスタック(Grailsの場合はGORMの場合)と同様に、考慮すべきオーバーヘッドがいくつかあります。
  • 生産性:ここでの主な利点の1つ-迅速なプロトタイピング、迅速な開発は、Groovy& Grailsは、JavaまたはRubyで開発したスタッフに、Grailsフレームワークが実際に「内部」で何をしているかを理解してもらうのに役立ちます。 Web 2.0のようなページを非常に迅速に作成するのに役立つUIのプラグインがたくさんあります。
  • ドキュメント:Groovy&向けに書かれた質の高い参考書が増えています。グライル。どちらも過去2年間で非常にうまく成熟しています。エラー/問題が発生した場合、Grailsフレームワークの内部動作の多くに関して、物事は確かに十分に文書化されていません(フレームワークからの出力の多くは、エラーに直面したときにあいまいまたは存在しません)。袖をまくり上げて、内部の仕組みを順を追って進めようとするなら、このスタックに失望することはありません。繰り返しますが、経験豊富なプログラマーはこれを第二の性質と見なしますが、多くの若い人たちは時々フラストレーションで手を上げるかもしれません。
  • リソースの消費:オーバーヘッドがありますが、今日見られるほとんどのハードウェア(ローカルまたはクラウド)では、特定のアプリケーションインスタンスの物理リソースの消費についてあまり心配しません。

これがお役に立てば幸いです。

Play Frameworkについては知りませんが、2番目の質問に答えるために、 Googleの Webtoolkit でいくつかのプロジェクトを行っています。 チェックアウトする価値があります。
がんばって!

JRoR

について

自分で試したことはありませんが、私の大学はストライプを使用して楽しんでいます

書籍などがあります。

Spring Roo は解決策であると主張しています。

私はgrailsを使用してプロジェクトを実行しましたが、一部のタスクについては非常に高速であることがわかりましたが、多くの「魔法」を実行します。舞台裏でデバッグするのが難しくなります。

また、私はそれが自然だと感じなかったので、ドキュメントを何度も読みました。簡単な例は、アクションがフィールドとして定義されているコントローラーです(アクションをメソッドと考えるのは自然なことです...)。 GORMについて何か言うことができます。静的フィールドに入れると、フィールドを一時的にするなどの魔法をかける特別な単語を知る必要があります...注釈もオートコンプリートもありません...

プレイについては!開発が驚くほどシンプルで高速であり、覚えやすく覚えやすいことがわかりました。コミュニティはGrailのコミュニティよりも小さいように見えますが、より活発で、回答も迅速です。唯一の欠点は、サーブレットのapiに依存しないため、一部のサードパーティのフィルターまたはその他のものを統合することは困難ですが、不可能ではないことです。 Playアプリケーションは、従来のWebサーバーに展開して戦争として展開できることに注意することが重要です。

Grailsは素晴らしいと思いますが、生産性を上げるにはGrailsを十分に経験する必要があります。そうしないと、マニュアルで多くの時間を失うことになります。そうでない場合は、Playをお勧めします!特にGroovyに慣れていない場合

Play Frameworkについては知りませんが、 Spring MVC または Struts は、一緒に Hibernate は同様の機能を提供します。

利用可能な他の多くのオプションがあります。基本的に、MVCフレームワーク(Spring MVC、Struts、Wicket)とORMツール(Hibernate、iBatis)が必要です。もちろん、必要なコンポーネントを自分で統合する必要がありますが、これはすでに何度も行われているため、多くの情報を見つけることができます。

Spring MVCとHibernateがRuby on Railsが提供するのと同じ使いやすさを提供しているかどうかはわかりません(実際、もっと複雑だと確信しています...)。 Play FrameworkはRuby on Railsに非常に似ていると思いますが、私は自分ではなく、スクリーンキャストを見て、ドキュメントを読んでいるだけなので、RoRを使用した開発と同様の経験をしたいなら、 HibernateでSpring MVCの代わりにPlayのようなものを試してみてください。後者の利点は、非常に強力で、たとえば既存のデータモデルに適応できることです(RoRで私が知っていることから、これはRoRでささいなことではありません)。 検討できるもう1つのフレームワークは、Groovy on Grailsです。 Javaを使用しません(Groovyを使用します)が、非常にRoRに似ています。ボンネットの下でSpringとHibernateを使用します(私が正しい場合)。Groovyの利点は、Javaの厳密な静的型付けがないことです。 Ruby on RailsとDjangoは、Javaが実装されている言語の動的な性質から大きな恩恵を受けていますが、Javaは静的型付けのために見逃している機能です。

編集:ああ、あなたはすでにあなたの質問にGrailsについて言及しています...

grailsがオプション(実際にはJavaではなくgroovyフレームワーク)である場合、Scalaベースの Lift フレームワークもオプションになります。

もう1つのオプションは RIFE です。これは、JavaのままでRoRの最小構成を試行します。あなたのリストでは、Play Frameworkのみがその機能を持ち、他はJVM上にありますが、Javaではありません(それがあなたにとって重要な場合)。

VRaptor はどうですか? -SpringをDIコンテナとして使用し、Rails Action-Packに似たController / Viewエンジンを使用します。

AribaWebはGroovyもサポートしています。 http://aribaweb.org/ で他の機能を確認し、アプローチを確認してください。 Web開発の生産性を高めます。

私たちは、Stripesフレームワークを広範囲に使用しており、非常にうまく機能しています。それは本当に軽量であり、それはあなたのアプリケーションのクリーンな設計にあなたを向けます。基本的に開発の退屈な部分を隠すだけなので、楽しいことに集中できます(そのような例の1つはインデックス付きプロパティ)。

ってい http://www.ninjaframework.org/ マイクロ-サービスであるが、最も簡単にパラダイムの場合、使用レールasp.net mvcは、nancyfxまいります。であるが、その理念と本当にキャプチャを開始する。みなぎるままない文書で通mvcパターンか注視する。でも独自の枠組みでのpure javaに基づく。のですが。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top