Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 72 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
72
Dung lượng
2,09 MB
Nội dung
Chương 7. Môhìnhhóacấutrúc 2006 1 Nguyễn Trung Trực - Khoa CNTT Chương 7 Môhìnhhóacấutrúc Chương 7. Môhìnhhóacấutrúc 2006 2 Nguyễn Trung Trực - Khoa CNTT Nội dung Các qui tắc và hướng dẫn cách tạo các bản CRC, các sơ đồ lớp và các sơ đồ đối tượng. Các quá trình tạo các bản CRC, các sơ đồ lớp và các sơ đồ đối tượng. Mối liên hệ giữa các môhìnhcấutrúc và các môhình use-case. Chương 7. Môhìnhhóacấutrúc 2006 3 Nguyễn Trung Trực - Khoa CNTT Giới thiệu Môhìnhcấutrúc hoặc môhình ý niệm mô tả cấutrúc của dữ liệu được dùng trong các quá trình nghiệp vụ của công ty. Cấutrúc dữ liệu được sử dụng trong hệ thống sẽ được biểu diễn thông qua các bản CRC, các sơ đồ lớp và các sơ đồ đối tượng. Chương 7. Môhìnhhóacấutrúc 2006 4 Nguyễn Trung Trực - Khoa CNTT Mục đích của môhìnhcấutrúc Làm giảm các “thiếu sót ngữ nghĩa” (semantic gap) giữa thế giới thực và phần mềm. Tạo từ vựng cho những người phân tích và người sử dụng. Biểu diễn các vật, các ý tưởng và các khái niệm quan trọng trong lãnh vực ứng dụng. Chương 7. Môhìnhhóacấutrúc 2006 5 Nguyễn Trung Trực - Khoa CNTT Đối tượng Đối tượng (object) có thể biểu diễn một người, vị trí, sự kiện hoặc giao dịch. f Đối tượng cụ thể (concrete) f Đối tượng trừu tượng (abstract) Đối tượng là một thực thể bao gồm dữ liệu (data) và hành vi (behavior). f Các đối tượng được phân loại thành các lớp (class). f Mỗi đối tượng riêng biệt là một thể hiện (instance) của một lớp. Chương 7. Môhìnhhóacấutrúc 2006 6 Nguyễn Trung Trực - Khoa CNTT Đối tượng Qui ước đặt tên đối tượng f Tênđốitượng: Tênlớp f Từ đầu tiên: viết chữ thường. f Các từ kế tiếp: viết chữ hoa cho ký tự đầu tiên. Chương 7. Môhìnhhóacấutrúc 2006 7 Nguyễn Trung Trực - Khoa CNTT Đối tượng myWasher: WashingMachine brandName = “Laundatorium” modelName = “Washmeister” serialNumber = “GL57774” capacity = 16 Object Name Attributes Operations An object has a specific value for every one of its class’s attributes Chương 7. Môhìnhhóacấutrúc 2006 8 Nguyễn Trung Trực - Khoa CNTT Lớp Lớp (class) là một tập hợp các đối tượng có cùng các thuộc tính, các tác vụ, các mối liên kết và ngữ nghĩa. Tất cả các đối tượng của một lớp là các thể hiện của lớp này. Lớp là các khuôn mẫu (template) để tạo các thể hiện hoặc các đối tượng. f Lớp cụ thể (concrete) f Lớp trừu tượng (abstract) Qui ước đặt tên lớp f Têngói:: Tênlớp f Viết chữ hoa cho ký tự đầu tiên của mỗi từ. Chương 7. Môhìnhhóacấutrúc 2006 9 Nguyễn Trung Trực - Khoa CNTT Lớp Household Appliances:: WashingMachine brandName modelName serialNumber capacity addClothes() removeClothes() addDetergent() turnOn() Class Name Attributes Operations A Class with its attributes and operations Chương 7. Môhìnhhóacấutrúc 2006 10 Nguyễn Trung Trực - Khoa CNTT 1 // An actor with “name” and “stage name” attributes 2 public class Actor { 3 // Fields 4 private String name, stageName; 5 // Create a new actor with the given stage name 6 public Actor(String sn) { 7 name = “<None>”; 8 stageName = sn; 9} 10 // Get the name 11 public String getName() { 12 return name; 13 } 14 // Set the name 15 public void setName(String n) { 16 name = n 17 } 18 // Get the stage name 19 public void setStageName() { 20 return stageName 21 } 22 // Set the stage name 23 public void setStageName(String sn) { 24 stageName = sn 25 } 26 // Reply a summary of this actor’s attributes, as a string 27 public String toString() { 28 return “I am known as “ + getStageName() + “, but my real name is “ + getName() 29 } 30 } A sample Java class [...]... Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 11 Lớp và đối tượng Class Class Student Instances Objects Maria and David of the Class Student Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 12 Lớp và đối tượng Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 13 Thuộc tính Thuộc tính (attribute) là một đặc tính được đặt tên của một lớp, dùng để mô tả một... cách gọi các phương thức Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 23 Phương thức và thông điệp Signature identifies and invokes the behavior Method implements the behavior An Operation with Signature and Method Written in PL/SQL Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 24 Phương thức và thông điệp Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa... dưới của cây phân cấp lớp Tính tổng quát hóa (generalization) là mối liên kết giữa một lớp cha với một lớp con Lớp con có thể có thêm các thuộc tính và các phương thức riêng Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 28 Tính tổng quát hóa Class Hierarchy Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 29 Tính tổng quát hóa Generalization represented by arrows... Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 30 Tính tổng quát hóa Multiple inheritance is complicated and not supported by all object-oriented programming languages Generalization based on two characteristics Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 31 Tính thừa kế Tính thừa kế (inheritance) là một cơ chế mà lớp con trong mối liên kết tổng quát hóa có được... cha Lớp con thừa kế tất cả các thuộc tính và các phương thức của các lớp cao hơn trong cây phân cấp lớp Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 32 Tính thừa kế Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 33 Tính đa hình và kết nối động Tính đa hình (polymorphism) là khả năng của các đối tượng khác nhau đáp ứng các thông điệp giống nhau theo các cách khác... chỉ có lớp này sử dụng được Chương 7 Mô hìnhhóa cấu trúc 2006 Nguyễn Trung Trực - Khoa CNTT 26 Tính khả kiến Automobile Television + brandName + modelName + make + modelName + changeVolume() + changeChannel() - paintImageOnScreen() … + accelerate() + brake() # updateMileageCount () … Chương 7 Mô hìnhhóa cấu trúc 2006 Nguyễn Trung Trực - Khoa CNTT 27 Tính tổng quát hóa Lớp cha (superclass, general class,... tính khác, ký hiệu / đứng trước tên thuộc tính Chương 7 Mô hìnhhóa cấu trúc 2006 Nguyễn Trung Trực - Khoa CNTT 16 Thuộc tính Kiểu mở rộng (stereotype) là một thành phần (construct) cho phép mở rộng từ vựng của UML Các loại kiểu mở rộng trong sơ đồ lớp Kiểu mở rộng khóa chính: Kiểu mở rộng đa trị: Chương 7 Mô hìnhhóa cấu trúc 2006 Nguyễn Trung Trực - Khoa CNTT 17 Thuộc tính Primary... kiểu trả về Tương tự với một hàm hoặc một thủ tục Chương 7 Mô hìnhhóa cấu trúc 2006 Nguyễn Trung Trực - Khoa CNTT 21 Phương thức và thông điệp WashingMachine brandName modelName serialNumber capacity addClothes(C: String) removeClothes(C: String) addDetergent(D: Integer) turnOn(): Boolean The signature for an operation Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 22 Phương thức và... same studentId value The Identifier shown by the Stereotype Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 18 Thuộc tính Multivalued attribute can contain multiple values; a student may have several phone numbers Attribute phoneNumber shown by the Stereotype Chương 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 19 Thuộc tính Composite attribute Address... 7 Môhìnhhóacấutrúc 2006 Nguyễn Trung Trực - Khoa CNTT 34 Tính đa hình và kết nối động Kết nối động (dynamic binding), còn được gọi là kết nối về sau (late binding) là một kết nối mà chưa định kiểu hoặc chọn một phương thức cho một đối tượng cho đến khi chạy chương trình Kết nối tĩnh (static binding) là một kết nối mà kiểu của đối tượng được xác định ở thời gian biên dịch Chương 7 Môhìnhhóacấu . các mô hình cấu trúc và các mô hình use-case. Chương 7. Mô hình hóa cấu trúc 2006 3 Nguyễn Trung Trực - Khoa CNTT Giới thiệu Mô hình cấu trúc hoặc mô hình. Chương 7. Mô hình hóa cấu trúc 2006 1 Nguyễn Trung Trực - Khoa CNTT Chương 7 Mô hình hóa cấu trúc Chương 7. Mô hình hóa cấu trúc 2006 2 Nguyễn