
Giáo trình C++ lập trình hướng đối tượng: Phần 2
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Giáo trình C++ lập trình hướng đối tượng: Phần 2Chương 13. Lập trình hướng đối tượngCHƯƠNG 13. LẬP TRÌNH HƯỚNG ĐỐITƯỢNGLịch sử hình thànhTrước khi kĩ thuật lập trình hướng đối tượng ra đời, con người đ~ trải quacác thời kì lập trình tuyến tính, lập trình hướng thủ tục.1. Lập trình tuyến tính M|y tính đầu tiên được lập trình bằng mã nhị phân, sử dụng các côngtắc cơ khí để nạp chương trình. Cùng với sự xuất hiện của các thiết bị lưutrữ lớn và bộ nhớ m|y tính có dung lượng lớn, nên các ngôn ngữ lập trìnhcấp cao bắt đầu xuất hiện. Các ngôn ngữ lập trình n{y được thiết kế làmcho công việc lập trình trở nên đơn giản hơn. C|c chương trình ban đầuchủ yếu liên quan đến tính toán, chúng tương đối ngắn. Chúng chủ yếuchạy theo các dòng lệnh một cách tuần tự, dòng trước chạy trước, dòng sauchạy sau. Nhược điểm:o Nếu ta cần sử dụng một đoạn lệnh n{o đó nhiều lần, thì ta phải sao chép nó nhiều lần.o Không có khả năng kiểm soát phạm vi nhìn thấy của biến.o Chương trình dài dòng, khó hiểu, khó nâng cấp.2. Lập trình hướng thủ tục Với những nhược điểm trên, đòi hỏi có một ngôn ngữ lập trình mới thaythế. Đó chính l{ nguyên nh}n ra đời của ngôn ngữ lập trình hướng thủ tục.Về bản chất, chương trình được chia nhỏ thành c|c modul (đơn vị chươngtrình). Mỗi đơn vị chương trình chứa các hàm hay thủ tục (nên gọi làhướng thủ tục). Tuy tách rời thành các modul riêng biệt, nhưng ngôn ngữlập trình hướng thủ tục vẫn đảm bảo thông tin thông suốt giữa các modulnhờ v{o cơ chế hoạt động của h{m, cơ chế truyền theo tham biến và thamtrị. Với lập trình hướng thủ tục, một chương trình lớn có thể được chia nhỏTrang | 120 CuuDuongThanCong.com https://fb.com/tailieudientucnttChương 13. Lập trình hướng đối tượngth{nh c|c modul, để mỗi lập trình viên có thể đảm nhận. Tiêu biểu trong sốnày là C, Pascal. Nhược điểm:o Các hàm và thủ tục thường gắn kết với nhau, nếu muốn nâng cấp chương trình, thường phải chỉnh sửa tất cả các hàm và thủ tục liên quan.o Không phù hợp với xu thế hiện đại vì không mô tả được thực thể trong cuộc sống thực.3. Lập trình hướng đối tượnga. Giới thiệu Với xu thế hiện đại, ngôn ngữ lập trình hướng đối tượng đ~ ra đời. Cơsở của lập trình hướng đối tượng l{ đối tượng. Đối tượng là sự thể hiện củamột thực thể trong thế giới thực. Một thực thể trong thế giới thực thườngcó: c|c đặc trưng v{ c|c h{nh động. Ví dụ: con người trong thế giới thực cóc|c đặc trưng như - tên gọi, tuổi, màu tóc, màu mắt, m{u da… v{ c|c h{nhđộng như – ăn, nói, chạy, nhảy… Cách thức lập trình này mô tả một cáchchính xác các sự vật, con người trong thế giới thực. Bây giờ, ta sẽ xét một vài ví dụ để cho thấy sự cần thiết của lập trìnhhướng đối tượng. Ví dụ 1. Chúng ta muốn xây dựng một chương trình quản lý sinh viên.Khi đó, ta cần lưu trữ c|c thông tin liên quan đến đối tượng sinh viên này:họ tên sinh viên, mã số sinh viên, ng{y th|ng năm sinh, quê qu|n, điểm cácmôn, điểm tổng kết,…. v{ rất nhiều thông tin khác liên quan. Sau khi kếtthúc năm học, sinh viên sẽ nhận được đ|nh gi| kết quả học tập của mình.Chúng ta cần có phương thức tiếp nhận kết quả để sinh viên đó có thể phảnứng lại với những gì mà mình nhận được, họ phải thực hiện c|c h{nh độnghọc tập, tham gia vào các hoạt động của trường, của khoa… đó l{ nhữngh{nh động mà mỗi sinh viên cần thực hiện. Ví dụ 2. Chúng ta sẽ điểm qua một số tính năng trong chương trình soạnthảo văn bản Word của Microsoft. Chúng ta sẽ thảo luận về c|c đối tượngDrawing trong Word. Mỗi đối tượng đều có các thuộc tính: màu viền, dạng C++đường viền, kích thước viền, màu sắc viền, màu nền, có văn bản hay khôngtrong đối tượng drawing…Khi chúng ta biến đổi hình dạng của mỗi đốiT r a n g | 121 CuuDuongThanCong.com https://fb.com/tailieudientucnttChương 13. Lập trình hướng đối tượngtượng: kéo giãn, làm lệch xiêng, quay vòng… chúng ta cần đưa ra mộtthông điệp để c|c đối tượng hình thể n{y thay đổi theo. C|c h{nh động nàythuộc quyền sở hữu của đối tượng. Trong hai ví dụ minh họa trên, chúng ta thấy rằng hướng tiếp cận theolập trình hướng đối tượng là rất gần gũi với cuộc sống thực. Chúng takhông quan t}m đến những khía cạnh không cần thiết của đối tượng,chúng ta chỉ tập trung v{o c|c đặc trưng v{ c|c h{nh động của đối tượng.Kể từ thời điểm này trở đi, chúng ta sẽ gọi các đặc trưng của đối tượng làcác thuộc tính thành viên của đối tượng đó (hoặc dữ liệu thành viên, biếnthành viên của đối tượng) v{ c|c h{nh động của đối tượng l{ c|c phươngthức thành viên (hay hàm thành viên) của đối tượng. Các cách gọi dữ liệuthành viên, thuộc tính thành viên, biến thành viên hay thuộc tính (tươngứng phương thức th{nh viên, h{m th{nh viên, phương thức) là không cósự phân biệt. Tôi chỉ đưa ra nhiều cách gọi kh|c nhau để chúng ta có thểquen khi tham khảo các giáo ...
Tìm kiếm theo từ khóa liên quan:
Giáo trình C++ Lập trình hướng đối tượng Giáo trình Lập trình hướng đối tượng Ngôn ngữ C++ Làm việc với file Ngôn ngữ C++Tài liệu có liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 313 0 0 -
101 trang 211 1 0
-
14 trang 140 0 0
-
Giáo trình lập trình hướng đối tượng - Lê Thị Mỹ Hạnh ĐH Đà Nẵng
165 trang 128 0 0 -
150 trang 107 0 0
-
Giáo trình Lập trình Windows 1 - Trường CĐN Đà Lạt
117 trang 103 0 0 -
Giáo trình Phân tích, thiết kế hướng đối tượng với UML: Phần 1 - Trường ĐH Công nghiệp Quảng Ninh
111 trang 102 0 0 -
265 trang 92 0 0
-
Giáo trình Lập trình hướng đối tượng với Java: Phần 2 - Trần Thị Minh Châu, Nguyễn Việt Hà
141 trang 86 0 0 -
33 trang 74 0 0
-
Ngôn ngữ lập trình C# 2005 - Tập 3: Lập trình hướng đối tượng (Phần 1)
196 trang 56 0 0 -
Đề cương môn học Lập trình Java
28 trang 53 0 0 -
Bài giảng Photoshop: Chương 1 - Bùi Thị Hồng Minh
24 trang 52 0 0 -
Cấu trúc dữ liệu và Ngôn ngữ lập trình C
261 trang 50 0 0 -
Giáo trình Lập trình hướng đối tượng với Java: Phần 1 - Trần Thị Minh Châu, Nguyễn Việt Hà
150 trang 45 0 0 -
Bài giảng Lập trình hướng đối tượng (dùng JAVA): Chương 1 - Trần Minh Thái
40 trang 45 0 0 -
Tự học lập trình hướng đối tượng và lập trình cơ sở dữ liệu C part 1
40 trang 43 0 0 -
CHƯƠNG 14: CÁC CẤU TRÚC DỮ LIỆU ĐA CHIỀU
22 trang 41 0 0 -
Bài giảng Lập trình Java cơ bản: Chương 3 - GV. Võ Hoàng Phương Dung
55 trang 40 0 0 -
844 trang 38 0 0