CH NG 8:ƯƠ
CH NG 8:ƯƠ
Design Pattern
Design Pattern
1
Nôi dung
Nôi dung
2
Coupling la gi?
Cohesion la gi?
Pattern la gi?
GRASP la gi?
Coupling là gì?
Coupling là gì?
Coupling là 1 cách đ đo l ng xem ừơ
1 ph n t khi đ c k t n i thì nó có ượ ế
kh năng “hi u bi t” đ n m c nào ế ế
hay hoàn toàn phu thu c vào các
ph n t khác. Ph n t có th là class,
subsystem, system…
M t ph n t có coupling th p (low
coupling) nghĩa là nó không ph
thu c nhiêu vào các ph n t khác.
3
Coupling là gì?
Coupling là gì?
M t l p có coupling cao s ph thu c ơ
vào nhi u l p khác. Các l p này là ơ ơ
không nên dùng vì:
Nh ng thay đ i trong các l p có liên quan
s m cho l p nay cũng b thay đ i theo ơ
K hi u khi cng b cô l p
K dùng l i vì nó đòi h i s hi n di n
cua 1 s l p mà ph thu c vào ơ
4
Cohesion là gì?
Cohesion là gì?
Coupling đ c p đ n s t ng tác ế ươ
gi a các đ i t ng thì cohesion đ ượ
c p đ n s t ng tác bên trong 1 đ i ế ươ
t ng. ượ
Cohesion là 1 cách đo l ng đ ườ
xem các nhiêm vu c a 1 ph n t
quan h ch t ch v i nhau nh th ư ế
nào?
M t ph n t có trách nhi m t ng ươ
đ i cao, và không ph i làm quá nhi u
vi c đ c xem là có cohesion cao ượ
(high cohesion) 5