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

Bài giảng Phân tích và thiết kế hướng đối tượng: Phân tích thiết kế hướng đối tượng - Đỗ Ngọc Như Loan

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 (1.08 MB, 20 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


<b>GV: Phan Thị Kim Loan </b>


Phân tích thiết kế hướng đối tượng



</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Nội dung trước



<b>2 </b>


 Giới thiệu


 Tiến trình phát triển hệ thống


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Nội dung



<b>3 </b>


 Hệ thống hướng chức năng vs. Hệ thống hướng đối tượng
 Các đặc điểm cơ bản của hệ thống hướng đối tượng


 Giới thiệu UML – UML 2.0


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Giới thiệu




Lịch sử phát triển của ngơn ngữ lập trình:



 First Generation (1954 – 1958)
• Fortran I


 Second Generation (1959 – 1961)
• Fortran II, Algol, Cobol


 Third Generation (1962 – 1970)
• PL/I, Pascal


 Object Oriented Languages
• Smalltalk, C++, Java


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Lịch sử phát triển OOAD



</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Lịch sử của UML



<b>6 </b>
OOSE
OMT
Booch method
Others method
Unified method
<b>UML 0.9 </b>
<b>UML 1.0 </b>


<b>UML 1.1 </b>
<b>UML 1.3 </b>
<b>UML 2.0 </b>
OOPSLA ‘95
Web – Jun ‘96
UML Partners


OMG Acceptance, Nov ‘97


Final submission to OMG, Sep ’97
First submission to OMG, Jan ‘97


Pu


bl


ic & F


ee


db


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Giới thiệu



Thiết kế cấu trúc và thiết kế hướng đối tượng



<b>7 </b>



<b>Student </b>
<b>Account </b>


Đăng ký học
phần


v..v…


Thi cử
Đóng học phí


Nhập học


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Giới thiệu



Thiết kế cấu trúc và thiết kế hướng đối tượng



<b>8 </b>


<b>Student </b>
<b>Account </b>


v..v…
Messege


Messege


Messege



Messege


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Nguyên tắc cơ bản của OO



 Hướng đối tượng – Object-Oriented


 Trừu tượng hố – Abstraction



 Tính đóng gói – Encapsulation


 Tính đơn thể - Modularity



 Tính phân cấp – Hierarchy



</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Trừu tượng hoá – Abstraction



 Quản lý độ phức tạp



<b>10 </b>


Người bán hàng


Sản phẩm


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Tính đóng gói – Encapsulation




 Che dấu cài đặt bên trong với clients



Clients phụ thuộc vào interface



Tăng tính mềm dẻo



</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Tính đơn thể - Modularity



Phân chia nhỏ 1 vấn đề phức tạp thành nhiều



phần nhỏ, đơn giản hơn để có thể quản lý được


độ phức tạp



<b>12 </b>
<b>Hệ thống xử lý mua bán hàng hoá </b>


Nhận đơn đặt hàng


Thực hiện đơn đặt hàng


Thanh toán đơn đặt hàng


Lập hoá đơn bán hàng
Thanh toán hoá đơn


Xuất hoá đơn



</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Tính phân cấp – Hierarchy



<b>13 </b>


Bất động sản
Chứng khoán


Tài khoản ngân hàng


<b>Tài sản </b>


Cổ phiếu Trái phiếu
Tài khoản


Tiết kiệm Tài khoản Thanh toán


Tăng mức độ
trừu tượng
Giảm mức độ


trừu tượng


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Các khái niệm cơ bản của HĐT



 Objects & Class



 Attributes (Properties) & Operation (Behavior)
 Method & Message


 Interface (Polymorphism)
 Component


 Package
 Subsystem
 Relationship


</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Object



 Một cách không hình thức, một đối tượng biểu diễn một thực


thể, dạng vật lý, khái niệm hoặc phần mềm


<b>15 </b>


Thực thể


vật lý



Thực thể


Khái niệm



Thực thể



Phần mềm

<sub>Chemical Process </sub>



Truck


</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Objects & Class



 Một đối tượng là một đối tượng trừu tượng, hoặc một vật với


giới hạn rõ ràng và có ý nghĩa với một ứng dụng cụ thể


 Lớp (Class) – khuôn mẫu cho các thể hiện của object
 Đối tượng (Object) – Thể hiện của một class


 Thuộc tính (Attributes)


 Hành vi (Behaviors) – chi tiết đối tượng có thể làm gì


</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Biểu diễn đối tượng



Một đối tượng được biểu diễn bởi một hình chữ



nhật với tên được gạch dưới



<b>17 </b>


: Profressor


ProfressorJohn



ProfressorJohn:
Professor


A x B = 10


Profressor John


Chỉ có tên Object


</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Class - Example



Class


Course



<b>18 </b>


A x B = 10


Profressor John


<b>Properties </b>


Tên


Địa điểm
Thời gian
Số tín chỉ


Giờ bắt đầu
Giờ kết thúc


<b>Behavior </b>


Thêm một sinh viên
Huỷ một sinh viên


</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Class & Object



</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>

<b>2 – Phân tích thiết kế hướng đối tượng </b>


Method & Message



 Phương thức (Methods) implement an object’s behavior


 Messages are sent to trigger methods
 Procedure call from one object to the next


</div>

<!--links-->

×