intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình hướng đối tượng: Chương 7 - Trần Minh Thái (2016)

Chia sẻ: Hấp Hấp | Ngày: | Loại File: PPTX | Số trang:54

97
lượt xem
7
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Lập trình hướng đối tượng - Chương 7: Thiết kế theo hướng đối tượng" cung cấp cho người học các kiến thức: Các giai đoạn phát triển hệ thống, các bước thiết kế chương trình theo hướng OOP, kỹ thuật thiết kế lớp. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình hướng đối tượng: Chương 7 - Trần Minh Thái (2016)

  1. Chương 7. Thiết kế theo hướng đối tượng (Object Oriented Design –  OOD) TRẦN MINH THÁI Email: minhthai@itc.edu.vn Website: www.minhthai.edu.vn  Cập nhật: 10 tháng 05 năm 2015
  2. Nội dung #2 1. Các giai đoạn phát triển hệ thống 2. Các bước thiết kế chương trình theo hướng OOP 3. Kỹ thuật thiết kế lớp 4. Ví dụ
  3. Các giai đoạn phát triển hệ thống [1/7] #3 1. Phân tích yêu cầu (Requirement analysis) 2. Phân tích (Analysis) 3. Thiết kế (Design) 4. Lập trình (Programming) 5. Kiểm tra (Testing)
  4. Các giai đoạn phát triển hệ thống [2/7] #4 Phân tích yêu cầu • Bằng việc tìm hiểu các 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 • Dựa vào use case  xác định 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 (actor) • Mỗi use case được mô tả bằng văn bản, đặc tả yêu cầu của khách hàng
  5. Các giai đoạn phát triển hệ thống [3/7] #5 Phân tích • Từ các đặc tả yêu cầu trên, hệ thống sẽ bước đầu được mô hình hóa bởi các khái niệm lớp, đối tượng và các cơ chế để diễn tả hoạt động của hệ thống • Trong giai đoạn phân tích, ta chỉ mô tả các lớp trong lĩnh vực của vấn đề cần giải quyết chứ không đi sâu vào các chi tiết kỹ thuật
  6. Các giai đoạn phát triển hệ thống [4/7] #6 Thiết kế • Các kết quả của quá trình phân tích được mở rộng thành một giải pháp kỹ thuật • Một số các lớp được thêm vào để cung cấp cơ sở hạ tầng kỹ thuật như lớp giao diện, lớp cơ sở dữ liệu, lớp chức năng, …
  7. Các giai đoạn phát triển hệ thống [5/7] #7 Lập trình • Giai đoạn này sẽ đặc tả chi tiết kết quả của giai đoạn thiết kế • Các lớp của bước thiết kế sẽ được chuyển thành mã nguồn theo một ngôn ngữ lập trình theo hướng đối tượng nào đó
  8. Các giai đoạn phát triển hệ thống [6/7] #8 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): 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): 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
  9. Các giai đoạn phát triển hệ thống [7/7] #9 • Kiểm tra hệ thống (system testing): 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): đượ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
  10. Các bước để thiết kế chương trình [1/6] #10 Để thiết kế một chương trình theo hướng đối tượng, ta phải trải qua bốn bước sau: • Xác định các dạng đối tượng (lớp) của bài toán (định danh các đối tượng) • 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 sẻ • 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
  11. Các bước để thiết kế chương trình [2/6] #11 • 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 viên, những đặc tính không chung còn lại của dạng đối tượng • Từ đó xây dựng được một cây kế thừa và các mối quan hệ giữa các lớp
  12. Các bước để thiết kế chương trình [3/6] #12 Đối với hệ thống phức tạp hơn, cần phải phân tích để giải quyết được vấn đề đặt ra theo nguyên tắc: • 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ở
  13. Các bước để thiết kế chương trình [4/6] #13
  14. Các bước để thiết kế chương trình [5/6] #14 • Tiếp tục theo hướng từ dưới lên, ta thiết kế được các đối tượng phù hợp
  15. Các bước để thiết kế chương trình [6/6] #15 • Bằng cách này, tiếp tục tìm các đặc tính chung cho đến tột cùng của các đối tượng • Sau đó cài đặt theo hướng đối tượng từ trên xuống bằng cách cài đặt lớp cơ sở chung nhất • Tiếp tục cài đặt các lớp dẫn xuất trên cơ sở các đặc tính chung của từng nhóm đối tượng • Cho đến khi tất cả các dạng đối tượng của hệ thống được cài đặt xong để được cây kế thừa
  16. Ví dụ 1 [1/7] #16 Tính tiền lương của các nhân viên trong cơ quan theo các dạng: • Biến chế: người lao động lãnh lương từ ngân sách nhà nước được gọi là cán bộ, công chức • Hợp đồng: người lao động lãnh lương từ ngân sách của cơ quan được gọi là người làm
  17. Ví dụ 1 [2/7] #17 • Hệ thống có hai đối tượng: biên chế và hợp đồng • 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ạo lớp cơ sở để quản lý một viên chức (lớp CNguoi) bao gồm mã số, họ tên và lương
  18. Ví dụ 1 [3/7] #18 • 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 CBienChe) 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 CHopDong) 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ờ
  19. Ví dụ 1 [4/7] #19
  20. Ví dụ 1 [5/7] #20 CNguoi::CNguoi() { #define MAX_TEN 50 strcpy(HoTen,""); #define MAX_MASO 5 strcpy(MaSo,""); #define MUC_CO_BAN   120000 Luong=0; } class CNguoi void CNguoi::Xuat() const { { protected: cout
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
16=>1