Chương 1: Giới thiệu về lập trình hướng đối tượng
lượt xem 78
download
Để hiểu oop là gì, trước hết chúng ta nhìn lại lịch sử của các kỹ thuật lập trình, đồng thời xem xét các nhược điểm của các kỹ thuật lập trình trước khi oop ra đời. Nhìn chung, có thể chia các kỹ thuật lập trình thành 3 loại, sự xuất hiện của các kỹ thuật lập trình này theo tứ tự : lập trình tuyến tính, lập trình có cấu trúc, lập trình hướng đối tượng.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Chương 1: Giới thiệu về lập trình hướng đối tượng
- Chương 1: Gi i thi u v l p trình hư ng ñ i tư ng (object oriented programming - oop). 1.1. L p trình hư ng ñ i tư ng là gì? • ð hi u oop là gì, trư c h t chúng ta nhìn l i l ch s c a các k thu t l p trình, ñ ng th i xem xét các như c ñi m c a các k thu t l p trình trư c khi oop ra ñ i. • Nhìn chung, có th chia các k thu t l p trình thành 3 lo i, s xu t hi n c a các k thu t l p trình này theo th t như sau: o L p trình tuy n tính (l p trình không c u trúc) o L p trình có c u trúc (l p trình hư ng th t c). o L p trình hư ng ñ i tư ng (object oriented programming). • M i k thu t l p trình ñ u có như c ñi m c a nó, và ñ kh c ph c các như c ñi m ñó, ngư i ta ñã ñưa ra k thu t l p trình m i. 1.1.1. L p trình tuy n tính (l p trình không c u trúc) 1.1.1.1. ð c ñi m: • M i d li u trong chương chình ñ u là d li u toàn c c. • T t c các câu l nh ñ u n m trong chương trình chính và tác ñ ng tr c ti p vào d li u toàn c c c a chương trình. Program Global data - statement 1 - statement 2 -… 1.1.1.2. Như c ñi m: • N u cùng m t chu i các câu l nh ñư c s d ng nhi u l n, ph i copy chu i các câu l nh ñó ñ n nhi u v trí khác nhau. • Vì m i d li u ñ u là toàn c c, các d li u này có th b thay ñ i b t c ph n nào c a chương trình. Do ñó, khi chương trình ñ l n, vi c ki m soát s thay ñ i d li u là r t khó khăn. Biên so n: ð ng Thanh Dũng, khoa CNTT - ðH SPKT TP.HCM 1
- 1.1.2. L p trình có c u trúc (l p trình h ng th t c) 1.1.2.1. ð c ñi m: • Chương trình ñư c chia nh thành các chương trình con (các th t c, các hàm), m i chương trình con th c hi n m t nhi m v nào ñó. • Các th t c này ñ c l p nhau, có d li u riêng và logic riêng. • Thông tin chuy n giao gi a các th t c là các giá tr c a ñ i s . • Các th t c có bi n ñ a phương (bi n c c b ), không m t dòng l nh nào n m ngoài th t c có th thay ñ i giá tr c a các bi n này. • Chương trình chính bao g m m t t p các chương trình con. • Các ki u d li u ñư c dùng chung cho nhi u th t c khác nhau. • Ý tư ng cơ b n nh t c a l p trình co c u trúc ñó là s tr u tư ng hóa ch c năng (functional abstraction). 1.1.2.2. Ưu ñi m: • Vi c tri n khai ph n m m ñơn gi n hơn (có th nhi u ngư i cùng làm). • D b o trì và s a ch a hơn so v i l p trình tuy n tính. • Chương trình sáng s a hơn. 1.1.2.3. Như c ñi m: • Khi x y ra m t thay ñ i trên các ki u d li u thì c n ph i thay ñ i t t c các hàm (th t c) có làm vi c trên các ki u d li u ñó. ði u này ñòi h i nhi u th i gian ñ i v i nh ng chương trình c vài trăm hàm, th m chí vài nghìn hàm. • Trong môi trư ng làm vi c nhóm, vi c thay ñ i ki u d li u và hi u ch nh các hàm có th không ăn kh p nhau, d n ñ n nh ng sai sót trong chương trình. 1.1.3. L p trình h ng ñ i t ng (object oriented programming) 1.1.3.1. S tr u tư ng hoá d li u (data abstraction) • Các c u trúc d li u ñư c s d ng mà không c n ñ ý ñ n các chi ti t bên trong • Ví d : o Ki u s th c ch m ñ ng ñã ñư c tr u tư ng hóa trong t t c các ngôn ng l p trình. Khi s d ng các s th c, ta không c n quan tâm ñ n s bi u di n nh phân c th c a chúng. o Ki u ñi m (CPoint) trong MFC. 1.1.3.2. Các ñ c ñi m c a l p trình hư ng ñ i tư ng • L p trình hư ng ñ i tư ng ñư c xây d ng trên n n t ng c a l p trình có c u trúc và s tr u tư ng hoá d li u. • M t chương trình hư ng ñ i tư ng ñư c xây d ng xoay quanh các d li u mà ta làm vi c trên ñó, hơn là theo b n thân các ch c năng c a chương trình. • L p trình hư ng ñ i tư ng k t h p d li u v i các thao tác trên các d li u ñó ñ t o ra m t ki u d li u tr u tư ng, ñư c g i là l p. Biên so n: ð ng Thanh Dũng, khoa CNTT - ðH SPKT TP.HCM 2
- 1.1.3.3. Các ưu ñi m c a L p trình hư ng ñ i tư ng • D b o trì và s a ch a. • Có tính k th a cao. D s d ng l i các ño n code ñã vi t trư c ñó. • D m r ng các tính năng c a chương trình. 1.1.3.4. M t s thu t ng c a l p trình hư ng ñ i tư ng 1.1.3.4.1. L p (class) • L p là m t mô t v ki u d li u tr u tư ng, nó ch a các thông tin v c u trúc d li u và các thao tác c a ki u d li u tr u tư ng ñó. • Các ki u d li u ñư c cài s n trong các ngôn ng l p trình có th ñư c xem là các l p. 1.1.3.4.2. ð i tư ng (object) • M t ñ i tư ng là m t th hi n c a m t l p. Khi m t ph n t d li u ñư c khai báo là ph n t c a m t l p thì nó ñư c g i là m t ñ i tư ng. Các ñ i tư ng còn ñư c g i là các bi n th hi n (instance variables). • M i ñ i tư ng có riêng cho mình m t t p giá tr c a các thành ph n d li u c a m t l p. • Các ñ i tư ng ñ c l p v i nhau, nh ng thay ñ i trên ñ i tư ng này không nh hư ng ñ n ñ i tư ng khác. Vi c g i thông ñi p cho ñ i tư ng này cũng không nh hư ng gì ñ n ñ i tư ng khác. 1.1.3.4.3. Phương th c (method) • Các hàm (các thao tác) c a m t l p ñư c g i là các phương th c c a m t l p. • Ch có các phương th c c a m t l p m i có th x lý ñư c t t c các d li u c a các ñ i tư ng c a l p ñó. 1.1.3.4.4. Thông ñi p (message) • Các phương th c c a m t l p có th ñư c g i thông qua các ñ i tư ng c a l p ñó. ði u này ñư c g i là g i m t thông ñi p cho ñ i tư ng. • Các thông ñi p này ph thu c vào ñ i tư ng, ch ñ i tư ng nào nh n ñư c thông ñi p m i ph i làm vi c theo thông ñi p ñó. 1.1.3.4.5. L p d n xu t (derived class) và l p cơ s (base class) • ð xây d ng môt l p m i, ngư i ta có th dùng các l p có s n làm n n t ng b ng cách k th a t các l p có s n. Khi ñó l p m i ñư c g i là l p con hay l p d n xu t. • L p cũ làm n n t ng ñ xây d ng l p m i ñư c g i là l p cha hay l p cơ s . Biên so n: ð ng Thanh Dũng, khoa CNTT - ðH SPKT TP.HCM 3
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Lập trình Java cơ bản: Chương 1 - Lê Tân
25 p | 481 | 116
-
Giới thiệu về Lập trình Cơ sở dữ liệu với ADO.NET - Chương 1
10 p | 353 | 108
-
Bài giảng Quản trị cơ sở dữ liệu Oracle: Chương 1 - GV. Cao Thị Nhâm (HV Ngân hàng)
26 p | 323 | 79
-
Bài giảng Nguyên lý ngôn ngữ lập trình - Chương 1: Giới thiệu
44 p | 339 | 29
-
Bài giảng Thiết kế web: Chương 1 - Giới thiệu về Internet và web
33 p | 188 | 22
-
Bài giảng môn Quản trị mạng - Chương 1: Giới thiệu quản trị mạng
38 p | 95 | 14
-
Bài giảng Phát triển Web nâng cao - Chương 1: Giới thiệu về lập trình ASP.Net
74 p | 92 | 12
-
Bài giảng Maple - Lập trình tính toán: Chương 1 - Giới thiệu tổng quan
24 p | 103 | 10
-
Bài giảng Ngôn ngữ lập trình C - Chương 1: Giới thiệu ngôn ngữ C
4 p | 104 | 8
-
Bài giảng Quản trị dự án phần mềm - Chương 1: Giới thiệu
18 p | 105 | 8
-
Bài giảng Lập trình ứng dụng Web - Chương 1: Giới thiệu về lập trình ASP.Net
78 p | 80 | 8
-
Bài giảng Lập trình nâng cao - Chương 1: Giới thiệu về C++
21 p | 94 | 6
-
Bài giảng Lập trình hướng đối tượng: Chương 1 - GV. Hà Văn Sang
29 p | 89 | 5
-
Bài giảng Lập trình căn bản - Chương 1 (phần 1): Giới thiệu về cấu trúc dữ liệu và giải thuật
26 p | 69 | 5
-
Bài giảng Cơ sở lập trình: Chương 1 - Phạm Thanh An
25 p | 46 | 5
-
Bài giảng Lập trình mạng - Chương 1: Giới thiệu Lập trình mạng
18 p | 63 | 4
-
Bài giảng Nhập môn về lập trình - Chương 1: Giới thiệu về máy tính và lập trình
30 p | 56 | 3
-
Bài giảng Lập trình hướng đối tượng - Chương 1: Giới thiệu về lập trình hướng đối tượng OOP
29 p | 56 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn