設計模式第四堂課

領域分析:

·     將領域概念用專業術語進行建模

·     領域模型是對領域內的概念類或現實世界中對象的可視化表示。

 

領域模型:

·     class diagram 類圖            java

ClassName

Public class ClassName

Attributes 

Fields

Behaviors  

Methods

 

可見性:+“public” -“private”   #“protected”

 

類之間的關係relation:

依賴dependence:假設A類的變化引起了B類的變化,則說名B類依賴於A類

在UML中,依賴關係用帶箭頭的虛線表示,由依賴的一方指向被依賴的一方。

 

關聯association:類之間的聯繫,如客戶和訂單,每個訂單對應特定的客戶,每個客戶對應一些特定的訂單,再如籃球隊員與球隊之間的關聯(下圖所示)。

1)  雙向關聯: 默認情況下,關聯是雙向的。


2 ) 單向關聯:類的關聯關係也可以是單向的,單向關聯用帶箭頭的實線表示.


3) 自關聯: 在系統中可能會存在一些類的屬性對象類型爲該類本身,這種特殊的關聯關係稱爲自關聯。


4) 重數性關聯: 重數性關聯關係又稱爲多重性關聯關係(Multiplicity),表示一個類的對象與另一個類的對象連接的個數。在UML中多重性關係可以直接在關聯直線上增加一個數字表示與之對應的另一個類的對象的個數。

表示方式

多重性說明

1..1

表示另一個類的一個對象只與一個該類對象有關係

0..*

表示另一個類的一個對象與零個或多個該類對象有關係

1..*

表示另一個類的一個對象與一個或多個該類對象有關係

0..1

表示另一個類的一個對象沒有或只與一個該類對象有關係

m..n

表示另一個類的一個對象與最少m、最多n個該類對象有關係 (m<=n)

  

繼承inheritance:描述父類與子類之間的關係,父類又稱作基類或超類,子類又稱作派生類

 

聚合aggression:表示的是整體和部分的關係,整體與部分可以分開.

在UML中,聚合關係用帶空心菱形的直線表示。 

 

Patron

- tel_No: String

- pwd: String

 

+ order Meal(payOption:int,delivery location:String,……):boolean

 

 

 

 

分析:

1.頭腦風暴:通過用例做領域建模,按用例找名詞n(域),動詞v(關係)、num、has

,is-a

2.classfying分類

3.group 分組

4.draw CD 畫類圖

 

 

UC1 Order meals

 Type

Cafeteria

Patron

Company location

PDS

 

Verified

Delivered

Picked up

 

 

C(CLASS)

A(attribute)

 

 

V(value)

AS(association)

 

 

 

Class Name

Fields

Super Class

Relevant Classes

Patron

 

Employee

Order(patron 、meal)

Pay(patron、meal order)

Menu

 

 

Has-a(menu、food items)

 

 

 

 

 

 

 

 

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章