25/02/2016 1 Page 1 PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN 1 Chương 2 Các khái niệm cơ bản trong hướng đối tượng 2 Mục tiêu • Mô tả các khái niệm trừu tượng hóa, đóng gói, mô đun hóa và phân cấp • Mô t[.]
25/02/2016 Mục tiêu • Mơ tả khái niệm trừu tượng hóa, đóng gói, mơ-đun PHÂN TÍCH THIẾT KẾ HỆ THỐNG THƠNG TIN hóa phân cấp • Mơ tả cấu trúc vật lý lớp • Mô tả mối quan hệ lớp đối tượng • Hiểu đa hình tổng qt hóa Chương 2: Các khái niệm hướng đối tượng Đối tượng gì? Nội dung • Một đối tượng biểu diễn thực thể, thực thể Đối tượng gì? Bốn nguyên lý OO Lớp gì? Đa hình Tổng qt hóa Tổ chức phần tử mơ hình vật lý, thực thể trừu tượng thực thể phần mềm • Thực thể vật lý • Thực thể trừu tượng • Thực thể phần mềm Xe tải Phản ứng hóa học Danh sách liên kết Page 1 25/02/2016 Một đối tượng có trạng thái Định nghĩa Thuộc tính • Trạng thái điều kiện hay tình • Một đối tượng thực thể suốt trình sống đối tượng • Trạng thái đối tượng thường thay đổi theo thời gian có biên định danh xác định rõ ràng để đóng gói trạng thái hành vi • Trạng thái biểu diễn thuộc tính mối quan hệ Name: J Clark Employee ID: 567138 HireDate: 07/25/1991 Status: Tenured Discipline: Finance MaxLoad: • Hành vi thao tác, phương thức chế chuyển trạng thái Name: J Clark Employee ID: 567138 Date Hired: July 25, 1991 Status: Tenured Discipline: Finance Maximum Course Load: classes Đối tượng Các phép xử lý Giáo sư Clark Một đối tượng có hành vi Một đối tượng có định danh • Hành vi xác định cách mà đối tượng hành động phản ứng • Mỗi đối tượng có tên riêng để phân biệt đối tượng với đối tượng khác trạng thái chúng giống hệt • Một hành vi thấy đối tượng mơ hình hóa tập thơng điệp mà đáp ứng (các thao tác mà đối tượng thực hiện) Các hành vi giáo sư Clark Submit Final Grades Accept Course Offering Take Sabbatical Set Max Load TakeSabbatical() Giáo sư “J Clark” dạy Sinh học Giáo sư Clark Giáo sư “J Clark” dạy Sinh học Page 2 25/02/2016 10 Các nguyên lý OO Nội dung? Đối tượng gì? Hướng đối tượng Bốn nguyên lý OO Lớp gì? Phân cấp Mơ-đun hóa Trừu tượng hóa Tổ chức phần tử mơ hình Đóng gói Đa hình Tổng qt hóa 11 12 Ví dụ: Trừu tượng hóa 2.1 Trừu tượng hóa (Abstraction) Những đặc điểm thực thể phân biệt với loại thực thể khác Xác định biên giới liên quan đến góc độ người quan sát Nó khơng phải biểu cụ thể, Sinh viên biểu thị chất thực thể Giáo viên Khóa học diễn lúc 9:00 sáng ngày thứ 3, 5, Khóa học (ví dụ đại số) Page 3 25/02/2016 13 14 2.2 Đóng gói (Encapsulation) Minh họa việc đóng gói Che giấu thực thi bên • Giáo sư Clark yêu Giáo sư Clark cầu dạy lớp tháng tới Client sử dụng giao diện cung cấp Name: J Clark Employee ID: 567138 HireDate: 07/25/1991 Status: Tenured SetMaxLoad(4) Discipline: Finance MaxLoad:4 TakeSabbatical() Tăng cường tính mềm dẻo 15 16 2.3 Mơ đun hóa (Modularity) Ví dụ: Mơ đun hóa • Ví dụ, chia nhỏ hệ thống phức • Chia nhỏ hệ thống phức tạp thành tạp thành mơ đun nhỏ thành phần nhỏ quản lý • Cho phép người dùng hiểu biết hệ thống Hệ thống quản lý xuất nhập sách Hệ thống quản lý thông tin sách Hệ thống quản lý siêu thị sách Hệ thống quản lý nhân viên Page 4 25/02/2016 17 18 2.4 Phân cấp (Hierarchy) Gia tăng mức độ trừu tượng hóa Nội dung? Tài sản Đối tượng gì? Bốn nguyên lý OO Tài khoản ngân hàng Chứng khoán Lớp gì? Bất động sản Đa hình Tổng qt hóa Tổ chức phần tử mơ hình Giảm mức độ trừu tượng hóa Tiết kiệm Tiên gửi Cổ phiếu Các loại giấy tờ có giá trị Các phần tử cấp sơ đồ phân cấp có mức trừu tượng hóa 19 20 Lớp gì? Ví dụ lớp Lớp • Lớp đại diện cho tập đối tượng Các đối Khóa học tượng chung thuộc tính, hành vi, mối quan hệ ngữ nghĩa • Một đối tượng thể lớp • Một lớp trừu tượng hóa, nó: • Tập trung vào đặc tính chung • Bỏ đặc tính khác Thuộc tính Hành vi Tên Địa điểm diễn Số ngày dự kiến Số đơn vị học trình Thời gian bắt đầu Thời gian kết thúc Thêm sinh viên Xóa sinh viên Xem lịch học Kiểm tra số thành viên Page 5 25/02/2016 21 22 Biểu diễn lớp UML Biểu diễn đối tượng UML • Trong UML, lớp biểu diễn hình chữ • Trong UML, đối tượng biểu diễn nhật, chia làm phần hình chữ nhật, với tên đối tượng gạch chân • Tên lớp Professor • Cấu trúc (Các thuộc tính) J Clark : Professor - name - employeeID : UniqueId - hireDate - status - discipline - maxLoad • Hành vi (các phương thức) Đối tượng J Clark thuộc lớp Professor + submitFinalGrade() + acceptCourseOffering() + setMaxLoad() + takeSabbatical() + teachClass() : Professor Giáo sư J Clark Đối tượng nặc danh 23 24 Mối quan hệ gữa lớp đối tượng Thuộc tính (attribute) gì? • Lớp trừu tượng hóa đối tượng • Một thuộc tính đặc tính (property) có tên • Một lớp định nghĩa cấu trúc hành vi cho tất đối lớp mô tả phạm vi giá trị mà thể đặc tính giữ tượng thuộc lớp • Nó có chức khuôn mẫu cho việc tạo đối tượng • Một lớp có số thuộc tính khơng có thuộc tính • Lớp khơng phải tập hợp đối tượng Professor Attributes Professor Torpie Professor Meijer Student - name - address - studentID - dateOfBirth Professor Allen Page 6 25/02/2016 25 26 Thao tác gì? Thuộc tính lớp đối tượng • Một dịch vụ u cầu từ đối tượng để thực Lớp hành vi Một thao tác có chữ ký, giới hạn tham số thực tế :Student Student - name - address - studentID - dateOfBirth - name = “M Modano” - address = “123 Main St.” - studentID = - dateOfBirth = “03/10/1967” • Một lớp có nhiều thao tác khơng có thao tác Đối tượng Student :Student - name = “D Hatcher” - address = “456 Oak Ln.” - studentID = - dateOfBirth = “12/11/1969” Operations + get tuition() + add schedule() + get schedule() + delete schedule() + has prerequisites() 27 28 Nội dung? 4.1 Đa hình gì? Khả che giấu nhiều thực thi thông qua giao diện Đối tượng gì? Bốn nguyên lý OO Lớp gì? Đa hình Tổng qt hóa Tổ chức phần tử mơ hình Nhà sản xuất A Nhà sản xuất B Nhà sản xuất C Nguyên lý OO: Đóng gói Điều khiển từ xa Page 7 ... classes Đối tượng Các phép xử lý Giáo sư Clark Một đối tượng có hành vi Một đối tượng có định danh • Hành vi xác định cách mà đối tượng hành động phản ứng • Mỗi đối tượng có tên riêng để phân biệt đối. .. nhỏ hệ thống phức • Chia nhỏ hệ thống phức tạp thành tạp thành mô đun nhỏ thành phần nhỏ quản lý • Cho phép người dùng hiểu biết hệ thống Hệ thống quản lý xuất nhập sách Hệ thống quản lý thông tin. .. để phân biệt đối tượng với đối tượng khác trạng thái chúng giống hệt • Một hành vi thấy đối tượng mơ hình hóa tập thơng điệp mà đáp ứng (các thao tác mà đối tượng thực hiện) Các hành vi giáo