2011-06-23 70 views
98

我對RoR很新,我想在APS.NET MVC3和RoR之間進行選擇。 C#對我來說確實更容易,因爲我一直這樣做了這麼久,但我想知道是否有任何意見可以考慮使用RoR over .MVC來開發真實世界的網站?Ruby on Rails vs ASP.NET MVC 3 for .NET Guy?

我還能得到什麼與RoR,我無法與ASP.NET MVC 3得到花費時間來掌握RoR?我雖然可用的社區RoR插件是一個原因,但它似乎並沒有組織起來,似乎是學習曲線,做正確的事情會變得如此之大,以至於實際上不會爲節省時間而節省很多時間!我可能在這裏錯了,我真的很感謝你對此的真實評論?請注意,我仍然需要學習ASP.NET MVC,但對於.NET專家來說,這聽起來很快!

RoR提供給.NET人員什麼價值在ASP.NET MVC 3上選擇RoR?並請實際意見! :)

+11

這個問題是如何脫離話題或不是一個真正的問題?無論如何,我已經在問題上添加了「advice」標籤。 – Zabba

+1

@zabba,爲什麼?看起來像一個非標籤給我。 – bzlm

+1

@bzlm,什麼是非標籤? – Zabba

回答

71

運行他們都很棒,可以非常快速地完成同樣的目標。我用了一本很好的書來學習一段時間,它會在你的衚衕裏:Rails for .Net Developers

此外,我還寫了一篇關於going from MVC to RoR的文章。

至於比較,他們都已經強項已被覆蓋,但這裏有一些是貼出來對我說:

  • 我真的很喜歡的RoR的部署和簡單的方法來推動生活網站 - 沒有任何腳本可以運行,只需要一點命令行就可以啓動並運行代碼實際寫入代碼。如果你選擇RoR,瞭解命令行命令 - 它會讓你的生活變得如此簡單!

  • 正如你所說,插件是偉大的,可以真正用來加快速度。

  • 作爲一個.NET開發者,MVC將會變得輕而易舉,我會推薦使用Razor,因爲它非常簡單,並且比舊的2.0非剃鬚刀渲染更不混亂。

  • .Net的EF4幾乎可以直接與RoR的ActiveRecord進行比較,它們是用於處理數據的很好的ORM系統。

  • 我發現.Net的文檔更加一致和徹底。

  • 我與RoR的一個問題是快速而劇烈的變化;不久之前,他們在我的主機上升級到3.0,並且我沒有鎖定我的版本 - 各種各樣的東西都破滅了,直到我找出新的東西(我應該凍結我的版本)。

這不是一個乾淨的選擇 - 兩者都很棒。由於您已經是.Net開發人員,我猜想MVC3將會是一條可行的路線,但兩者都很容易學習。

+3

偉大的觀點謝謝。 – iCode

+4

現在,ASP.NET MVC是開源的,我不知道它將如何快速地關閉與RoR的功能差距。我將我的錢投入MVC3,現在開發人員社區將有能力爲MS工程團隊仍支持的產品做出貢獻。 – Scott

+1

不確定RoR。如果你是一個使用C#MVC和Razor的.NET人,但是你發現MS MVC,WebAPI,WCF,EF有點麻煩,並且想要一個更緊湊的解決方案......你可以試試SS http://www.servicestack.net/...它是免費的,開源的,非常活躍的社區支持.net和mono,完全取代上述重型框架。我個人很喜歡它:) – Tom

31

我使用和喜歡這兩個,和這樣的問題的問題是,他們是如此不同,你可以整天關於蘋果與橙子,但因爲你的問題是非常具體的,我只想說:

如果你認爲自己是「一個.NET傢伙」,那麼你應該學習其作品非常不同於C#語言,並且像Ruby動態語言是個不錯的開端。 (另一種選擇是像Haskell,Scala等功能語言)

在你做之後,你將成爲一個更好的程序員,你不必再稱自己爲「.NET人」了!

+3

我同意,但我的目標是儘快建立並運行真實的網站,並且擴展我的視野並不是我現在的主要目標。我確實值得學習像Ruby這樣的新鮮事物,但我現在的重點是在我有限的時間內選擇正確的選項。爲什麼蘋果和橘子的目標是成爲網絡開發框架? – iCode

+3

讓一個真正快速運行的站點不會成爲Rails的問題。幫你一個忙:花一個星期的時間來研究[本教程](http://ruby.railstutorial.org/ruby-on-rails-tutorial-book),然後再決定它會影響你的上市時間。唯一的風險是你會學到一些東西!他們是「蘋果和橘子」的原因是他們的工作方式不同,在不同的平臺上運行等等。他們擁有MVC架構的共同點,顯然有很多影響力 - 主要是朝着一個方向 - 但他們是非常不同的世界。這可能是一個大腦擴張的差異。 –

+0

太好了,謝謝。我會這樣做的。如果您已經使用了兩者,那麼您是否仍然可以從實際的角度評論使用.MVC中提供的Rails可以獲得什麼? – iCode

6

這不是一個RoR開發,但我做Django,我認爲同樣的問題也可以要求Django。我喜歡Django而不是ASP.NET MVC的第一件事就是Django已經與ORM一起提供了。這意味着你在網上找到的大多數代碼示例都會遵循類似的模式。使用ASP.NET MVC,您可以從很多不同的ORM中挑選出來,這可能是件好事,但也會造成混淆。

就像@克雷格說的,它確實是蘋果與橙子。如果需要將它部署到MS堆棧上,我會選擇ASP.NET MVC,並將Django用於需要在Linux上部署的「個人」項目或項目。

+3

以前從未使用過Django。我是一個Rails和.NET MVC傢伙。幾乎所有我見過的.NET MVC教程都假設您使用的是Entity Framework,並且ASP.NET網站上的文檔和教程都非常好。要將EF包含在MVC項目中,只需在NuGet包管理器控制檯中輸入一條命令 - 就像獲得Rails的寶石,除非獲得.net程序集引用。使用EF和Code First的IMHO .NET MVC與AppHarbor進行部署是最接近Rails環境的。 – PhillipKregg

6

你提到在你的迴應克雷格斯頓茨你想要的,而不是一種新的語言和框架的同時

圍棋與MVC3並專注於只是學習了「你有有限的時間正確的選擇」,時間。 RoR非常棒,但它同時是一種新的語言,框架和IDE,有可能你不會第一時間得到它。我沒有。

上有the asp.net website一些非常好的教程,將讓你和速度非常快

+2

這一直是我的想法,但我聽到人們都在談論在RoR中做事情是多麼容易,即使是新手,但我想知道這是爲了一個hello world網站還是一個真實世界的製作網站。我知道我的問題很棘手,但有些事情告訴我RoR是一種新的語言,框架和IDE,正如你所提到的那樣,它不能像使用.MVC一樣快速地製作產品,但我想知道什麼是.net社區的經驗呢?除了有趣之外,我主要想知道選擇RoR的重點是什麼.MVC3?謝謝 – iCode