intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình hướng đối tượng: Chương 1 - Châu Thị Bảo Hà

Chia sẻ: Kiếp Này Bình Yên | Ngày: | Loại File: PPTX | Số trang:32

69
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng chương 1 trình bày tổng quan về cách tiếp cận hướng đối tượng. Mục tiêu của chương này nhằm giúp người học: Nhận biết sự khác biệt giữa lập trình truyền thống và lập trình hướng đối tượng (OOP), nhận diện một số ngôn ngữ OOP, nhận biết các khái niệm cơ bản của OOP. Mời các bạn cùng tham khảo.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình hướng đối tượng: Chương 1 - Châu Thị Bảo Hà

  1. Chương 1 TỔNG QUAN VỀ CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG
  2. Mục tiêu w Nhận biết sự khác biệt giữa lập trình truyền thống và lập trình hướng đối tượng (OOP) w Nhận diện một số ngôn ngữ OOP w Nhận biết các khái niệm cơ bản của OOP
  3. Nội dung 1.1. Phương pháp tiếp cận của lập trình truyền thống 1.2. Phương pháp tiếp cận hướng đối tượng 1.3. So sánh sự khác biệt giữa hai cách tiếp cận 1.4. Xu hướng phát triển của lập trình hướng đối tượng
  4. 1.1. PP tiếp cận của LT truyền thống Lập trình tuyến tính w Chương trình sẽ được thực hiện tuần tự từ đầu đến cuối, lệnh này kế tiếp lệnh kia cho đến khi kết thúc chương trình w Đặc trưng n Đơn giản: tuần tự n Đơn luồng: chỉ một luồng xử lý w Ưu – Khuyết: n Ưu: chương trình đơn giản, dễ hiểu n Khuyết: không thể dùng phương pháp này cho những ứng dụng phức tạp w Ngày nay, chỉ tồn tại trong phạm vi các module nhỏ nhất của các phương pháp lập trình khác
  5. 1.1. PP tiếp cận của LT truyền thống Lập trình cấu trúc w Chương trình chính được chia nhỏ công việc thành các chương trình con, mỗi chương trình con thực hiện một công việc xác định n Chương trình chính sẽ gọi chương trình con theo kịch bản định trước n Mỗi chương trình con có thể được gọi nhiều lần, bất kỳ, không theo thứ tự khai báo w Đặc trưng: Chương trình = cấu trúc dữ liệu + giải thuật w Ưu – Khuyết: n Ưu: Chương trình dễ đọc dễ hiểu, tư duy giải thuật rõ ràng n Khuyết: Khi thay đổi cấu trúc thì giải thuật cũng thay đổi theo w Phù hợp với phạm vi trong mỗi module, không phù hợp với chương trình có nhiều module
  6. 1.1. PP tiếp cận của LT truyền thống Lập trình cấu trúc (tt) Chương trình struct XX Xđ {..... danh CTDL } từ type Fun (XX x) Bài toán {..... } Xđ Tác vụ động void main() (hàm) { XX x; từ Fun(x); }
  7. 1.1. PP tiếp cận của LT truyền thống Hạn chế w Dữ liệu và xử lý tách biệt Ví dụ: w Không đảm bảo được tính nhất quán và các ràng buộc dữ liệu w Không tiết kiệm tài nguyên w Khó bảo trì
  8. 1.2. PP tiếp cận hướng đối tượng w Chương trình là sự hoạt động của các đối tượng  Giống tự nhiên w Một chương trình là một trật tự các lời yêu cầu đối tượng thực hiện hành vi của mình w Đóng gói dữ liệu nên hạn chế việc truy cập tự do w Sử dụng lại mã nguồn, hạn chế việc viết lại mã nguồn
  9. 1.2. PP tiếp cận hướng đối tượng w Sơ lược về OOP n Đối tượng (object): dữ liệu + hành vi n Đối tượng phải thuộc một lớp (class) n Một nhóm đối tượng được biễu diễn bởi một lớp n Lớp = data (biến, thuộc tính) + methods
  10. 1.2. PP tiếp cận hướng đối tượng Ví dụ 1: Class và Object
  11. 1.2. PP tiếp cận hướng đối tượng Ví dụ 2: Class và Object Object1 radius = 5 color = red thrown, bounced, rolled Class: Ball Attributes: radius, color Behavior: thrown, bounced, rolled Object3 Object2 radius = 3 radius = 10 color = green color = blue thrown, bounced, rolled thrown, bounced, rolled
  12. 1.2. PP tiếp cận hướng đối tượng Chương trình Giải bài toán theo OOP class XX { Xđ type1 prop1; danh Thuộc tính type2 prop2; từ ....... type Method1(...) Vấn đề Bao gói dữ liệu và { hành vi thành class } ..... } Xđ động void main() từ Tác vụ { XX x; // object variable (hành vi) x.Method(...); }
  13. 1.2. PP tiếp cận hướng đối tượng Mô hình lớp đối tượng ClassName Properties Data - Attributes Fields Variables Instance data + Behaviors Methods
  14. 1.2. PP tiếp cận hướng đối tượng Ví dụ mô hình lớp đối tượng Student - Student code Rectangle - Name - width - Gender - height - Birthday - Birthplace + Calculate area - Class + Calculator perimeter - Grade 1 - Grade 2 + Calculate average + View grade + Pay tuition
  15. 1.2. PP tiếp cận hướng đối tượng Đặc trưng w Trừu tượng (Abtraction) w Đóng gói (Encapsulation) w Thừa kế (Inheritance) w Đa hình (Polymophism)
  16. 1.2. PP tiếp cận hướng đối tượng Tính trừu tượng w Trừu tượng có nghĩa là làm việc với một cái gì đó mà chỉ cần biết làm thế nào để sử dụng mà không cần biết bên trong làm thế nào mà nó hoạt động w Ví dụ: n Hãy nêu 1 món đồ dùng trong nhà và mô tả cách sử dụng nó (vd/TV, máy giặt, laptop,…). Sau đó thử mô tả các thành phần bên trong của món đồ này cũng như mô tả chi tiết kỹ thuật làm nó hoạt động n  Mô tả cách vận hành dễ hơn mô tả chi tiết chính xác làm sao nó hoạt động. Và hầu như mọi người thậm chí ko biết có những thành phần gì bên trong UD – những UD mà con người sd hàng ngày
  17. 1.2. PP tiếp cận hướng đối tượng Tính trừu tượng w Trừu tượng tức là chung chung, không cụ thể. Đặc tính này được thể hiện trong lớp trừu tượng (abstract class)
  18. 1.2. PP tiếp cận hướng đối tượng Tính đóng gói w Nhóm những gì có liên quan với nhau vào làm một w Che dấu thông tin (information hiding) n Đóng gói để che dấu một số thông tin và chi tiết cài đặt nội bộ để bên ngoài không nhìn thấy l Không cho phép người sử dụng đối tượng thay đổi trạng thái nội tại của một đối tượng l Chỉ có các phương thức nội tại của đối tượng cho phép thay đổi trạng thái của nó l Việc cho phép môi trường bên ngoài tác động lên các dữ liệu nội tại của một đối tượng theo cách nào là hoàn toàn tùy thuộc vào người viết mã. Đây là tính chất đảm bảo sự toàn vẹn của đối tượng
  19. 1.2. PP tiếp cận hướng đối tượng Tính thừa kế w Là cơ chế cho phép một lớp B có được các thuộc tính và A hành vi của lớp A, như thể các thuộc tính và hành vi đó đã được định nghĩa tại lớp B w Điều này cho phép các đối tượng chia sẻ hay mở rộng các B đặc tính sẵn có mà không phải tiến hành định nghĩa lại w Ví dụ: Vehicle Animal Car Dog Cat Mouse
  20. 1.2. PP tiếp cận hướng đối tượng Tính đa hình w Tính đa hình là khả năng một đối tượng có thể tham chiếu đến nhiều loại đối tượng khác nhau tại những thời điểm khác nhau w Thể hiện thông qua việc gửi các thông điệp (message) w Ví dụ: Holiday Holyday day; + celebrate() : void day = new Holyday(); day.celebrate(); Christmas day = new Christmas(); + celebrate() : void day.celebrate();
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2