Đ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
21 trang |
Chia sẻ: Mr Hưng | Lượt xem: 1048 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Phân tích thiết kế hướng đối tượng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở 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
Các file đính kèm theo tài liệu này:
- oop1_cac_khai_niem_ve_hdt_6422.pdf