レール上のルビーを学習しようとする.Net開発者


11

私は.NET開発者で、今週末にRuby on Railsで遊ぶ機会がありました。

.NETでは、個別のクラスライブラリプロジェクトを作成することにより、アプリケーションのレイヤーを分離します。設計パターンの観点から、Railsでもそれを行う必要がありますか、それともすべてが含まれる1つのプロジェクトだけですか?


1
+1、多くのコーディングチュートリアルを見つけることができますが、ほとんどの言語で見つけることができる「この半複雑なプロジェクトのレイアウトをどのように管理するか」については何もありません。
ワイアットバーネット

私はPragmatic PressのRubyの本を読んでいませんが、Erlangのようなものであれば、言語の構文だけでなくイディオムも教えてくれます。おそらく他の誰かがそれについてコメントすることができます。
マイケルブラウン

回答:


3

Railsアプリは単一のリポジトリとして起動することがわかります。より成功したもの(Twitter、Square、その他多く)は、要件に合わせて複数のコードベースに分割されました。これらの追加のコードベースは、daemonservices、gems、Rails Enginesなどです。

YAGNIであるため、複数のプロジェクトへのこのリファクタリングは、必要になるまで行われません。1日目にプロジェクトを分岐すると、プロトタイピング時間が遅くなります。プロトタイピングの速度はRubyとRailsの重要な強みです。Rubyでクラスを作成したり、Rubyでクラスを作成したりすることは、コストがほとんどかからないことを念頭に置いておく必要があります。あなたの純粋なRubyのコードは、ほとんどの下で暮らすます/app/app/modelsapp/views app/controllersapp/helpers)と/lib/。静的アセット、階層化されたJS / Coffeeインクルード、CSS / Sass / etcインクルードはになります/app/assets

Rubyクラスを簡単に分解できる理由を理解するには、ダックタイピングについて少し読む必要があります。また、Rubyのインターフェースは、それほど動的ではない環境で慣れているほど堅固ではないという理解が必要です。

興味のあるリンクをいくつかご紹介します。

あなたのプロジェクトで頑張ってください!


0

Rubyライブラリではgemと呼ばれます。http: //www.ruby-lang.org/en/libraries/を参照してください。これは.NETクラスライブラリとほぼ同じ方法で使用されます。


1
はい。しかし、私の質問は次のとおりです。優れた設計パターンと優れたプログラミング慣行の観点から、モデルとビジネスルールをメインRailsプロジェクトから分離していますか?私の質問が分かりにくい場合は申し訳ありません。私はレールに入ったばかりで、それを説明する方法が本当にわかりません。それはただ違う..
ライアンアドリアーノ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.