DANH MỤC TÀI LIỆU
Nhập môn Design Pattern
Nh p môn Design Pattern
M đ uở ầ
Nh m i ng i đã bi t, chúng ta t lúc b t đ u t p code cho đ n mãi v ư ọ ườ ế ắ ầ ậ ế
sau chia làm r t nhi u level. Đ i khái có th k đ n là: Junior (Junior ể ể ế
Developer), Dev (Developer) và Senior (Senior Developer). Đ đ t t i level ể ạ
Senior, b t kì Dev nào cũng c n ph i t ng t n vài Design Pattern(DP) c ả ườ ơ
b n đ phòng thân. Bài vi t này mình mu n chia s v i các b n m t s ế ẻ ớ
m u Design Pattern đ cùng nhau ti n thêm trên con đ ng coder. ể ế ườ
Nhi u ng i khi đ t t i level Senior c ng r ng mình đã đ t đ n level t i ườ ỡ ằ ế
cao c a code mà không bi t r ng "Thiên ngo i h u thiên, nhân ngo i h u ế ằ
nhân". Phía trên level Senior còn có vô s cao th đ t t i nh ng c nh gi i ủ ạ
khác nh Manager (Project Manager) ho c Professor (Software Architect). ư ặ
Nh ng k này hi m th y nh ph ng mao lân giác, mang m t thân skill và ế ư ượ
l ng cao ng t ng ng. Chém gió vu v th thôi, gi mình s vào vi c ươ ưỡ ơ ế
chính nhé.
Design Pattern là gì?
Nói m t cách đ n gi n, design pattern là ơ ả các m u thi t k có s n, dùng ế ế
đ gi i quy t m t v n để ả ế . Áp d ng m u thi t k này s làm code ế ế d
b o trì, m r ng h n ơ . Nói văn hoa, design pattern làtinh hoa trong code
h c, đã đ c các b c ti n b i đúc k t, truy n l u t đ i này qua đ i khác. ượ ế ư ừ ờ
Design pattern là thi t k d a trên code, nó n m m t trình đ cao h n ế ế ự ơ
CODE, do đó coder c a b t kì tr ng phái nào (C#, Java, Python) cũng có ủ ấ ườ
th áp d ng vào đ c.ể ụ ượ
Tuy nhiên không ph i tr ng h p nào ta cũng nên dùng Design Pattern. H cả ườ
Design Pattern là đ nâng cao trình đ , đ gi i quy t v n đ , không ph i ể ả ế ấ
đ l y ra lòe thiên h . Nhi u ng i h c ngh ch a tinh, ng a non háu đá, ế ấ ườ ư
nhét design pattern vào d án m t cách vô t i v , nh thì khi n code tr ộ ạ ế
nên r i r m, khó ki m soát, n ng thì có th phát sinh các v n đ nguy ố ắ
hi m nh bug ch ng h n. Các b n hãy nhìn k thân tàn ma d i phía d i ư ẳ ạ ướ
mà làm g ng.ươ
Nh p môn Design Pattern
Có khá nhi u ki u Design Pattern l u l c trên internet, song ta có th t m ư ể ạ
phân lo i làm 3 lo i:ạ ạ
Kh i t o (Creational Design Pattern)ở ạ : Liên quan đ n vi c kh i t o ế ở ạ
object.
VD: Factory, Object Pool, Abstract Factory, Builder.
C u t o (Structure Design Pattern)ấ ạ : Liên quan đ n k t c u, liên h ế ế ấ
gi a các object.
VD: Adapter, Bridge, Decorator, Proxy, Composite, Facede.
Hành vi (Behavioral Design Pattern): Liên quan t i hành vi c a các ớ ủ
object.
VD: Iterator, Mementor, Strategy, Template Method, Visitor.
Khi mu n h c m t Design Pattern m i hãy t p trung vào 3 ph n:
V n đấ ề: V n đ mà Design Pattern đó gi i quy t.ấ ề ế
S đơ ồ: S đ UML mô t design pattern.ơ ồ
Ví d: Code minh h a.
L i k tờ ế
Xin nh c l i m t l n n a: Design Pattern đ c t o ra ộ ầ ượ đ gi i quy t v n ể ả ế
đ , ch không ph i đ ph c t p hóa nó ứ ạ . Các b c cao nhân có câu: n c ậ ướ
có th dâng thuy n, cũng có th l t thuy n. Design Pattern có th gi i ể ậ
quy t v n đ , cũng có th làm nó r c r i ph c t p h n.ế ứ ạ ơ
Coder dùng Design Pattern cũng chia làm ba level. Junior thì nhìn đâu cũng
th y pattern, ch lo áp d ng, nhét r t nhi u pattern vào mà không quan tâm ấ ề
đ n thi t k . Code m t th i gian, đ n level Dev, s h c đ c r ng khi nào ế ế ế ế ẽ ọ ượ
c n dùng pattern, khi nào không. Đ n level Senior, ch dùng pattern khi đã ế ỉ
rõ l i h i c a nó, bi t l y s đ n gi n hài hòa c a design t ng th làm ế ự ơ
tr ng.
Đây là bài vi t đ u tiên c a mình nên n u có gì sai sót trong khâu thi t k ế ầ ế ế ế
hay là ki n th c thì cũng mong các b n thông c m nhé.ế ứ
Trong th i gian t i mình s vi t thêm m t s Design Pattern c b n, hy ế ơ ả
v ng đ n lúc đó không ph i ăn thêm g ch.ọ ế
Chúc các b n vui v .ạ ẻ
thông tin tài liệu
Nói một cách đơn giản, design pattern là các mẫu thiết kế có sẵn, dùng để giải quyết một vấn đề. Áp dụng mẫu thiết kế này sẽ làm code dễ bảo trì, mở rộng hơn.
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×