Tìm hiểu về Class, Object và Instance trong lập trình hướng đối tượng

Trong khuôn khổ bài viết này, chúng ta sẽ lướt qua một số khái niệm thực sự cơ bản trong lập trình hướng đối tượng (OOP) mà người học cần phải nắm rõ, qua đó hiểu sâu hơn về cách thức làm việc của các Class và rộng hơn là cách thức vận hành của OOP.

Sự thật là sự rời rạc giữa khía cạnh triết học của sự phát triển và các hoạt động cơ học thực tế của máy tính trong lập trình hướng đối tượng thường tạo ra những sự nhầm lẫn. Hai khái niệm này có thể phân biệt như sau:

Khái niệm cơ bản của OOP là: Class >> Object >> Instance.

Class giống như là một bản thiết kế. Object là vật thể thực được xây dựng dựa trên bản thiết kế này (giống như một ngôi nhà). Còn instance là một bản sao ảo (không phải thực) của Object.

Những câu như sau thường xuyên gây ra nhiều sự nhầm lẫn cho người học bởi các thuật ngữ đang bị trộn lẫn và kết hợp với nhau theo những cách không trực quan:

Đối số đầu tiên mà init() nhận được sử dụng để biểu thị instance object.

Nhưng sẽ dễ hiểu hơn rất nhiều nếu diễn giải câu theo cách sau:

Một bản thiết kế chi tiết cho ngôi nhà giống như là mô tả một class. Tất cả những ngôi nhà được xây dựng dựa trên bản thiết kế đó là những object của class. Một ngôi nhà cụ thể là một instance.

Cuối cùng, hãy cố gắng ghi nhớ những điều sau đây khi lập trình hướng đối tượng:

Sự khác biệt chính giữa một function và một class là: Function được “float” thoải mái mà không bị cản trở. Trong khi đối với Class (instance) phải biết được class cha (đặc tính của class cha) của nó, do đó bạn cần phải nắm rõ các phương thức tham chiếu đến class cha của class. Nó chỉ là một quy tắc ngầm nho nhỏ mà bạn phải nắm được trước khi đi sâu vào OOP. Nhiều ngôn ngữ lập trình sử dụng những cú pháp bóng bẩy thay vì sự đơn giản về ngữ nghĩa, nếu thấy mệt mỏi với điều đó, bạn có thể thử Python, ngôn ngữ lập trình này đề cao sự đơn giản và dễ tiếp cận cho người dùng.

Xem thêm:

Thứ Năm, 16/08/2018 08:36
4,414 👨 27.474
0 Bình luận
Sắp xếp theo