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

Lập trình hướng đối tượng với .NET & C#.Chương 2 Tổng quan về lập trình hướng đối tượng pdf

31 516 3

Đ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 31
Dung lượng 257,13 KB

Nội dung

Nội dung Lịch sử phát triển của phương pháp lập trình Các khái niệm trong lập trình hướng đối tượng OOP.. Lập trình hướng đối tượng – Object Oriented Programming OOP • Chương trình đượ

Trang 1

Chương 2

Trang 2

Mục tiêu

 Đặc trưng cơ bản của lập trình hướng đối tượng.

 Các khái niệm cơ bản trong lập trình hướng đối

tượng

 Xác định các lớp của một bài toán, phương thức và

dữ liệu của lớp

Trang 3

Nội dung

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

 Các khái niệm trong lập trình hướng đối tượng

(OOP)

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

 Một số ngôn ngữ OOP.

 Ứng dụng của OOP.

Trang 4

2.1 Lịch sử phát triển của phương pháp

Trang 5

Lập trình tuyến tính

 Ưu điểm: Chương trình đơn giản, dễ hiểu.

 Nhược điểm: khó giải quyết các ứng dụng phức tạp.

 Một chương trình là một tập các lệnh hoặc câu lệnh

làm việc với các dữ liệu toàn cục trong cả chươngtrình

Trang 6

Hàm 2

Dữ liệu riêng

Hàm 3

Dữ liệu riêng

Trang 7

Lập trình cấu trúc (2)

 Ưu điểm:

• Chương trình sáng sủa, dễ hiểu, dễ theo dõi

• Tư duy giải thuật rõ ràng

 Nhược điểm:

• Nhiều hàm có thể truy nhập, sử dụng dữ liệu

chung , làm thay đổi giá trị của chúng và vì vậy rất khó kiểm soát

• Nếu thay đổi, bổ sung cấu trúc dữ liệu của biến

toàn cục ->phải viết lại hầu như toàn bộ các hàm

có liên quan

Trang 8

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

 Mục đích:

• Giảm bớt thao tác viết trình

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

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

Programming (OOP)

• Chương trình được chia thành các đối tượng

• Đối tượng = Dữ liệu + Phương thức

• Đóng gói dữ liệu

• Cho phép sử dụng lại mã nguồn

Trang 9

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

Đố i tượng A

Dữ liệu Các phương thức

Đố i tượng B

Dữ liệu Các phương thức

Đố i tượng C

Dữ liệu Các phương thức

Trang 10

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

 Ưu điểm:

• Không còn nguy cơ dữ liệu bị thay đổi tự do

trong chương trình

• Khi thay đổi cấu trúc dữ liệu của một đối tượng,

không cần thay đổi các đổi mã nguồn của các đốitượng khác

• Có thể sử dụng lại mã nguồn, tiết kiệm tài

nguyên

Trang 11

2.2 Một số khái niệm

 Lớp (class) & Đối tượng (object)

 Thuộc tính (attribute) & Phương thức (method)

 Thông điệp (message), sự kiện (event)

 Trừu tượng hóa (abstraction)

 Sự đóng gói (encapsulation)

 Sự kế thừa (inheritance

 Sự đa hình (polymorphism)

Trang 12

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

 Trong thế giới thực có nhiều đối tượng cùng loại.

 Nhiều đối tượng cùng loại chia sẻ những đặc điểm

chung

Trang 13

Lớp và đối tượng (2)

 Một lớp là một thiết kế hay mẫu (prototype) cho

các đối tượng cùng kiểu

 Đối tượng là 1 thể hiện của lớp, lớp được dùng để

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

• Thuộc tính của lớp ≈ thuộc tính của các đối tượng

• Phương thức của lớp ≈ hành động của các đốitượng

Trang 14

Lớp và đối tượng (3)

 Một đối tượng:

• Trạng thái (state) hay dữ liệu (thuộc tính)

• Các hành vi (behavior) hay thao tác (phươngthức)

Trang 15

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

 Thuộc tính (attribute) là dữ liệu trình bày các đặc

điểm về một đối tượng (Hằng, biến)

 Phương thức (method) là các hành động mà đối

tượng có thể làm (hàm)

Trang 16

Thông điệp

 Một thông điệp là một lời yêu cầu một hoạt động.

 Một thông điệp bao gồm:

• Đối tượng đích (đối tượng nhận thông điệp)

• 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ố)

Trang 17

Sự kiện

 Một sự kiện là một sự việc xảy ra cho một đối

tượng tại một thời điểm Để đáp ứng lại sự kiện ấy, đối tượng sẽ thực hiện một hoặc nhiều phươngthức

 Nói cách khác, một sự kiện là một tác nhân mà đối

tượng này gây ra cho một đối tượng khác Chẳnghạn như click chuột trái trên một nút

Trang 18

Sự trừu tượng hoá

 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

 Chú ý đến những gì (WHAT) phương thức/đối

tượng thực hiện, không quan tâm đến cách thựchiện (HOW)

Trang 19

Ưu điểm của trừu tượng hóa

 Tập trung vào vấn đề cần quan tâm

 Xác định những đặc tính thiết yếu và những hành

động cần thiết

 Giảm thiểu những chi tiết không cần thiết.

Trang 20

Sự đóng gói

 Đóng gói (encapsulation) là tiến trình che giấu

việc thực thi chi tiết của một đối tượng

 Ưu điểm:

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

• Bảo vệ dữ liệu

Trang 21

Sự kế thừa

 Khái niệm: Khả năng cho phép định nghĩa một lớp

mới (gọi là lớp dẫn xuất) dựa trên lớp khác đã địnhnghĩa (gọi là lớp cơ sở)

Trang 22

Sự đa hình

 Đa hình: “nhiều hình thức”, hành động cùng tên

có thể được thực hiện khác nhau đối với các đốitượng/các lớp khác nhau

 Ngữ cảnh khác ⇒ kết quả khác.

Chạy

Trang 23

Các quan hệ (relationships)

 Các đối tượng không tồn tại một cách độc lập, luôn

tồn tại mối quan hệ giữa nó và các đối tượng khác: tổng quát hóa (generalization) , cộng tác(asscociation) …

Trang 24

Tổng quát hóa (generalization)

 Lớp cha (Người) tổng quát hóa các thuộc tính,

phương thức chung của các lớp con (Sinh viên vàGiáo viên)

 Các lớp con cũng có những thuộc tính, phương thức

riêng

Người

Trang 25

Quan hệ cộng tác (Association)

 Các lớp có liên kết (connected) hoặc liên quan

(related) với nhau

Trang 27

3 Các bước giải quyết bài toán OOP

 Phân tích bài toán:

• Tìm danh từ, tính từ trong bài toán ⇒ dữ liệu.

• Các danh từ ⇒ class.

• Tìm những động từ, tác vụ hành động ⇒ phương thức.

 Thiết kế lớp đối tượng:

• Xác định các class (tên class).

• Xác định thành phần dữ liệu: Tên, kiểu.

• Xác định thành phần phương thức: Tên, tham số đầu vào, kiểu trả về.

• Xác định kiểu truy nhập.

• Thiết kế sự kế thừa (nếu có).

Trang 28

3 Các bước giải quyết bài toán OOP (tt)

 Thiết kế chi tiết các phương thức:

• Viết mã giả (giải thuật)

 Cài đặt chương trình.

Trang 29

4 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:

 Object C, Pascal, C++, Delphi…

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

 SmallTalk, JAVA

 Một số ngôn ngữ OOP hiện nay: VB.NET, C#

Trang 30

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

• Trí tuệ nhân tạo

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

Trang 31

Bài tập chương 2

Phân tích và thiết kế lớp cho bài toán:

Viết chương trình quản lý sinh viên, các thông tin của sinh viên gồm: họ tên, ngày sinh, giới tính, điểmtoán, điểm lý, điểm hóa

Chương trình có các chức năng sau:

- Nhập thông tin của Sinh viên

- Tính điểm trung bình

- Xem các thông tin của Sinh viên

Ngày đăng: 10/08/2014, 13:21

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w