簡體   English   中英

如何在ASP.NET MVC中為項目編寫一個好的核心架構

[英]How to write a good core architecture for a project in ASP.NET MVC

我將不得不在1月份用ASP.NET MVC3 / C#編寫一個大系統,並且需要知道如何編寫一個可以工作的系統。 我對ASP.NET MVC和C#有一些經驗,但不會稱自己為專家。 它需要是可擴展的,以便我可以稍后使用新功能擴展它。 怎么會這樣呢? 是否有書籍可以詳細解釋這個主題,還是應該使用反復試驗?

簡而言之,我需要在我的代碼中了解良好的設計實踐,以便將來擴展。

關心RaVen

該系統將是一個社區門戶網站,有論壇評級等。不能說比“公司政策”,我可以管理的論壇因為有充足的開源選項...但其余的由我決定。

SOLID ==偉大的成功

在任何項目中遵循SOLID原則,你都會做得很好。

關於核心基礎設施/架構,SharpArchitecture是一個很好的起點。 它絕不是完美的解決方案......但是它們為您提供了一個良好的框架,您可以快速擁有一個工作系統,同時學習有效的概念並且不會長時間工作。 看一看,看看你的想法。 它使用NHibernate,Castle和MVC。

測試驅動開發將確保您的項目的質量。 嚴格要求自己,紅綠折射器。 MVC的優勢之一是它更容易測試。

專業的ASP.NET MVC 2是一個很好的起點,但我認為他們也會推出MVC 3版本。 NerdDinner教程包含很多關於如何構建應用程序的想法。

基本建議:使用MVC架構,而不是反對它。 了解您的應用程序,尤其是您的數據模型,並將其分層到您的應用程序結構中。 通常,每個型號都有一個控制器,但並非總是如此。

如果您需要更詳細的建議,則需要更具體地了解您的項目。 我建議你提出有關設計的各種細節的具體問題,而不是一個涵蓋整個項目的問題。 后者可能不會得到你想要的那種反應。

你可以用我的“真棒”演示作為開始

http://awesome.codeplex.com

如果它必須是可擴展的,請確保編寫測試。 從長遠來看,當你修復某些東西時,你會為自己節省不眠之夜,但最終會破壞整個系統。

至於如何使事情“工作” - 這取決於你的能力。 閱讀,並尋求改進的東西,但不要陷入過早優化或它會讓你死在水中。

根據您的編輯和能力,選擇用ASP.NET MVC編寫並支持它的開源CMS可能更明智。 你的技能足夠好,聽起來像學習如何編寫模塊並成為更大社區的一部分。 你聽起來並不是真的想寫整篇文章,因為你對自己的技能,截止日期等都很怯懦。在學習一篇寫得很好的軟件的細節的同時,有一天你可以選擇自己編寫或貢獻到軟件的核心部分。 有幾個可供選擇,請參閱我上面的評論。

編輯:我也認為這將讓你剛剛開始,而不用擔心人們會為你取得成功的每一個設計范例。

WhoCanHelpMe是一個很好的參考應用程序。 它建立在S#arp架構之上,這是使用域驅動設計的MVC應用程序的良好起點。 這也將幫助您在連接IoC和db-stuff時使用。

請記住,並非每個示例和框架都符合您的要求,正如jFar所說的那樣,考慮SOLID並根據主體做出自己的決定。

您還應該查看MEF的可擴展性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM