39
架構設計入門 Clark 2013/10/19

架構設計入門 twMVC#11

  • Upload
    twmvc

  • View
    709

  • Download
    6

Embed Size (px)

DESCRIPTION

學習架構設計最大的困難點,就是資料太過於龐雜。像是如何做網站負載平衡是架構設計,如何套用MVC、MVVM也 是架構設計,這些技術彼此之間差異很大,有些甚至沒有共通的關連。常常開發人員花費大量腦力之後,對於架構設計還是只有模糊的概念,實際用在工作上還是覺 得不夠踏實。 「架構設計入門」這堂課程,提供一個架構設計的導覽地圖,讓開發人員對於各種技術該用在哪裡、甚麼時候該用,有一個概略性的認知。期望讓開發人員面對架構 設計這門功課,能夠跨過那道學習的門檻,不再如瞎子摸象一樣,只能從片段的資料去學習。

Citation preview

Page 1: 架構設計入門 twMVC#11

架構設計入門

Clark

2013/10/19

Page 2: 架構設計入門 twMVC#11

http://mvc.tw

Microsoft C# MVP

部落格:昏睡領域 http://www.dotblogs.com.tw/clark/

技術專長:

軟硬體整合開發

軟體架構分析設計

物件導向分析設計

關於我

2

Page 3: 架構設計入門 twMVC#11

架構設計入門

架構設計入門

Page 4: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計

軟體架構設計

架構設計的組成

4

Page 5: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計:將系統切割為子系統

5

Page 6: 架構設計入門 twMVC#11

http://mvc.tw

軟體架構設計:將軟體切割為功能模組

6

Page 7: 架構設計入門 twMVC#11

三層式架構

架構設計入門

Page 8: 架構設計入門 twMVC#11

http://mvc.tw

三層式架構的分層

8

Page 9: 架構設計入門 twMVC#11

http://mvc.tw

Tier

Layer

三層式架構的層

9

Page 10: 架構設計入門 twMVC#11

http://mvc.tw

Tier:用來做系統架構設計的分層

10

Page 11: 架構設計入門 twMVC#11

http://mvc.tw

Layer:用來做軟體架構設計的分層

11

Page 12: 架構設計入門 twMVC#11

http://mvc.tw

三層式架構的架構設計

12

Page 13: 架構設計入門 twMVC#11

系統架構設計

架構設計入門

Page 14: 架構設計入門 twMVC#11

http://mvc.tw

職責切割

水平擴展

自我備援

系統架構設計的工作

14

Page 15: 架構設計入門 twMVC#11

http://mvc.tw

軟體限制

硬體限制

效能瓶頸

維運考量

成本考量

銷售考量

系統架構設計的考量

15

Page 16: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計的案例-三層式架構

16

Page 17: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計的案例-負載平衡

17

Page 18: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計的案例-負載平衡

18

Page 19: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計的案例-故障備援

19

Page 20: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計的案例-故障備援

20

Page 21: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計的案例-故障備援

21

Page 22: 架構設計入門 twMVC#11

http://mvc.tw

系統架構設計的案例-Partition

22

Page 23: 架構設計入門 twMVC#11

http://mvc.tw

系統要夠大

資本要夠厚

不要去分層

系統架構設計的建議

23

Page 24: 架構設計入門 twMVC#11

軟體架構設計

架構設計入門

Page 25: 架構設計入門 twMVC#11

http://mvc.tw

職責切割

規則定義

框架建立

軟體架構設計的工作

25

Page 26: 架構設計入門 twMVC#11

http://mvc.tw

降低開發腦力

降低技能需求

增加開發人力

減少開發時程

降低維護成本

降低重用成本

軟體架構設計的考量

26

Page 27: 架構設計入門 twMVC#11

http://mvc.tw

軟體架構設計的案例-三層式架構

27

Page 28: 架構設計入門 twMVC#11

http://mvc.tw

軟體架構設計的案例-MVVM架構

28

Page 29: 架構設計入門 twMVC#11

http://mvc.tw

軟體架構設計的案例-MVVM架構

29

Page 30: 架構設計入門 twMVC#11

http://mvc.tw

軟體架構設計的案例-MVVM架構

30

Page 31: 架構設計入門 twMVC#11

http://mvc.tw

軟體架構設計的案例-ASP.NET MVC架構

31

Page 32: 架構設計入門 twMVC#11

http://mvc.tw

軟體架構設計的案例-ASP.NET MVC架構

32

Page 33: 架構設計入門 twMVC#11

http://mvc.tw

軟體架構設計的案例-ASP.NET MVC架構

33

Page 34: 架構設計入門 twMVC#11

http://mvc.tw

認清系統目標

了解沒有銀彈

讓有經驗的來

軟體架構設計的建議

34

Page 35: 架構設計入門 twMVC#11

CLK架構

架構設計入門

Page 36: 架構設計入門 twMVC#11

http://mvc.tw

CLK架構的分層

36

Page 37: 架構設計入門 twMVC#11

37

CLK架構的實作-簡易聊天室

Page 38: 架構設計入門 twMVC#11

Q & A

架構設計入門

Page 39: 架構設計入門 twMVC#11

謝謝各位

• 本投影片所包含的商標與文字皆屬原著作者所有。• 本投影片使用的圖片皆從網路搜尋。• 本著作係採用姓名標示-非商業性-相同方式分享 3.0 台灣授權。閱讀本授權條款,請到

http://creativecommons.org/licenses/by-nc-sa/3.0/tw/,或寫信至Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.

h t t p : / / m v c . t w