DIR Return Create A Forum - Home
---------------------------------------------------------
Le Duy Thang
HTML https://thang.createaforum.com
---------------------------------------------------------
*****************************************************
DIR Return to: General Discussion
*****************************************************
#Post#: 7--------------------------------------------------
In design
DIR By: thang837159
Date: June 12, 2014, 8:53 pm
---------------------------------------------------------
A.Tổng quan về Design
I.Vấn đề trong thiết kế phần
mềm hướng đối tượng
Người ta nói rằng, việc thiết
kế một phần mềm hướng
đối tượng là một công
việc khó, và việc thiết kế một
một phần mềm hướng đối
tượng phục vụ cho mục đích
dùng lại c̣n khó hơn. Chúng ta phải t́m ra
những đối tượng phù
hợp,đại diện cho một
lớp các đối tượng. Sau đó
thiết kế giao diện và cây kế thừa
cho chúng, thiết lập mố
i
quan hệ giữa chúng.Thiết kế của
chúng ta phải đảm bảo là giải
quyết được các vấn đề
hiện tại, có thể tiến hành mở
rộng trong tương lai mà tránh phải
thiết kế lại phần mềm.
Và một tiêu trí quan trọng là phải nhỏ
gọn. Việc thiết kế một phần
mềm hướng đối
tượng phục vụ cho mục đích
dùng lại là một công việc khó, phức t
ạp v́ vậy chúng ta
không thể mong chờ thiết kế của
ḿnh sẽ là đúng, và đảm bảo các tiêu
trí trên ngay
được. Thực tế là nó cần
phải được thử nghiệm sau vài
lần và sau đó nó sẽ được
sửa
chữa lại.
Đứng trước một vấn
đề, một người phân tích thiết
kế tốt có thể đưa ra nhiều
phương án giải quyết, anh ta phải
duyệt qua tất cả các phương án và
rồi chọn ra cho
ḿnh một phương án tốt
nhất.Phương án tốt nhất này sẽ
được anh ta dùng đi dùng lại
nhiều lần, và dùng mỗi khi gặp vấn
đề tương tự. Mà trong phân tích
thiết kế phần mềm
hướng đối tượ
ng ta luôn gặp lại những vấn
đề tương tự như nhau.
II. Lịch sử design
Ư tưởng dùng mẫu xuất phát từ ngành
kiến trúc, Alexander,
Ishikawa,Silverstein,Jacobson,Fiksdahl-King và Angel (1977)
lần đầu tiên đưa ra ư
tưởng dùng các mẫu chuẩn trong
thiết kế xây dựng và truyền thông.
Họ đă xác định và
lập sưu liệu các mẫu có liên quan
để có thể dùng để giải
quyết các vấn đề thường
xảy ra
trong thiết kế các cao ốc. Mỗi mẫu
này là một cách thiết kế, chúng đă
được phát triển
hàng trăm năm như là các giải pháp cho các
vấn
đề mà người ta làm trong lĩnh
vực xây
dựng thường gặp. Các giải pháp
tốt nhất có được ngày hôm nay là qua
một quá tŕnh
sàng lọc tự nhiên. Mặc dù nghành công
nghệ phần mềm không có lịch sử
phát triển lâu
dài như nghành kiến trúc, xây dựng nhưng
Công nghệ phần mềm là một nghành công
nghiệp tiên tiến, tiếp thu tất cả
những ǵ tốt đẹp nhất từ các
nghành khác. Mẫu được
xem là giải pháp tốt để giải
quyết vấn đề xây d
ựng hệ thống phần mềm.
Suốt những năm đầu 1990,thiết
kế mẫu được thảo luận
ở các hội thảo workshop,
sau đó người ta nổ lực để
đưa ra danh sách các mẫu và lập sưu
liệu về chúng. Những
người tham gia bị dồn vào việc
cần thiết phải cung cấp một
số kiểu cấu trúc ở một mức
quan niệm cao hơn đối tượ
ng và lớp để cấu trúc này có thể
được dùng để tổ chức các
lớp. Đây là kết quả của sự
nhận thức đựơc rằng việc
dùng các kỹ thuật hướng đối
tượng
độc lập sẽ không mang lại
những cải tiến đáng kể
đối với chất lượng cũng
như hiệu quả
của công việc phát triển phần mềm.
Mẫu được xem là cách tổ ch
ức việc phát triển
hướng đối tượng, cách đóng
gói các kinh nghiệm của những ngựi
đi trước và rất hiệu
quả trong thực hành.
Năm 1994 tại hội nghị PLoP( Pattern
Language of Programming Design) đă
được tổ chức. Cũng trong
năm này quyển sách Design patterns : Elements of
Reusable
Object Oriented Software (Gamma, Johnson,Helm và Vhissdes,1995)
đă được xuất bản
đúng vào thời điểm diễn ra hội
nghị OOPSLA’94. Đây là một tài liệu c̣n
phôi thai
trong việc làm nỗi bật ảnh
hưởng củ
a mẫu đối với việc phát triển
phần mềm, sự đóng
4
góp của nó là xây dựng các mẫu thành các danh
mục (catalogue) với định dạng
chuẩn
được dùng làm tài liệu cho mỗi
mẫu và nổi tiếng với tên Gang of Four
(bộ tứ), và các
mẫu nó thường được gọi là
các mẫu Gang of Four. C̣n rất nhiều các
cuốn sách khác
xuất hiện trong 2 năm sau, và các
định dạng chuẩn khác được
đưa ra.
Năm 2000 Evitts có tổng kết về cách các
mẫu xâm nhập vào thế giới phần
mềm
(sách của ông lúc bấy giờ chỉ nói
về nh
ững mẫu có thể được sử
dụng trong UML chứ
chưa đưa ra khái niệm những mẫu
thiết kế một cách tổng quát). Ông công
nhận Kent
Beck và Ward Cunningham là những người phát
triển những mẫu đầu tiên với
SmallTalk trong công việc của họ
được báo cáo tại hội nghị
OOPSLA’87. Có 5 mẫu mà
Kent Beck và Ward Cunningham đă t́m ra trong việc
kết hợp các người dùng của
một
hệ thống mà họ đang thiết kế.
Năm mẫu này đều
được áp dụng để thiết
kế giao diện
người dùng trong môi trường Windows.
III.Design pattern là ǵ ?
Design patterns là tập các giải pháp cho cho
vấn đề phổ biến trong thiết
kế các
hệ thống máy tính. Đây là tập các
giải pháp đă được công nhận là
tài liệu có giá trị,
những người phát triển có thể áp
dụng giải pháp này để giải
quyết các vấn đề tương
tự.
Giống như với các yêu cầu của
thiết kế và phân tích hướng
đối tượng (nhằm đạt
được
khả năng sử dụng các thành ph
ần và thư viện lớp), việc sử
dụng các mẫu cũng cần phải
đạt được khả năng tái
sử dụng các giải pháp chuẩn
đối với vấn đề
thường xuyên xảy ra.
Christopher Alexander nói rằng :” Mỗi một
mẫu mô tả một vấn đề
xảy ra lặp đi
lặp lại trong môi trường và mô tả
cái cốt lơi của giải pháp để cho
vấn đề đó.Bằng cách
nào đó b
ạn đă dùng nó cả triệu lần mà không
làm giống nhau 2 lần”.
*****************************************************
Page 1 of 1