看下面的UML圖(裝飾器模式),Decorator和組件之間的關係名稱是什麼?它是協會嗎?UML符號:這是什麼關係?
回答
extends關係
這是aggregation。裝飾者有很多組件。
一個是另一個聚合的擴展(這是一個在裝飾者小諾布)。 表示裝飾器可以包含0個或更多個組件。
HTH
馬里奧
+1我錯過了右側的聚合箭頭。 – 2010-09-22 05:56:41
組件和裝飾之間的兩種關係構成另一個圖案 - Composite。
- 裝飾是組件的一個子類型(相對與三角形)
- 裝飾聚集體(包括)的許多組件(相對與金剛石)
它允許創建遞歸樹結構。在裝飾器上調用的操作被委託給它所包含的元素。因此,在您的圖中,Decorator.Operation()的行爲是在其每個聚合組件上調用Component.Operation()。由於thpse中的一個或多個本身可能是裝飾器,因此對Operation()的調用會通過樹結構傳播。
很好斑點! – 2010-09-22 09:37:19
聚集。看到差異的最簡單方法是「待定」和「有」。 對象組件「有裝飾器」。一個對象裝飾器「是一個組件」。
您正在描述一個聚合。 問題是這個圖應該從你的代碼中反轉,否則你應該從你的圖中得到一個代碼。只是圖形化的UML設計對我來說還不夠。
當我使用沒有代碼映射到UML的工具時,我的建模早晚會變得糟糕! 我創建了很好的圖表,但除了演示文稿外沒有人真正使用它們。我意識到這對團隊中的每個人都是浪費時間。 我已經切換到一個專業的工具,然後我的項目真的被團隊使用,而不是在故事板中使用一次圖形視圖。 令我感到驚訝的是,開發人員還糾正了我的圖表,因爲在實施階段,UML中的優點在代碼中是不可能的:-) 這就是爲什麼如果使用類圖,UML作爲獨立對我沒有任何價值。我使用開源圖形工具做了這個錯誤,但不會再這樣做!
- 1. UML:這種關係是什麼意思?
- 2. UML符號類關係Java
- 3. 什麼是UML
- 4. 這是什麼樣的UML圖?
- 5. 這是什麼樣的關係?
- 6. 將UML符號反轉爲UML符號?
- 7. UML - 在方法中聲明類實例時什麼是關係
- 8. 這個MSVC符號是什麼意思?
- 9. 這個符號的含義是什麼:∧?
- 10. 這個符號是什麼意思:: =?
- 11. 這個eclipse符號是什麼意思?
- 12. 這個符號是什麼意思?
- 13. 這是什麼類型的符號?
- 14. 這些git符號是什麼意思?
- 15. 這是什麼數據符號?
- 16. 什麼是智能手錶的UML符號?
- 17. 什麼是oracle 11g中的遞歸關係的符號?
- 18. 這是什麼JavaScript的符號做:對象[關鍵](值)
- 19. 這個問號運算符是關於什麼的?
- 20. 這是什麼滾動模式和相關的符號調用?
- 21. 什麼是₧符號?
- 22. UML依賴關係
- 23. 加號符號在關係建模中意味着什麼?
- 24. 這是什麼?符號的意思是這裏
- 25. 這是什麼號碼?
- 26. 這裏逗號是什麼?
- 27. 這是什麼系列:1,1,2,3,3,3,4,4,5,5,5,
- 28. 這是什麼類型的關係,這對於一個類圖
- 29. 符號UML類圖
- 30. 符號UML類圖
AFAIK,擴展關係是在用例之間不是類。 – odiseh 2010-09-22 05:49:03
@odiseh:你錯了。類之間有擴展的關係。 – 2010-09-22 05:53:05
+1 Lie Ryan - 擴展在類之間有效。 – sfinnie 2010-09-22 10:21:23