質問

Rails(Sinatra / Ramaze / Camping)よりも軽いフレームワークを使用したいのですが、そうすることで、プラグインの形でRailsに合わせて調整された多くの共有ライブラリを使用できなくなることを心配しています。これは大きな懸念事項ですか、またはこれらのプラグインのほとんどは異なるRubyフレームワークで使用できますか?

Rails以外のRubyフレームワークを使用する上で他の潜在的な欠点はありますか?

役に立ちましたか?

解決

あなたが言及したすべてのフレームワークで gems を引き続き使用できるため、大量のものを再利用できます。問題なく新しいORMに交換したい。派手なシュマシー構文の強調表示が必要で、問題はありません。 Railsは、gemのみを使用するために、古いプラグインモデルから離れるという大きな推進力を持っています。

他のフレームワークのいずれかがニーズに合っている場合は、それをより適切に使用します。ドキュメントとサンプルのレールに関しては、レールにはさらに多くのものがあることに注意してください。

Rubyを学習していて、Webフレームワークを試してみたいと思うなら、おそらくRailsの方が良いと思うのではなく、ツールとドキュメントがはるかに優れているからです。

他のヒント

Railsで使用されるほとんどのRubyモジュール(ActiveRecordを含む)は、Railsなしでも使用できます。しかし、その場合、Railsによって提供される統合の特別な利点が失われます。 Rubyモジュールを選択したフレームワークに接着するには、一生懸命作業する必要があるかもしれません。 Railsで使用されるRubyモジュールに関するドキュメントのほとんどは、Railsでそのモジュールを使用する方法のみを示していることに注意してください。

ネットワーク効果は少しの役割を果たします。

sinatra、campingなどの他のフレームワークを使用するときに発生する問題の1つは、railsがアプリケーション内のファイルの実証済みの構造を提供することです。より小さなフレームワークは非常にオープンで無料です。

これは、単に規約に従うのではなく、規約の作成について会話する必要があるため、複数の開発者と作業している場合のマイナス面になる可能性があります。

Rubyを1年未満使用している場合は、他のフレームワークのいずれかで適切に処理される明確なニーズがない限り、Railsを使用してください。

より軽量なフレームワーク、特にSinatraは、必要なものを正確に知っており、未使用のコードによるオーバーヘッドを追加する余裕がない人々に人気があります。基本的に、Railsが提供するものに固執するのではなく、ツールチェーンを選択します。 (はい、Railsでは、ActiveRecordなどを他のライブラリに置き換えることができますが、簡単ではありません。)したがって、より軽量なフレームワークでは自由度が大幅に向上しますが、多くの場合、かなりの作業が必要になります。

Railsプラグインは、代替のフレームワークのいずれかですぐに動作することはないと思いますが、ActiveRecordプラグイン(acts_as_nested_setなど)は、配管作業($ LOAD_PATHを設定して権限が必要)を引き続き必要としますファイル)。 ORMには DataMapper をお勧めします。ActiveRecordよりも高速であるだけでなく、非常にモジュール式に構築されていますプラグインは、簡単にインストールできる実際のgemです。違いとして、ActiveRecordプラグインはほとんどがモンキーパッチであり、新しいバージョンごとに壊れる傾向があります。

Sinatraには、「グッズ」、Rakefile、スケルトン、スクリプト/生成は含まれていませんが、実際にはそれが書かれています。徐々に「配管」することができます;すべての余分なもの。また、いくつかの基本的なレイアウトとデフォルトが付属するsinatraアプリ用のスケルトンもあります。これらが役立つ場合があります。

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