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