Tải bản đầy đủ (.pdf) (18 trang)

BÀI TIỂU LUẬN-Thiết kế lớp

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (217.95 KB, 18 trang )

LTUDQL 2
©HCMUS
.
- 1 -
Thiết kế lớp
Bùi Tấn Lộc

LTUDQL 2
©HCMUS
.
1.Phương pháp luận
• Bước 1: phân tích
• Xác định trong ngữ cảnh bài toán có bao nhiêu đối tượng và các đối
tượng này thuộc về những lớp nào
• Bước 2: thiết kế
• Thiết kế các lớp đã được xác định ở bước 1 (trong trường hợp các lớp đó
không có sẵn). Việc thiết kế chia thành 2 giai đoạn:
• Thiết kế thành phẫn dữ liệu
• Thiết kết thành phần xử lý.
• Bước 3: cài đặt
• Là sự thể hiện bản thiết kế bằng một ngôn ngữ lập trình cụ thể. Trong
phạm vi môn học này chúng ta sẽ sử dụng ngôn ngữ VB.NET
- 2 -
LTUDQL 2
©HCMUS
.
2.Thiết kế lớp
• Giai đoạn 1: Thiết kế thành phần dữ liệu
• Xác định lớp đối tượng có những thông tin nào và kiểu dữ liệu của từng
thông tin cụ thể
• Giai đoạn 2: Thiết kế thành phần xử lý


• Còn được gọi là thiết kế các phương thức cho lớp
• Xác định các khả năng mà các đối tượng của lớp phải có
• Người ta chia các khả năng thành 5 nhóm chính:
1. Phương thức khởi tạo
2. Phương thức cung cấp thông tin
3. Phương thức cập nhật thông tin
4. Phương thức xử lý, tính toán
5. Phương thức kiểm tra
- 3 -
LTUDQL 2
©HCMUS
.
2.1 Phương thức khởi tạo
• Có nhiệm vụ thiết lập các thông tin ban đầu cho đối tượng.
Trong nhóm này lại chia thành các loại sau:
• Phương thức khởi tạo mặc định
• Phương thức khởi tạo khi biết đầy đủ thông tin
• Phương thức khởi tạo khi biết một số thông tin (các thông tin còn lại được
khởi tạo mặc định)
• Phương thức khởi tạo dựa vào một đối tượng khác
• Phương thức nhập
• Ghi chú: ngoài phương thức nhập các phương thức khởi tạo
còn lại thường được thay thế bằng hàm tạo
- 4 -
LTUDQL 2
©HCMUS
.
2.2 Phương thức cung cấp thông tin
• Có nhiệm vụ cung cấp thông tin của đối tượng cho thế giới
bên ngoài, giúp cho đối tượng giao tiếp với chương trình và

các đối tượng khác
• Ghi chú: Một số phương thức cung cấp thông tin thường được
thay thế bằng đoạn lệnh Get trong câu lệnh Property
- 5 -
LTUDQL 2
©HCMUS
.
2.3 Phương thức cập nhật thông tin
• Có nhiệm vụ cập nhật lại thông tin của đối tượng trong quá
trình sống của đối tượng
• Ghi chú: Một số phương thức cập nhật thông tin thường được
thay thế bằng đoạn lệnh Set trong câu lệnh Property

- 6 -
LTUDQL 2
©HCMUS
.
2.4 Nhóm các phương thức xử lý tính toán
• Có nhiệm vụ xử lý tính toán bên trong đối tượng hay giữa đối
tượng này với đối tượng khác
- 7 -
LTUDQL 2
©HCMUS
.
2.5 Nhóm các phương thức kiểm tra
• Có nhiệm vụ thực hiện kiểm tra về mặt ràng buộc dữ liệu hay
kiểm tra tính chất nào đó của đối tượng.
- 8 -
LTUDQL 2
©HCMUS

.
3. Ví dụ
• Thiết kế lớp DiemOxy trong mặt phẳng Oxy
• Phương pháp luận?
• Giai đoạn 1?
• Giai đoạn 2?
- 9 -
LTUDQL 2
©HCMUS
.
3.1 Thiết kế thành phần dữ liệu
• Tung độ _x kiểu số thực
• Hoàng độ _y kiểu số thực
- 10 -
LTUDQL 2
©HCMUS
.
3.2 Thiết kế thành phần xử lý
3.2.1 Nhóm các phương thức khởi tạo
• Phương thức khởi tạo mặc định (giá trị hoành độ, tung độ
được khởi tạo mặc định)
• Phương thức khởi tạo khi biết đầy đủ thông tin (khi biết chính
xác giá trị hoành độ, tung độ)
• Phương thức khởi tạo khi biết một số thông tin (trong ngữ
cảnh bài toán này không áp dụng)
• Phương thức khởi tạo dựa vào một đối tượng DiemOxy khác
• Phương thức nhập
- 11 -
LTUDQL 2
©HCMUS

.
3.2.2 Nhóm các phương thức cung cấp thông tin
• Phương thức cung cấp thông tin hoành độ _x (đoạn lệnh Get
trong câu lệnh Property)
• Phương thức cung cấp thông tin tung độ _y (đoạn lệnh Set
trong câu lệnh Property)
• Phương thức xuất
- 12 -
LTUDQL 2
©HCMUS
.
3.2.3 Nhóm các phương thức cập nhật thông tin
• Phương thức cập nhật tung độ _x (đoạn lệnh Set trong câu
lệnh Property)
• Phương thức cập nhật tung độ _y (đoạn lệnh Set trong câu
lệnh Property)
• Phương thức dịch chuyển điểm về phía bên trái 1 đơn vị
• Phương thức dịch chuyển điểm về phía bên phải 1 đơn vị
• Phương thức dịch chuyển điểm về phía bên trên 1 đơn vị
• Phương thức dịch chuyển điểm về phía bên dưới 1 đơn vị
• …
- 13 -
LTUDQL 2
©HCMUS
.
3.2.4 Nhóm các phương thức xử lý tính toán
• Phương thức tính khoảng cách hoành độ _x giữa 2 điểm
• Phương thức tính khoảng cách tung độ _y giữa 2 điểm
• Phương thức tính khoảng cách giữa 2 điểm
- 14 -

LTUDQL 2
©HCMUS
.
3.2.5 Nhóm các phương thức kiểm tra
• Phương thức kiểm tra điểm có nằm trong cung phần tư thứ 1
không
• Phương thức kiểm tra điểm có nằm trong cung phần tư thứ 2
không
• Phương thức kiểm tra điểm có nằm trong cung phần tư thứ 3
không
• Phương thức kiểm tra điểm có nằm trong cung phần tư thứ 4
không

- 15 -
LTUDQL 2
©HCMUS
.
4. Cài đặt
• Xem demo, source code DiemOxyApp
- 16 -
LTUDQL 2
©HCMUS
.
5.Áp dụng
• Thiết kế và cài đặt lớp TamGiac trong mặt phẳng Oxy
• Thiết kế và cài đặt lớp DuongTron trong mặt phẳng Oxy
- 17 -
LTUDQL 2
©HCMUS
.

6.Câu hỏi

- 18 -

×