1. Trang chủ
  2. » Công Nghệ Thông Tin

Dẫn nhập - Cách thiết kế chương trình theo hướng đối tượng

31 514 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Dẫn Nhập - Cách Thiết Kế Chương Trình Theo Hướng Đối Tượng
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Phần Mềm
Thể loại bài giảng
Năm xuất bản 2023
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 31
Dung lượng 94,04 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

7.1 DẪN NHẬPTrong chương này, chúng ta tìm hiểu một ít về cách thiết kế chương trình theo hướng đối tượng, các bước cơ bản cần thiết khi bắt tay vào viết chương trình trên quan điểm thiế

Trang 1

7.1 DẪN NHẬP

Trong chương này, chúng ta tìm hiểu một ít về cách thiết kế chương trình theo hướng đối tượng, các bước cơ bản cần thiết khi bắt tay vào viết chương trình trên quan điểm thiết kế

và thảo chương

7.2 CÁC GIAI ĐOẠN PHÁT TRIỂN HỆ THỐNG

Có năm giai đoạn để phát triển hệ thống phần mềm theo hướng đối tượng:

Phân tích yêu cầu (Requirement analysis) Phân tích (Analysis)

Thiết kế (Design) Lập trình (Programming) Kiểm tra (Testing)

Phân tích yêu cầu

Bằng việc tìm hiểu các trường hợp sử dụng (use case) để nắm bắt các yêu cầu của khách hàng, của vấn đề cần giải quyết Qua trường hợp sử dụng này, các nhân tố bên ngoài có tham gia vào hệ thống cũng được mô hình hóa bằng các tác nhân Mỗi trường hợp sử dụng được mô tả bằng văn bản, đặc tả yêu cầu của khách hàng.

Trang 2

Kiểm tra

Trong giai đoạn kiểm tra, có bốn hình thức kiểm tra hệ thống:

Kiểm tra từng đơn thể (unit testing) được dùng kiểm tra các lớp hoặc các nhóm đơn.

Kiểm tra tính tích hợp (integration testing), được kết hợp với các thành phần và các lớp để kiểm tra xem chúng hoạt động với nhau có đúng không.

Kiểm tra hệ thống (system testing) chỉ để kiểm tra xem hệ thống có đáp ứng được chức năng mà người dùng yêu cầu không.

Kiểm tra tính chấp nhận được(acceptance testing), việc kiểm tra này được thực hiện bởi khách hàng, việc kiểm tra cũng thực hiện giống như kiểm tra hệ thống.

7.3 CÁCH TÌM LỚP

Lớp nên được tìm từ phạm vi bài toán cần giải quyết, vì vậy tên của lớp cũng nên đặt tên các đối tượng thực mà chúng ta biểu diễn Để tìm ra lớp cho bài toán, chúng ta cần trả lời các câu hỏi sau:

Có thông tin nào cần lưu trữ hay phân tích không? Nếu có bất kỳ thông tin nào cần phải lưu trữ, biến đổi, phân tích hoặc xử lý thì đó chính là một lớp dự định cần xây dựng.

Có hệ thống bên ngoài bên ngoài hay không? Hệ thống ngoài có thể được xem như các lớp mà hệ thống của chúng ta chứa hoặc tương tác với nó.

Có các mẫu thiết kế, thư viện lớp, thành phần, … hay không? Các thành phần này đã được xây dựng từ các project trước đó, từ các đồng nghiệp hoặc các nhà sản xuất?

Có thiết bị nào mà hệ thống phải đáp ứng? Bất cứ thiết bị nào được nối với hệ thống có thể chuyển thành lớp dự tuyển.

Tác nhân đóng vai trò như thế nào trong hệ thống? Các vai diễn này nên được xem là lớp như người sử dụng, khách hang, người điều khiển hệ thống,…

7.4 CÁC BƯỚC CẦN THIẾT ĐỂ THIẾT KẾ CHƯƠNG TRÌNH

Để thiết kế một chương trình theo hướng đối tượng, chúng ta phải trải qua bốn bước sau,

từ đó chúng ta xây dựng được một cây phả hệ mang tính kế thừa và các mối quan hệ giữa các đối tượng:

Xác định các dạng đối tượng (lớp) của bài toán (định dang các đối tượng).

Trang 3

Tìm kiếm các đặc tính chung (dữ liệu chung) trong các dạng đối tượng này, những gì chúng cùng nhau chia xẻ.

Xác định được lớp cơ sở dựa trên cơ sở các đặc tính chung của các dạng đối tượng.

Từ lớp cơ sở, sử dụng quan hệ tổng quát hóa để đặc tả trong việc đưa ra các lớp dẫn xuất chứa các thành phần, những đặc tính không chung còn lại của dạng đối tượng Bên cạnh đó, chúng ta còn đưa ra các lớp có quan hệ với các lớp cơ sở và lớp dẫn xuất; các quan hệ này có thể là quan hệ kết hợp, quan hệ tập hợp lại, quan

hệ phụ thuộc.

Với các bước trên chúng ta có được cây phả hệ và quan hệ giữa các lớp Đối với hệ thống phức tạp hơn, chúng ta cần phải phân tích để giải quyết được vấn đề đặt ra theo trật tự sau:

Phân tích một cách cẩn thận về các đối tượng của bài toán theo trật tự từ dưới lên (bottom up).

Tìm ra những gì tồn tại chung giữa các đối tượng, nhóm các đặc tính này lại để được các lớp cơ sơ như hình 7.1

Hình 7.1 Tiếp tục theo hướng từ dưới lên, chúng ta thiết kế được các đối tượng phù hợp như hình 7.2

Trang 4

Hai loại đối tượng này có đặc tính chung đó là viên chức làm việc cho cơ quan.

Từ đây có thể tạo nên lớp cơ sở để quản lý một viên chức (lớp Nguoi) bao gồm mã

số, họ tên và lương.

Sau đó chúng ta xây dựng các lớp còn lại kế thừa từ lớp cơ sở trên:

Lớp dành cho cán bộ, công chức (lớp BienChe) gồm các thuộc

tính: hệ số lương, tiền phụ cấp chức vụ.

Lớp dành cho người làm hợp đồng (lớp HopDong) gồm các thuộc

tính: tiền công lao động, số ngày làm việc trong tháng, hệ số vượt giờ

Trang 5

Hình 7.3 File PERSON.H

8: #define MAX_TEN 50

9: #define MAX_MASO 5

10: #define MUC_CO_BAN 12000011:

12: class Nguoi

Trang 6

20: virtual void TinhLuong()=0;

21: void Xuat() const;

22: virtual void Nhap();

Trang 8

14: virtual void TinhLuong();

15: virtual void Nhap();

Trang 9

File CONTRACT.H

CONTRACT.H

1: //CONTRACT.H

2: Định nghĩa lớp HopDong

Trang 10

16: virtual void TinhLuong();

17: virtual void Nhap();

Trang 11

File CT7_1.CPP:

CT7_1.CPP

1: //CT7_1.CPP

Trang 14

Ví dụ 7.2: Giả sử cuối năm học cần trao giải thưởng cho các sinh viên xuất sắc và các giảng viên có nhiều công trình khoa học được công bố trên tạp chí Các lớp trong cây phả

hệ như hình 7.5: lớp Nguoi để quản lý hồ sơ cá nhân, lớp SinhVien quản lý về sinh viên và lớp GiangVien quản lý giảng viên.

Dữ liệu điểm trung bình.

Phương thức kiểm tra khả năng được khen thưởng.

Phương thức xuất.

Lớp GiangVien:

Dữ liệu điểm trung bình.

Phương thức kiểm tra khả năng được khen thưởng.

Phương thức xuất.

Trang 15

Hình 7.5 File PERSON.H

Trang 22

Trước hết chúng ta cần có lớp cơ sở Shape để lưu trữ thông tin chung cho các hình, sau đó

là hai lớp dẫn xuất Rectangle về hình hình chữ nhật và Circle về hình tròn như hình 7.7

Lớp Shape:

Tọa độ tâm.

Trang 23

Màu đường biên.

Màu tô.

Phương thức thiết lập tô màu.

Phương thức vẽ hình Đây là phương thức thuần ảo.

SHAPE.H

1: //SHAPE.H

Trang 24

12: int XC,YC; //Tọa độ tâm

13: int BoundaryColor; //Màu đường biên14: int FillColor; //Màu tô

15: void Setting() const; //Thiết lập các thông số vẽ và tô màu

Trang 25

2: Định nghĩa hàm thành viên cho lớp Shape3: #include "shape.h"

Trang 26

7: Width=W;

Trang 30

22: if (ErrorCode != grOk)

23: {

24: cout<<"Graphics

error:"<<grapherrormsg(ErrorCode)<<endl;25: cout<<"Press any key to halt:";

Trang 31

Hình 7.8: Kết quả của ví dụ 7.3

Ngày đăng: 05/10/2013, 17:20

HÌNH ẢNH LIÊN QUAN

Hình 7.1 Tiếp tục theo hướng từ dưới lên, chúng ta thiết kế được các đối tượng phù hợp  như hình 7.2 - Dẫn nhập - Cách thiết kế chương trình theo hướng đối tượng
Hình 7.1 Tiếp tục theo hướng từ dưới lên, chúng ta thiết kế được các đối tượng phù hợp như hình 7.2 (Trang 3)
Hình 7.3 File PERSON.H - Dẫn nhập - Cách thiết kế chương trình theo hướng đối tượng
Hình 7.3 File PERSON.H (Trang 5)
Hình 7.4: Kết quả của ví dụ 7.1 - Dẫn nhập - Cách thiết kế chương trình theo hướng đối tượng
Hình 7.4 Kết quả của ví dụ 7.1 (Trang 13)
Hình 7.5 File PERSON.H - Dẫn nhập - Cách thiết kế chương trình theo hướng đối tượng
Hình 7.5 File PERSON.H (Trang 15)
Hình 7.6: Kết quả của ví dụ 7.2 - Dẫn nhập - Cách thiết kế chương trình theo hướng đối tượng
Hình 7.6 Kết quả của ví dụ 7.2 (Trang 22)
Hình 7.7 File SHAPE.H: - Dẫn nhập - Cách thiết kế chương trình theo hướng đối tượng
Hình 7.7 File SHAPE.H: (Trang 23)
Hình 7.8: Kết quả của ví dụ 7.3 - Dẫn nhập - Cách thiết kế chương trình theo hướng đối tượng
Hình 7.8 Kết quả của ví dụ 7.3 (Trang 31)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w