Tải bản đầy đủ (.ppt) (28 trang)

Tài liệu Công nghệ lập trình hứơng đối tượng_ Chương 1 docx

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 (201.99 KB, 28 trang )

Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Công Nghệ Lập Trình Hướng Đối
Tượng 1
OOP(Object Oriented Programming)
Th.s H ình Khồ Đ ả
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Tài liệu tham khảo:

[1] Michael A.Smith, Java: an Object-Oriented Language, McGraw-Hill, 2000.

[2] Prof. Alfons Kemper, Ph. D.: Object oriented Data modeling And
programming In java,2000

[3] Copyright by Sams Publishing :Sams Teach Yourself Object Oriented
Programming in 21 Days, 2002

JEDI

Slide Bài Giảng- ĐHCNSG
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Chương 1
Lập Trình Hướng Đối Tượng
OOP(Object Oriented Programming)
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Mục tiêu

Object Oriented Programming



Trừu tượng hóa dữ liệu (Data Abstraction)

Lớp và đối tượng (Class and Object )

Phương thức thiết lập và hủy
(Construction và Destruction )

Persistence, Data encapsulation, Inheritance
và Polymorphism

Thuận lợi.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Object-oriented programmings

Phương pháp thiết kế và hiện thực các hệ thống phần
mềm.

Đặt trọng tâm vào đối tượng.

Đối tượng bao hàm: hành vi và thuộc tính

Đối tượng giao tiếp thông qua thông điệp
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Data Abstraction

Cho phép quản lí tốt hơn các chương trình phức tạp


Functions & Procedures

Modules

Abstract Data Types

Class/Objects

Data Abstract cho phép

Mở rộng ngôn ngữ : Định nghĩa thêm kiểu

Chế tác các thể hiện dữ liệu khác nhau
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Data Abstraction
Các đặc trưng của
Person
Name
Address
Age
Height
Hair color
Các đặc trưng của
Customer
Name
Address
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Data Abstraction (tiếp )

Thuộc tính Hành động
Tên khách hàng Chấp nhận tên khách hàng
Địa chỉ khách hàng Chấp nhận địa chỉ khách hàng
Kiểu xe mua Chấp nhận kiểu xe đặt hàng
Người bán (saleman) Chấp nhận tên người bán
Phát sinh hóa đơn
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Data Abstraction (tiếp…)

Data Abstraction là quá trình nhận diện và nhóm dữ liệu và hành động có liên quan tới một thực thể riêng biệt .

Thuận lợi:

Nhận diện các đặt trưng và hành động thiết yếu

Giúp lọai trừ những chi tiết không cần thiết.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Class

Một Class định nghĩa như là một bản mẫu hay một kiểu chung về một
lọai đối tượng nào đó theo thuộc tính và hành vi.
Class Customer
Tên khách hàng
Địa chỉ khách hàng
Kiểu xe mua
Tên người bán
Chấp nhận tên
Chấp nhận địa chỉ

Chấp nhận lọai xe đặt mua
Chấp nhận tên người bán
Phát sinh hóa đơn
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Class/Object

Message Passing

Generalization/Specialization

Polymorphism

Relationships: Associations, Aggregations

Behaviors

Rules
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Object

Một Object là sự thể hiện của class

Stephen

Boston

Opel Astra


Robin
Stephen là một Object của class Customer
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Object (tiếp…)

Attribute

Những đặc trưng mô tả đối tượng.

Operation

Là một dịch vụ hoặc một hàm đuợc cung cấp bởi mọi thể
hiện của một lớp đối tượng.

Method

Diễn tả cách thức mà một đối tượng vận động, phản ứng

Message

Yêu cầu cho một operation

Event

Tác nhân được gởi từ một object to object khác.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
So Sánh Class và Object


Class định nghĩa một thực thể, trong khi một object là một thực thể thực sự.

Class là một mô hình ý niệm,định nghĩa tất cả đặt trưng và hành động của một object, trong khi đối tượng là một mô hình thực.

Class là một prototype của một object

Tất cả object thuộc về một class đều có đặt trưng và hành động giống nhau.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Phương thức thiết lập (Construction)

A Constructor:

Cấp phát bộ nhớ.

Khởi tạo thuộc tính.

Cho phép truy xuất các thuộc tính và phương thức.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Phương thức hủy bỏ (Destruction)

Quá trình xóa một đối tượng.

A Destructor:

Giải phóng không gian cấp phát.

Cấm truy xuất các thuộc tính và phương thức.
Trường Đại học Công nghệ Sài gòn

Khoa Công nghệ Thông tin
Tính bền vững (Persistence)

Tính bền vững là một khả năng của đối tượng để lưu trữ dữ liệu trong thời gian sống của đối tượng.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Bao Bọc và Che Dấu Thông tin
(Encapsulation and information hiding)

Quá trình che dấu sự hiện thực chi tiết của một đối tượng từ
user được gọi là Encapsulation.

Nguyên tắc bao bọc dữ liệu ngăn cấm truy nhập trực tiếp gọi
là sự che dấu thông tin

Thuận lợi:

Tất cả thuộc tính và phương thức được yêu cầu thực hiện
một công việc có thể được khởi tạo.

Chỉ những thuộc tính và/hoặc phương thức được truy xuất
bởi cái khác được hiện rõ.

Tất cả những gì thấy được của đối tượng đã được đóng gói là
các phương thức giao tiếp (interface) của đối tượng.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Tính thừa kế (Inheritance)

Cách tổ chức các Classes

Vehicle
Automobile Motorcycle Bus
Sedan Sports Car School BusLuxury Bus
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Tính thừa kế (tt)
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Tính thừa kế (tt )
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Tính thừa kế (tt )
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Tính thừa kế (tt…)

Inheritance

Cơ chế cho phép một lớp chia sẽ các thuộc tính và thao tác
được định nghĩa trong một hay nhiều lớp.

Subclass

Là một class thừa kế từ một class khác.

Super class

Là một class mà từ đó một class khác thừa kế những hành
vi của nó.


Multiple Inheritance

Là một class con thừa kế từ một hay nhiều lớp.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Tính Đa Hình (Polymorphism)
Text Line
Picture
Làm thế nào?
Operation
Display

Tính đa hình là một thao tác có thể được cài
đặt khác nhau trong cùng một lớp hay trong
những lớp khác nhau.
Trường Đại học Công nghệ Sài gòn
Khoa Công nghệ Thông tin
Các bước thiết kế

Thiết kế và coding

Thiết kế

Định nghĩa vấn đề.

Thiết kế các đối tượng

Phát triển các giải thuật cho các phương thức
của đối tượng.


Mô tả giải thuật, dùng pseudocode

Viết code

Kiểm tra code

Debug

×