面向對象和麵向過程是兩種不同描述世界的方法。 面向過程:世界視為過程,世界由一個個相互關聯的小程式構建來的,是精密的。 但是構成一個系統的因素太多,要把所有可能的因素都考慮到,把所有因素的因果分析都分析清楚,再把這個過程模擬出來實在是太困難了。 面向對象:世界視為對象,世界由一個個相互獨立、相互之間 ...
面向對象和麵向過程是兩種不同描述世界的方法。
面向過程:世界視為過程,世界由一個個相互關聯的小程式構建來的,是精密的。
但是構成一個系統的因素太多,要把所有可能的因素都考慮到,把所有因素的因果分析都分析清楚,再把這個過程模擬出來實在是太困難了。
面向對象:世界視為對象,世界由一個個相互獨立、相互之間沒有因果關係的對象構成,是獨立的。
但是難點在於為什麼這樣抽象對象?怎樣組合對象?對象的組合表達了怎樣的含義?(面向對象存在的問題why how what )
例如:把大象裝進冰箱的兩種方式
面向過程-每個過程有一個階段性的目標,依次完成這些過程,就能把大象裝進冰箱:
冰箱開門(打開門的冰箱)
冰箱裝進(冰箱, 大象)
冰箱關門(冰箱)
面向對象-依次做這些動作(動作的執行者就是對象),就能把大象裝進冰箱
冰箱.開門(),
冰箱.裝進(大象.進冰箱),
冰箱.關門()
面向對象是把世界看作是由許多對象組成的,UML是一種是面向對象軟體的標準化建模語言:
- 把現實世界映射到對象世界的方法;
- 從對象世描述現實世界的方法;
- 驗證對象世界行為是否正確反映了現實世界的方法;
UML優點:可視化、統一標準、人和機器皆可理解;
UML建模要素:參與者(actor)、用例(use case)、業務對象模型 、業務場景(現實:人驅動,事體現過程,物記錄結果,規則是控制)
模型為參與者服務,用例體現業務目標,業務場景描述怎麼做,用例場景依據的規則
現實世界-》業務模型-》概念模型-》設計模型
UML基本概念
建模(Modeling)-構成一種對所觀察的對象的內部結構和工作原理的便於理解的表達
怎麼建?做需求的時候,首要目標不是要弄清楚業務是如何一步一步完成的,而是要弄清楚有多少業務的參與者?找出問題領域里包含的抽象角度,每個參與者的目標就是抽象角度,也就是用例
什麼是模?靜態的事情(物)+特定的條件(規則)+特定的動作(參與者的驅動)=特定的場景(事件)(人、事、物、規則)。
建模公式