hướng đối tượng là gì hướng đối tượng php object oriented oop
hướng đối tượng là gì hướng đối tượng php object oriented oop

1. Hướng đối tượng là gì?

Hướng đối tượng là gì?

hướng đối tượng là gì hướng đối tượng php object oriented oop
hướng đối tượng là gì hướng đối tượng php object oriented oop

 

Lập trình hướng đối tượng hay còn gọi là “Object-oriented programming” viết tắt là OOP là một kiểu mã hóa cho phép các lập trình viên nhóm các tác vụ tương tự vào các lớp (Classes). Điều này giúp giữ Code của chúng ta theo nguyên lý  “don’t repeat yourself” (DRY) và dễ dàng trong việc bảo trì.

Object-oriented programming is a style of coding that allows developers to group similar tasks into classes.

Theo cách lập trình cổ điển thì nếu ứng dụng hoặc website có hàng nghìn hoặc hàng triệu dòng code, tất cả mọi thứ nằm trong một trang (page) mà trong một ngày đẹp trời gặp một lổi ở đâu đó, thì ngày đẹp trời trở thành ngày tồi tệ khi bạn phải còng lưng lục tung cả source code để tìm lổi trong khi các chức năng và dữ liệu bị trùng lặp quá nhiều.

Lúc này việc sử dụng lập trình hướng đối tượng (OOP) là giải pháp hữu hiệu nhất. Giúp hạn chế tối đa việc trùng lặp code và dữ liệu, giúp chúng ta dễ dàng  nâng cấp và bảo trì.

2. Cấu trúc Class (lớp đối tượng)

Class là nơi bạn có thể chứa thuộc tính và phương thức (biến và hàm). Một Class có dạng như sau:

Để sử dụng được Class thì chúng ta phải khai báo và lưu nó vào trong một biến PHP trước. Cách khai báo như sau:

 

Đến đây thì các bạn đã biết cách tạo Class và khai báo sử dụng rồi. Tiếp theo là các thuộc tính và phương thức bên trong Class (biến và hàm bên trong class)

3. Thuộc tính của Class (biến bên trong Class)

Khái báo biến bên trong Class

Thuộc tính của Class đơn giản dể hiểu chỉ là một biến PHP đơn thuần. Chúng ta sẽ khai báo biến $demoBien bên trong Class như sau:

Truy xuất biến bên trong Class

Lúc này biến $object do lưu một Class nên mặc định sẽ trở thành biến đối tượng (Object). Trong cơ chế Object thì sử dụng ký hiệu con trỏ “->” để gọi phần tử bên trong nó.

Tương tự thì chúng ta sẽ dùng cú pháp như sau để gọi biến bên trong class.

Các bạn chép đoạn mã lệnh trên vào trang nào đó chạy thử, mình ví dụ là index.php kết quả sẽ là: “Tôi là biến bên trong class!”.

4. Phương thức của Class (hàm bên trong Class)

Khai báo hàm bên trong Class

Cũng giống như biến. Chúng ta khai báo hàm bên trong Class tương tự. Ở đây mình lấy ví dụ đặt tên hàm đó là $demoHam cho các bạn dễ hình dung:

Truy xuất hàm bên trong Class

Để truy xuất hàm bên trong Class chúng cũng làm tương tự như biến sử dụng con trỏ “->“:

Các bạn chép đoạn mã lệnh trên vào trang nào đó chạy thử, mình ví dụ là index.php kết quả sẽ là: “Tôi là hàm bên trong class!”.

5. Con trỏ $this->

Hướng đối tượng cung cấp cho chúng ta chức năng này rất hay. Chúng ta có thể truy xuất dữ liệu qua lại giữa các phương thức và thuộc tính (hàm và biến) với nhau bằng cách sử dụng con trỏ “$this->“. Dưới đây là ví dụ sử dụng hàm demoHam2 để truy xuất dữ liệu của biến $demoBien và hàm demoHam:

Các bạn chép đoạn mã lệnh trên vào trang nào đó chạy thử, mình ví dụ là index.php kết quả sẽ là:

Tôi là biến bên trong class!

Tôi là hàm bên trong class

6. Tính kế thừa

Điểm hay thứ 2 và phải nói là quan trọng nhất trong lập trình hướng đối tượng là tính kế thừa. Đây là cách để giải quyết vấn đề lặp lại code mà mình đã nêu ở đầu bài. Bằng cách gom những đặc điểm chung về phương thức và thuộc tính chúng ta có thể tạo ra lớp Cha, và những lớp khác kế thừa lại ta gọi là lớp Con. Chúng ta không phải mất nhiều thời gian để khai báo lại nhiều lần những đặc điểm chung đó.

Ở đây mình sẽ lấy ví dụ con Heo, con Bò, con Ngựa để các bạn hình dung rõ. Thì thuộc tính chung là động vật đều có 4 chân chỉ khác nhau màu sắc, phương thức chung là đều ăn uống.

Đấy!. Chỉ cần tạo một class là chúng ta có thể sử dụng cho 3 con vật là Heo, Bò, Ngựa. Đến đây chắc các bạn đã hiểu tính kế thừa trong lập trình hướng đối tượng rồi phải không ^^.

7. Lời kết

Như vậy là mình đã hướng dẫn cho các bạn biết hướng đối tượng là gì rồi. Cách thức hoạt động cũng như việc khai báo truy xuất dữ liệu như thế nào. Hy vọng các bạn sẽ nắm rõ những kiến thức này để chúng ta có thể qua những bài tiếp theo về hướng đối tượng trong PHP.

Bây giờ xem tiếp về hướng đối tượng trong PHP nhé: Magic method trong PHP – Các phương thức Magic trong PHP

Nguồn: phpcanban.com

Tag: hướng đối tượng là gì, lập trình hướng đối tượng, PHP object-oriented, OOP là gì

Hướng đối tượng là gì? Lập trình hướng đối tượng PHP
3 (60%) 2 votes

BÌNH LUẬN

Please enter your comment!
Please enter your name here