Grailsフレームワークの落とし穴[終了]


12

Grailsフレームワークの使用に関する最大の問題/落とし穴は何ですか?私は今フレームワークを学んでおり、本当に気に入っていますが、それを使用するときに遭遇する可能性のある主要な問題とそれらを回避する方法を知る必要があります。

回答:


13

IMO、Grailsの最も弱い部分は、データモデルの移行機能(ala Rails ActiveRecordの移行)の欠如です。さまざまなレベルの品質のサードパーティプラグインがありましたが、公式のものはありませんでした。

しかし、Liquibaseが拡張され、データベース移行プラグインになったことを発見したばかりですこれは有望に見えます。

プラス面として、私がGrailsを使用してきたすべて(単純から中程度に複雑なWebアプリ)にとって、それはほとんど素晴らしいものでした。Java / Hibernate / Spring / Spring MVCスタックに比べて、開発の生産性が約2倍から3倍向上すると思います。


1
+1。Grautsを選択したのは、作成が不十分なStruts 1アプリケーションのさらなる作業のためです。私にとって唯一のトリッキーな部分は、2つのサーブレット間でCookieを共有することでした。さもなければ、それは完全な勝利でした。
ケビンクライン

5

grails環境のロードに時間がかかり、テストの実行に必要な時間はごくわずかであるため、統合テストの実行は遅くなりました。これにより、dbに書き込むコードを開発する際の所要時間が長くなります。もう1つの問題は、Kalebの回答(データの移行について)で既に言及されています。また、私が立ち往生しているときはいつでも、冬眠や春に利用できるヘルプと比較すると、ヘルプを得ることができるフォーラムの数が制限されていることがわかりました。


テストの実行:インタラクティブモードで実行するだけ-この方法で起動を回避
-rdmueller

3
フォーラム:私の経験では、Stackoverflowで4時間以内にすべての質問に対する回答が得られます。ほとんどはgrailsコミッターから直接
...-rdmueller

3

フレームワークを使用する現在の落とし穴は、現在のgradleビルドシステムへの不十分な統合です。現在、これを実現するためにプラグインを使用していますが、プラグイン自体は新しいバージョンのgrailsで壊れています(最近使用して修正しようとしたため)。彼らはgradleをgrailsビルドシステムの一部(ガントではなく)にすることでこの問題を将来のバージョンで修正する予定ですが、簡単に統合できるビルドシステムの欠如が問題です。ただし、この落とし穴は将来消えます。

別の落とし穴は、言語の動的な性質です。あなたは本当にすべてのテストを書かなければなりません。コード内のエラーのほとんどは、実行時に発見されます。それは実際にプログラムについて異なる考え方です。このフレームワークでは、コンパイラに依存して間違いを見つけることはできません。私はそれが悪いと言っているわけではありません、それはただ違うだけです(そして、あなたがそれに精通していないなら落とし穴です)。


2

私は個人的にグレイルよりも単純なグルーヴィーを使用しましたが、私は両方とも素晴らしいと思いますが、グレイル/グルーヴィーの概念全体が好きです。

(私の個人的な経験では)唯一の欠点は、IDEのサポートが不十分なことです。私は(むしろ楽観的に)SpringSourceには優れたEclipseビルドがあり、Grailsの強力な支持者であると思っていました。groovyプラグインのインストールは難しく、コード補完は不安定です(動的言語では常に問題がありますが、60個のメソッドを選択してもあまり役に立ちません)。最新のリリースでは、groovyプラグインをインストールするとJavaデバッガーが壊れます!


0

現在、抽象クラスをサポートしています。たとえば、実装のリストをList<T>コマンドオブジェクトの単一にバインドすることはできません。確かに、これは私が他のすべてを魔法のようにバインドすることに慣れているため、主に迷惑です!:D

一般的に、それはまだ一種の「グリーン」です。最終的に奇妙な小さな制限とバグに遭遇します。それは本当に数年後には長い道のりを歩んできました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.