我正在爲合同的新項目工作。通常我會使用c#asp.net和剃鬚刀。問題是,我的投資組合說。 C#C#C#C#反覆。我認爲組合是明智的,可能會有更多的多樣性。另一方面,功能性語言似乎是一種有趣的方法,因爲就控制器而言,asp.net MVC3非常注重功能。那麼,有沒有人嘗試過使用F#來做這件事,並且它變成了有用的東西,或者只是阻礙了它?我應該嘗試使用MVC3和ASP.net的F#嗎?
我問,因爲控制器似乎受益於功能,而模型似乎受益於面向對象的語言。
我正在爲合同的新項目工作。通常我會使用c#asp.net和剃鬚刀。問題是,我的投資組合說。 C#C#C#C#反覆。我認爲組合是明智的,可能會有更多的多樣性。另一方面,功能性語言似乎是一種有趣的方法,因爲就控制器而言,asp.net MVC3非常注重功能。那麼,有沒有人嘗試過使用F#來做這件事,並且它變成了有用的東西,或者只是阻礙了它?我應該嘗試使用MVC3和ASP.net的F#嗎?
我問,因爲控制器似乎受益於功能,而模型似乎受益於面向對象的語言。
我寫了使用MVC3與F#和C#的混合的一些例子,它工作得很好,我也創建了一個可以作爲一個起點(這會很快出現在Visual Studio庫)的模板:
大約有使用F#模型/控制器實現的一些好東西:
稍微煩人的事情是,在當前版本的LINQ支持的F#有點有限(編寫複雜的查詢有很多連接和分組是不容易的)。但是,如果您調用存儲過程,則可以很好地使用動態操作符(例如,參見this blog post)。
(我也寫了一些有關此文章,尚未公佈 - 如果你給我發電子郵件在[email protected]我可以給你一個草案)
完美,謝謝 – brandon 2011-05-18 23:41:45
嘗試在你的業餘時間作爲業餘愛好項目。如果你正在爲客戶工作,請不要嘗試它! – 2011-05-18 22:51:56
我並不是很擔心學習曲線,抱歉應該提到。從我看到的語言來看,這個語言非常簡單。我只是說從設計的角度來看它有什麼優點。 – brandon 2011-05-18 22:55:18