什麼是模式?什麼是架構?軟體為什麼要分層?

來源:互聯網
上載者:User

現在軟體設計裡到處都是模式,架構。有次朋友問什麼是模式?我也在學習中,就我的學習經驗,給出以下小結。(注意:個人觀點,僅供參考,歡迎指正。)

1.什麼是模式?

  模式,即pattern。其實就是解決某一類問題的方法論。你把解決某類問題的方法總結歸納到理論高度,那就是模式。Alexander給出的經典定義是:每個模式都描述了一個在我們的環境中不斷出現的問題,然後描述了該問題的解決方案的核心。通過這種方式,你可以無數次地使用那些已有的解決方案,無需在重複相同的工作。模式有不同的領域,建築領域有建築模式,軟體設計領域也有設計模式。當一個領域逐漸成熟的時候,自然會出現很多模式。

2.什麼是架構?

  架構,即framework。其實就是某種應用的半成品,就是一組組件,供你選用完成你自己的系統。簡單說就是使用別人搭好的舞台,你來做表演。而且,架構一般是成熟的,不斷升級的軟體。

3.為什麼要用模式?

  因為模式是一種指導,在一個良好的指導下,有助於你完成任務,有助於你作出一個優良的設計方案,達到事半功倍的效果。而且會得到解決問題的最佳辦法。

4.為什麼要用架構?

  因為軟體系統發展到今天已經很複雜了,特別是伺服器端軟體,設計到的知識,內容,問題太多。在某些方面使用別人成熟的架構,就相當於讓別人幫你完成一些基礎工作,你只需要集中精力完成系統的商務邏輯設計。而且架構一般是成熟,穩健的,他可以處理系統很多細節問題,比如,事物處理,安全性,資料流控制等問題。還有架構一般都經過很多人使用,所以結構很好,所以擴充性也很好,而且它是不斷升級的,你可以直接享受別人升級代碼帶來的好處。架構一般處在低層應用平台(如J2EE)和高層商務邏輯之間的中介層。

5.軟體為什麼要分層?

  為了實現"高內聚、低耦合"。把問題劃分開來各個解決,易於控制,易於延展,易於分配資源...總之好處很多啦:)。

轉http://bbs.csai.cn/BBS/view.asp?id={D195724F-F567-423B-AAFB-28E2AE5AA02C}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.