.Net設計經驗(轉自評論)

weixin_34402090發表於2011-07-20

聖殿騎士

說實在的,這個話題確實很大,你這種感受我們都會有,回顧過去,由於專案和公司原因,自己零零碎碎的什麼都在做,什麼都不精,也不敢在這裡談經驗,只是自己的體會,望各位高手見諒,其他平臺很菜,就不說了,對.Net平臺感覺剛入門,從WinForm、ASP.NET(ASP.NET MVC一個專案沒做完就被終止)到WPF和Silverlight,以至於到現在做的Windows Azure,不論是採用什麼技術,最基本的東西都不會變,比如對資料庫、檔案和其他裝置的訪問、對日誌和異常的處理、對資料結構的處理、對報表的展現、對列印的實現、對效能的提升、對資料的處理、對使用者友好等等。
那麼這些專案也為我們積累了不少經驗,有技術上的也有其他方面的:
* 為了應付專案需求的不斷變化和專案的可擴充套件性,我們也會引入OO和設計模式;
* 為了解除各模組和元件的耦合,我們也會利用IOC的思想解耦;
* 為了讓邏輯程式碼清晰且沒有其他程式碼的干擾,我們也會採用AOP的方式進行程式碼重組;
* 為了解決諸如莫名奇妙的記憶體錯誤、invoke異常,我們也會去研究晦澀難懂的CLR&IL,問題出了,你負責這個專案,必須得解決。
* 為了使專案的開發速度更快且更方便,我們也會引入ORM思想來加快專案的開發速度和可維護性;
* 為了更好組織各層開發,隔開耦合,我們也會採用MVC、MVP、MVVM模式;
* 為了提升使用者的響應速度,我們會採用AJAX的方式來實現;採用非同步程式設計去解決使用者漫長的等待問題;
* 為了降低系統的負載同時提高使用者的響應能力,我們也會採用MSMQ或者SSB來組織訊息佇列;
*各種應用程式、各種服務的交錯會讓我們感到手足無措,為了規範各系統的介面,提供一個統一的互動平臺,我們也會採用SOA;
*針對大量資料量實時處理、較高計算,解除使用者等待的漫長等待,為了降低伺服器的負擔和提高速度,我們也會自己寫一套快取,並保證快取的正確的更新與去除;
* 為了把產品做好,我們也會不斷優化技術直至達到期望的效果;
* 為了能做好外包專案,我們會不需要任何高深技術,首先給客戶期望的效果;
* 為了能得到客戶滿意老闆好評,我們也會學會如何交流,要明白最終是要得到客戶的滿意度,要得到money;
其實歸根到底就是要分清關係,理清思緒,既要處理好與機器的關係,也要處理好與人的關係,只有這樣才能把產品或者專案做成功,專案做成功了,才有後面的發展和晉升,我也在不斷學習當中,始終感覺自己是菜鳥,回頭望去猛然發現自己又回到了原點,只有不斷學習,不斷進步了!

相關文章