1. Trang chủ
  2. » Công Nghệ Thông Tin

lập trình hướng đối tượng

19 209 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 19
Dung lượng 434,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hệ thống hướng đối tượng• Gồm tập hợp các đối tượng: – Được đóng gói bởi: • Dữ liệu thuộc tính của dữ liệu • Các thao tác trên dữ liệu – Các đối tượng có thể kế thừa các đặc tính của đối

Trang 1

Lập trình hướng đối tượng

- Nguyễn Tuấn Anh

- Lê Văn Ngọc

- Lê Minh Thành

- Vi Văn Toàn

Trường đại học

hùng vương

Trang 2

Phân công công việc

• Lê Văn Ngọc

– Khái niệm về OOP

– Hệ thống hướng đối tượng

– Đối tượng

– Thuộc tính, phương thức

• Vi Văn Toàn

– Lớp

– Lớp trừu tượng

– Trừu tượng hoá

• Nguyễn Tuấn Anh

– Thông điệp

– Đóng gói

– Kế thừa

– Đa hình

• Lê Minh Thành

– Các bước thiết kế chương trình OOP

– Ưu điểm của OOP

– ứng dụng của OOP

Trang 3

I: Khái niệm về lập trình hướng đối tượng

• Lập trình hướng đối tượng

– Object Oriented Programming (OOP)

– Phương pháp thiết kế và phát triển phần mềm dựa trên kiến trúc lớp và đối tượng

– Được xem là:

• Cách tư duy, tiếp cận hướng đối tượng.

– Mục đích:

• Mô tả chân thực thế giới thực.

• Tăng năng suất, dễ bảo trì, nâng cấp.

Trang 4

Các khái niệm cơ bản trong OOP

• Hệ thống hướng đối tượng

• Đối tượng

• Thuộc tính, phương thức

• Lớp

• Lớp trừu tượng

• Trừu tượng hoá

• Thông điệp

• Đóng gói

• Kế thừa

• Đa hình

Trang 5

1 Hệ thống hướng đối tượng

• Gồm tập hợp các đối tượng:

– Được đóng gói bởi:

• Dữ liệu (thuộc tính của dữ liệu)

• Các thao tác trên dữ liệu

– Các đối tượng có thể kế thừa các đặc tính của đối tượng khác

– Hoạt động thông qua sự tương tác giữa các đối tượng nhờ cơ chế truyền thông điệp

• Thông báo

• Gửi và nhận thông báo

Trang 6

2 Đối tượng (object)

• Là khái niệm trừu tượng phản ánh các thực thể trong thế giới thực

• Là một thực thể phần mềm bao bọc các thuộc tính và các phương thức liên quan

• Đối tượng phần mềm dùng để biểu diễn các đối

tượng trong thế giới thực

• Một đối tượng cụ thể được gọi là một thể hiện

• Là sự đóng gói của 2 thành phần:

– Trạng thái (state) hay dữ liệu

– Các hành động (behavior), thao tác

đối tượng=dữ liệu+phương thức

Trang 7

3 Thuộc tính và phương thức

• Thuộc tính (attribute):

– Là dữ liệu trình bày các đặc điểm của một đối tượng – Bao gồm: hằng, biến, tham số nội tại

– Được xác định kiểu: kiểu cổ điển hoặc kiểu do người dùng định nghĩa

• Phương thức (method):

– Là các hàm nội tại của đối tượng, có kiểu trả về

– Xác định cách thức hoạt động của đối tượng và

được thực thi khi một đối tượng cụ thể được tạo ra

Trang 8

4 Lớp (class)

• Là tập hợp các đối tượng có cùng thuộc tính và hành vi

• Là bản thiết kế hay mẫu mô tả một cấu trúc dữ liệu gồm:

– các thuộc tính

– các phương thức

→dùng chung cho các đối tượng cùng loại

• Trong lập trình, có thể coi lớp như là một kiểu, đối tượng sẽ là các biến có kiểu của lớp

• các loại:

– Lớp cha

– Lớp con

Trang 9

5 Lớp trừu tượng

• Là lớp mà nó không thể trở thành một lớp

thực tế nào

• Được thiết kế nhằm tạo ra lớp có đặc tính

tổng quát

• Bản thân nó chưa có ý nghĩa nên chưa thể

viết mã cho đối tượng

• Ví dụ:

– Lớp hình phẳng

– Lớp động vật

Trang 10

6 Sự trừu tượng hoá (abstraction)

• Khái niệm:

– Là khả năng bỏ qua hay không để ý tới các thành phần không quan trọng

• Trừu tượng hoá dữ liệu:

– Tiến trình xác định và nhóm các thuộc tính và các hành động liên quan đến một thực thể đặc thù trong ứng dụng đang phát triển

– không quan tâm các chi tiết không quan trọng bên trong

• Trừu tượng hoá chương trình (chức năng):

– Là một sự trừu tượng hoá dữ liệu mà làm cho các dịch vụ thay đổi

theo dữ liệu

– không quan tâm làm thế nào để thực hiện công việc

Trang 11

7 Thông điệp (message)

– Là phương tiện để đối tượng này chuyển yêu cầu tới đối tượng khác.

– Handle của đối tượng đích (đối tượng chủ)

– Tên phương thức cần thực hiện

– Các thông tin cần thiết khác (tham số)

• Hệ thống yêu cầu đối tượng thực hiện phương thức như

sau:

– Gửi thông báo và tham số cho đối tượng

– Kiểm tra tính hợp lệ của thông báo

– Gọi thực hiện hàm tương ứng phương thức

Trang 12

8 Đóng gói (encapsulation)

• Khái niệm:

– Là cơ chế ràng buộc dữ liệu và các thao tác trên dữ liệu thành thể thống nhất.

• Đóng gói gồm:

– Bao gói: người dùng giao tiếp với hệ thống qua giao diện

– Che dấu: ngăn chặn các thao tác không được phép từ bên

ngoài

• Ưu điểm:

– Quản lý sự thay đổi

– Bảo vệ dữ liệu

• Che giấu thông tin:

Trang 13

9 Kế thừa (inheritance)

• Khái niệm:

– Các phương thức hay thuộc tính được định nghĩa trong một lớp

có thể được thừa kế hoặc được sử dụng lại bởí lớp khác

• Các loại kế thừa:

– Đơn kế thừa

– Đa kế thừa

• Lớp cha (superclass):

– Là lớp có các thuộc tính hay phương thức thừa hưởng bởi một hay nhiều lớp khác

• Lớp con (subclass):

– Là lớp thừa hưởng những đặc tính chung của lớp cha và thêm vào những đặc tính riêng khác

Trang 14

10 Đa hình (polymorphism)

– Khả năng đưa một phương thức có cùng tên trong các lớp con

• Thực hiện bởi:

– Định nghĩa lại

– Nạp chồng

• Cơ chế dựa trên sự kết gán:

– Kết gán sớm

– Kết gán muộn

• Xuất hiện khi có tính kế thừa

Trang 15

II: Các bước thiết kế một chương trình OOP

• Các bước chính:

– Xác định các dạng đối tượng (lớp)

– Tìm dữ liệu dùng chung, chia xẻ

– Xác định lớp cơ sở dựa vào dữ liệu dùng chung

– Xây dựng lớp dẫn xuất từ lớp cơ sở

Trang 16

III: Ưu điểm của OOP

• Các ưu điểm chính:

– Loại bỏ các đoạn mã lặp lại

– Tạo ra các chương trình an toàn, bảo mật

– Dễ dàng mở rộng và nâng cấp

– Rút ngắn thời gian xây dựng hệ thống

– Tăng năng xuất và hiệu quả hơn

– Chương trình được thiết kế theo đúng qui trình

Trang 17

IV: ứng dụng của OOP

• Dùng để phát triển phần mềm trong nhiều

lĩnh vực khác nhau:

– Ví dụ: hệ điều hành Windows

• Lĩnh vực chính:

– Hệ thống thời gian thực

– Cơ sở dữ liệu hướng đối tượng

– Hệ siêu văn bản, đa phương tiện

– Trí tuệ nhân tạo

– Lập trình song song, mạng nơron …

Trang 18

V: Một số ngôn ngữ OOP

• Hầu hết các ngôn ngữ lập trình đều hỗ trợ

OOP, có thể chia thành 2 loại:

– Ngôn ngữ hỗ trợ hướng đối tượng:

– Ngôn ngữ hướng đối tượng:

• Một số ngôn ngữ OOP hiện nay:

– Visual C++

– VB.NET, C#

Ngày đăng: 16/10/2014, 14:08

TỪ KHÓA LIÊN QUAN

w