.NETガイ向けのRuby on RailsとASP.NET MVC 3の比較 [閉まっている]


98

私はRoRを初めて使用するので、APS.NET MVC3とRoRのどちらかを選択したいと思います。C#は長い間使用してきたので確かに簡単ですが、実際のWebサイトを開発するために.MVCよりもRoRを使用することを検討する必要があるかどうか疑問に思っていますか?

ASP.NET MVC 3では取得できないRoRで他に何が得られますか?利用可能なコミュニティRoRプラグインが1つの理由ですが、整理されていないようで、正しいことを行うための学習曲線が非常に大きくなるため、初心者の時間を実質的に節約できません。私はここで間違っている可能性があり、私はこれに関するあなたの実際のコメントに本当に感謝しますか?ASP.NET MVCについてはまだ学ぶ必要がありますが、.NET Guyにとっては簡単に聞こえます。

.NETの男にRoRのプランは何でしWORTHは、 ASP.NET MVC 3の上にRoRのを選ぶには?そして実用的なアドバイスをしてください!:)


11
この質問はトピックから外れているのか、本当の質問ではないのか とにかくadvice、質問にタグを追加しました。
Zabba

1
@zabba、なぜ?タグが付いていないようです。
bzlm 2011年

1
@bzlm、非タグとは何ですか?
Zabba

2
@zabbaは95の質問のみ、wikiの概要、不明確な目的(通常、「アドバイス」を必要とする質問は答えられないため、サイト憲章によれば歓迎されません)など:)
bzlm

3
やばい!「NET開発者向けの.NET MVCを介したRoRの値は何ですか?」質問ではありませんか?!!! MVCにまったくロックされていません。
iCode

回答:


71

どちらも素晴らしく、同じ目標をすばやく達成できます。私はしばらく前に学習するために素晴らしい本を使用しました、そしてそれはあなたの路地にぴったりですRails for .Net Developers

また、MVCからRoRへの移行についてもしばらく前に投稿しました。

比較に関しては、カバーされているように両方とも長所がありますが、ここに私に突き出るいくつかがあります:

  • 私はRoRの展開とライブサイトにプッシュする簡単な方法が本当に好きです。スクリプトをまったく実行する必要はありません。コードが実際に作成されたら、コマンドラインを少し実行するだけで実行できます。RoRを選択した場合は、コマンドラインコマンドを理解してください。これにより、人生が非常に簡単になります。

  • あなたが言ったように、プラグインは素晴らしく、本当に物事をスピードアップするために使用することができます。

  • .Net開発者として、MVCは簡単になります。Razorは非常にシンプルで、古い2.0の非かみそりレンダリングよりも雑然としていないため、Razorの使用をお勧めします。

  • .NetのEF4は、データを処理するための優れたORMシステムであるRoRのActiveRecordとほぼ直接比較できます。

  • .Netのドキュメントはもう少し一貫性があり、完全であることがわかりました。

  • 私がRoRで抱えていた問題の1つは、急速で劇的な変化でした。少し前に、彼らは私のホストで3.0にアップグレードしました、そして私は私のバージョンをロックしませんでした-私が新しいものを見つけるまで私はあらゆる種類のものを壊しました(私は私のバージョンを凍結するべきでした)。

それは完全なカットの選択ではありません-両方とも素晴らしいです。あなたはすでに.Net開発者なので、MVC3を使用する方法になると思いますが、どちらも簡単に学ぶことができます。


4
ASP.NET MVCがオープンソースになったので、RoRとの機能のギャップがどれほど早く解消されるのでしょうか。開発者コミュニティがMSエンジニアリングチームによって完全にサポートされている製品に貢献できるようになったので、MVC3にお金を投入します。
スコット

1
RoRについては不明です。C#MVCとRazorを使用する.NETの人ですが、MS MVC、WebAPI、WCF、EFが少し面倒で、より緊密なソリューションが必要な場合... SS servicestack.netを試すことができます ...無料です、オープンソース、非常にアクティブなコミュニティは.netとモノラルをサポートし、上記の重いフレームワークを完全に置き換えます。私は個人的にそれをたくさん心に留めています:)
トム

2
Bundlerを使用すれば、Rubyのバージョン管理は単純で予測可能です。
リリスリバー

31

私は両方を使用し、気に入っています。このような質問の問題は、リンゴとオレンジについて1日で出かけることができるほど異なることですが、質問はかなり具体的ではないので、次のように言います。

自分を「.NETの人」だと考えるなら、C#とは非常に異なる動作をする言語を学ぶ必要があります。Rubyのような動的言語は、最初から始めるのに悪い場所ではありません。(もう1つのオプションは、Haskell、Scalaなどの関数型言語です。)

あなたはあなたがやった後にあなたはより良いプログラマーになるでしょう、そしてあなたはもはや自分自身を「.NET男」と呼ぶ必要はないでしょう!


3
私は同意しますが、実際のWebサイトをできるだけ速く稼働させ、視野を広げることは、現在の私の主な目標ではありません。Rubyのような新しい素晴らしいことを学ぶことは大切ですが、今の私の焦点は、限られた時間内で適切なオプションを選択することです。そして、なぜ彼らの目標がウェブ開発フレームワークであることであるリンゴとオレンジがあるのですか?
iCode

3
実際のサイトをすばやく実行しても、Railsに問題はありません。自分でお願いします。市場投入までの時間を傷つけると判断する前に、このチュートリアルを 1週間ほど試してください。唯一のリスクは、あなたが何かを学ぶことです!彼らが「リンゴとオレンジ」である理由は、それらが異なる動作をし、異なるプラットフォーム上で実行されるなどです。それらは共通のMVCアーキテクチャを持ち、明らかに多くの影響があります。別の世界。それは心を拡大する違いになる可能性があります。
Craig Stuntz、2011年

よかった。ありがとう。そうします。.MVCで利用可能なRailsで何が得られるかについて、実際に両方から使用した場合の実用的な観点からコメントしてもらえますか?
iCode

6

ここではRoR開発者ではありませんが、私はDjangoをやっており、Djangoについても同じ質問をすることができると思います。ASP.NET MVCよりもDjangoが好きな1番目の点は、DjangoにはORMがすでに付属していることです。つまり、Webで見つかるほとんどすべてのコード例は、一種の類似したパターンに従います。ASP.NET MVCを使用すると、さまざまなORMから選択できますが、これは良いことですが、混乱を招く可能性もあります。

@Craigが言ったように、それは本当にリンゴ対オレンジです。MSスタックにデプロイする必要がある場合はASP.NET MVCを選択し、「個人」プロジェクトまたはLinuxでのデプロイが必要なプロジェクトにはDjangoを使用します。


3
これまでDjangoを使用したことがありません。私はRailsと.NET MVCの人です。私が見たほとんどすべての.NET MVCチュートリアルは、Entity Frameworkを使用していることを前提としており、ASP.NETサイトのドキュメントとチュートリアルは非常に優れています。EFをMVCプロジェクトに含めるには、コマンドをNuGetパッケージマネージャーコンソールに入力するだけです。Railsでgemを取得するのと同じですが、.netアセンブリ参照を取得する点が異なります。EFとコードファーストを含むIMHO .NET MVCと展開用のAppHarborは、Rails環境に最も近い場所にあります。
PhillipKregg

6

craig Stuntzへの回答で、「あなたが持っている限られた時間に適切なオプション」が欲しいと述べた

mvc3を使用して、新しい言語とフレームワークを同時に学習するのではなく、mvc3だけに集中してください。RoRは素晴らしいですが、新しい言語、フレームワーク、およびIDEを一度に使用できるため、最初から正しく理解できない可能性があります。私はしませんでした。

asp.netのWebサイトには、すぐに使えるようになる優れたチュートリアルがいくつかあります


2
それも私の考えですが、初心者でも簡単にRoRで物事を行うことができると人々が話しているのを聞いていますが、それがHello World Webサイトなのか、実際のプロダクションWebサイトなのか疑問に思っています。私の質問はトリッキーですが、RoRは新しい言語、フレームワーク、およびIDEであることが先ほどお伝えしたとおり、.MVCを使用して本番製品を実行するのはそれほど速くはありませんが、.netとは何かを知りたいと思っています。これでコミュニティの経験?楽しみに加えて、.MVC3よりもRoRを選択するポイントは何ですか?ありがとう
iCode
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.