Bài giảng Phân tích thiết kế hướng đối tượng - Vũ Thị Dương - Bài 1: Các khái niệm cơ bản về hướng đối tượng

Phương pháp hướng chức năng

 Phương pháp hướng đối tượng

 Đối tượng

 Lớp

 Các tính chất cơ bản của hệ thống hướng đối tượng

pdf21 trang | Chuyên mục: Thiết Kế Hướng Đối Tượng Với UML | Chia sẻ: dkS00TYs | Lượt xem: 5408 | Lượt tải: 3download
Tóm tắt nội dung Bài giảng Phân tích thiết kế hướng đối tượng - Vũ Thị Dương - Bài 1: Các khái niệm cơ bản về hướng đối tượng, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Gv: Vũ Thị Dương
Email: duongvt01@gmail.com
KHOA CÔNG NGHỆ THÔNG TIN
Trường Đại học công nghiệp Hà Nội
PHÂN TÍCH THIẾT KẾ 
HƯỚNG ĐỐI TƯỢNG
Nội dung môn học
 Thời lượng: 4 tín chỉ, 2 tín chỉ lt+ 2 tín chỉ TH
 Giáo viên: Vũ Thị Dương
 Khoa: Công nghệ phần mềm
 Email: duongvt01@gmail.com
 Điện thoại: 0904.755.919
2010 Phân tích thiết kế hướng đối tượng Bài 1 – 2/21
Nội dung môn học
 Điều kiện tiên quyết:
 Đã học môn Kỹ thuật lập trình, Phân tích và thiết kế hệ thống, Lập 
trình hướng đối tượng, Nhập môn công nghệ phần mềm
 Mục tiêu của học phần:
 Cung cấp cho sinh viên cách tiếp cận hướng đối tượng giúp để có 
được những công cụ, phương pháp mới, phù hợp để tạo ra những 
hệ thống phần mềm chất lượng cao nhằm đáp ứng được những 
nhu cầu thường xuyên thay đổi, ngày một phức tạp của thực tế.
 Kết thúc môn học, sinh viên có thể thực hiện các đồ án tốt nghiệp 
và tham gia vào các dự án phát triển phần mềm ứng dụng.
2010 Phân tích thiết kế hướng đối tượng Bài 1 - 3/21
Nội dung chi tiết
1. Các khái niệm hướng đối tượng
2. Tổng quan về ngôn ngữ mô hình hóa UML
3. Mô hình hóa yêu cầu (biểu đồ ca sử dụng)
4. Mô hình hóa lĩnh vực ứng dụng (biểu đồ lớp lĩnh vực)
5. Mô hình hóa hành vi( biểu đồ tương tác, trạng thái)
6. Biểu đồ kiến trúc vật lý và phát sinh mã trình
7. Mô hình hóa dữ liệu
2010 Phân tích thiết kế hướng đối tượng Bài 1 – 4/21
Phân tích thiết kế hướng đối tượng Bài 1 - 5/21
Tài liệu tham khảo chính
1. Đặng Văn Đức, Phân tích thiết kế hướng đối tượng bằng 
UML, Nhà xuất bản Giáo dục, 287 trang. 2002.
2. Zhiming Liu, Object-Oriented Software Development with 
UML, UNU/IIST, 169 pp, 2002.
3. Phần mềm: Rational Rose Enterprise Edition 2002, IBM 
Rational Software. 2002.
4. Nguyễn Văn Ba, Phát triển hệ thống hướng đối tượng với 
UML 2.0 và C++, Nxb Đại học quốc gia hà nội, 2005
5. TS. Dương Kiều Hoa – Tôn Thất Hoà An, Phân tích hệ 
thống bằng UML, tài liệu đào tạo từ xa HCM, 2009 
Các khái niệm cơ bản về hướng
đối tượng
Bài 1
Nội dung trình bày
 Phương pháp hướng chức năng
 Phương pháp hướng đối tượng
 Đối tượng
 Lớp
 Các tính chất cơ bản của hệ thống hướng đối tượng
2010 Phân tích thiết kế hướng đối tượng Bài 1 - 7/21
dvduc-2004 Phân tích thiết kế hướng đối tượng Bài 1 - 8/59
Phương pháp hướng chức năng
 Cho đến giữa 1990: Phần lớn các kỹ sư phần mềm sử dụng phương 
pháp thiết kế chức năng top-down (thiết kế kiến trúc)
 Bị ảnh hưởng bới các ngôn ngữ lập trình ALGOL, Pascal, C
 Các hàm của hệ thống phần mềm được xem như tiêu chí cơ sở khi 
phân rã
 Tách chức năng khỏi dữ liệu
 Chức năng có hành vi
 Dữ liệu chứa thông tin bị các chức năng tác động
 Phân tách top-down chia hệ thống thành các hàm để chuyển sang mã 
trình, dữ liệu được gửi giữa chúng. 
Main function
F1 F2
F 1.1 F 1.2 F 2.1 F 2.2
dvduc-2004 Phân tích thiết kế hướng đối tượng Bài 1 - 9/59
Phương pháp hướng chức năng
 Tiến trình phát triển tập trung vào thông tin mà hệ 
thống quản lý
 Người phát triển hệ thống hỏi người sử dụng cần thông tin gì
 Thiết kế CSDL để lưu trữ thông tin
 Xây dựng màn hình nhập liệu
 Hiển thị báo cáo
 Chỉ tập trung vào thông tin, ít quan tâm đến cái gì thực 
hiện với thông tin hay hành vi hệ thống
 Tiệm cận này gọi là tiệm cận hướng dữ liệu
 Đã được áp dụng nhiều năm và tạo ra hàng ngàn hệ thống
 Thuận tiện cho thiết kế CSDL
 Bất tiện cho xây dựng các hệ thống tác nghiệp
 yêu cầu hệ thống thay đổi theo thời gian
dvduc-2004 Phân tích thiết kế hướng đối tượng Bài 1 - 10/59
Phương pháp hướng chức năng
 Công nghệ hướng chức năng có các hạn chế sau
 Sản phẩm hình thành từ giải pháp này khó bảo trì
 Mọi chức năng đều chia sẻ khối dữ liệu lớn
 Các chức năng phải hiểu rõ dữ liệu được lưu trữ thế nào
 Khi thay đổi cấu trúc dữ liệu kéo theo thay đổi mọi hàm liên 
quan
 Tiến trình phát triển không ổn định
 Thay đổi yêu cầu kéo theo thay đổi các chức năng
 Rất khó bảo toàn kiến trúc thiết kế ban đầu khi hệ thống tiến 
hóa
 Tiệm cận này không hỗ trợ lập trình bằng ngôn ngữ 
hướng đối tượng như C++, Java, Smalltalk, Eiffel.
dvduc-2004 Phân tích thiết kế hướng đối tượng Bài 1 - 11/59
Phương pháp hướng đối tượng
 Chiến lược phát triển phần mềm hướng đối tượng là quan sát thế giới 
như tập các đối tượng
 Các đối tượng tương tác và cộng tác với nhau để hình thành hành vi mức 
cao
 Các tính chất của đối tượng
 Đối tượng có thể là 
 thực thể nhìn thấy được trong thế giới thực (trong pha phân tích yêu cầu) 
 biểu diễn thực thể hệ thống (trong pha thiết kế)
 Đối tượng có trách nhiệm quản lý trạng thái của mình, cung cấp dịch vụ 
cho đối tượng khác khi có yêu cầu
 do vậy, dữ liệu và hàm cùng gói trong đối tượng
 Chức năng hệ thống: 
 các dịch vụ được yêu cầu và cung cấp như thế nào giữa các đối tượng, không 
quan tâm đến thay đổi trạng thái bên trong đối tượng
 Các đối tượng được phân thành class
 Các đối tượng thuộc cùng lớp đều có đặc tính (thuộc tính và thao tác) chung
dvduc-2004 Phân tích thiết kế hướng đối tượng Bài 1 - 12/59
Phương pháp hướng đối tượng
 Tiệm cận hướng đối tượng tập trung vào cả thông tin và hành vi
 Cho khả năng xây dựng hệ thống mềm dẻo, “co dãn”
 Phương pháp này dựa trên các nguyên tắc sau
 Tính gói
 Kế thừa
 Đa trị
Lake Model
Natural Model
Phân biệt 2 hệ thống HĐT và HCN
 Phân biệt 2 hệ thống
 Lập trình cấu trúc
 Chương trình= thuật toán + cấu trúc dữ liệu
 Lập trình hướng đối tượng
 Chương trình = ∑ đối tượng
 Đối tượng = phương thức + thuộc tính
2010 Phân tích thiết kế hướng đối tượng Bài 1 - 13/21
Đối tượng
 Đối tượng (object) là khái niện cho phép mô tả các sự 
vật/thực thể trong thế giới thực
 Các đối tượng duy trì các mối quan hệ giữa chúng
 Ví dụ: Sách – là 1 đối tượng
2010 Phân tích thiết kế hướng đối tượng Bài 1 - 14/21
Đối tượng
 Các tính chất của đối tượng
 Đối tượng = trạng thái + hành vi + định danh
 Trạng thái là các đặc tính của đối tượng tại 1 thời điểm
 TT = tập hợp các thuộc tính
 Vd: xe máy: màu xanh,đứng yên, dream,…
 Hành vi thể hiện chức năng của đối tượng
 Tập hợp các phương thức= 1 thao tác hoặc được thực hiện = chính nó 
hoặc thực hiện khi có yêu cầu từ môi trường
 Vd: xe máy: Khởi động, chạy
 Định danh thể hiện sự tồn tại duy nhất của đối tượng
2010 Phân tích thiết kế hướng đối tượng Bài 1 - 15/21
Đối tượng
 Các đối tượng giao tiếp:
 Gửi thông điệp cho nhau
 Các loại thông điệp
 Hàm dựng (constructor)
 Hàm hủy (destructor)
 Hàm chọn lựa –get
 Hàm sửa đổi- set
 Các hàm khác
 Giữa các đối tượng có mối liên kết với hau
 Nguyễn văn a hoc tại đại học công nghiệp
2010 Phân tích thiết kế hướng đối tượng Bài 1 - 16/21
Lớp
 Là khái niện dùng để mô tả 1 tập hợp các đối tượng có 
dùng 1 cấu trúc hành vi và có dùng mối quan hệ với các 
đối tượng khác
 Lớp= các thuộc tính + phương thức
 Lớp là 1 bước trừu tượng hóa
 Tìm kiếm các điểm giống nhau, bỏ qua các điểm khác của đtượng
2010 Phân tích thiết kế hướng đối tượng Bài 1 - 17/21
Người
Tên
Tuổi
Đổi tuổi()
Lớp
 Quan hệ giữa các lớp: kết hợp
 Một kết hợp là một tập hợp các mối liên kết giữa các đối tượng
2010 Phân tích thiết kế hướng đối tượng Bài 1 – 18/21
Sinh viên Đại họcHọc
Lớp và đối tượng
 Đối tượng là thể hiện của lớp
 Giá trị là thể hiện của thuộc tính
 Liên kết là thể hiện của kết hợp
2010 Phân tích thiết kế hướng đối tượng Bài 1 – 19/21
Các tính chất của lập trình HĐT
 Tính đóng gói
 Dữ liệu + xử lý dữ liệu = đối tượng
 Thuộc tính + phương thức = lớp
 Ưu điểm
 Hạn chế ảnh hưởng khi có thay đổi cập nhật
 Ngăn cản sự truy cập thông tin từ bên ngoài
 Che dấu thông tin
 Kết thừa: là việc lớp được xây dựng từ 1 hay nhiều lớp bằng việc 
chia sẻ các thuộc tính và phương thức
 Đơn kế thừa
 Đa kế thừa
2010 Phân tích thiết kế hướng đối tượng Bài 1 – 20/21
Các tính chất của lập trình HĐT
 Tính đa hình
 Là khả năng các phương thức khác nhau được thực hiện để trả lời 
cùng 1 yêu cầu
 Mỗi lớp con thừa kế đặc tả các phương thức từ lớp cha và các 
phương thức này có thể được sửa đổi trong lớp con để thực hiện 
chức năng riêng trong lớp đó
 Một phương thức có nhiều dạng khác nhau trong các lớp khác 
nhau
2010 Phân tích thiết kế hướng đối tượng Bài 1 – 21/21

File đính kèm:

  • pdfBài giảng Phân tích thiết kế hướng đối tượng - Vũ Thị Dương - Bài 1 Các khái niệm cơ bản về hướng đối tượng.pdf
Tài liệu liên quan