Lập trình hướng đối tượng OOP (object-oriented programming)

0
797

Lập trình hướng đối tượng là gì?

Lập trình hướng đối tượng (OOP) là một mô hình ngôn ngữ lập trình được tổ chức xung quanh các đối tượng chứ không phải là “hành động” và dữ liệu thay vì logic. Trong lịch sử, một chương trình đã được xem như là một thủ tục logic để lấy dữ liệu đầu vào, xử lý nó và tạo ra dữ liệu đầu ra.

Mô hình Lập trình hướng đối tượng - OOP
Mô hình Lập trình hướng đối tượng – OOP

Thử thách lập trình được xem như cách viết logic, không phải cách xác định dữ liệu. Lập trình hướng đối tượng có quan điểm rằng những gì chúng ta thực sự quan tâm là các đối tượng mà chúng ta muốn thao tác hơn là logic cần thiết để thao tác chúng. Ví dụ về các đối tượng từ con người (được mô tả theo tên, địa chỉ, vv…) cho các tòa nhà và tầng (có thể mô tả và quản lý tài sản) xuống các tiện ích nhỏ trên máy tính để bàn (chẳng hạn như các nút và thanh cuộn).

Bước đầu tiên trong Lập trình hướng đối tượng(OOP) là xác định tất cả các đối tượng mà lập trình viên muốn thao tác và cách chúng có liên quan với nhau, một bài tập thường được gọi là mô hình hóa dữ liệu. Khi một đối tượng đã được xác định, nó được tổng quát như là một lớp đối tượng (nghĩ về khái niệm của Plato về chiếc ghế “lý tưởng” viết tắt của tất cả các ghế) xác định loại dữ liệu chứa và bất kỳ chuỗi logic nào có thể thao tác nó. Mỗi trình tự logic riêng biệt được gọi là một phương thức. Các đối tượng giao tiếp với các giao diện được xác định rõ ràng được gọi là các thông điệp.

Các khái niệm và quy tắc được sử dụng trong lập trình hướng đối tượng cung cấp những lợi ích quan trọng sau:

Khái niệm về một lớp dữ liệu làm cho nó có thể định nghĩa các lớp con của các đối tượng dữ liệu chia sẻ một số hoặc tất cả các đặc tính lớp chính. Được gọi là thừa kế, thuộc tính này của OOP buộc phân tích dữ liệu kỹ lưỡng hơn, giảm thời gian phát triển và đảm bảo mã hóa chính xác hơn.
Vì một lớp chỉ định nghĩa dữ liệu cần phải quan tâm, khi một cá thể của lớp đó (một đối tượng) được chạy, mã sẽ không thể vô tình truy cập dữ liệu chương trình khác. Tính năng ẩn dữ liệu này cung cấp bảo mật hệ thống tốt hơn và tránh tham nhũng dữ liệu không mong muốn.
Định nghĩa của một lớp được tái sử dụng không chỉ bởi chương trình mà nó được tạo ban đầu mà còn bởi các chương trình hướng đối tượng khác (và, vì lý do này, có thể dễ dàng phân phối để sử dụng trong các mạng).
Khái niệm về các lớp dữ liệu cho phép một lập trình viên tạo ra bất kỳ kiểu dữ liệu mới nào chưa được định nghĩa trong chính ngôn ngữ đó.
Simula là ngôn ngữ lập trình hướng đối tượng đầu tiên. Java, Python, C ++, Visual Basic .NET và Ruby là các ngôn ngữ OOP phổ biến nhất hiện nay. Ngôn ngữ lập trình Java được thiết kế đặc biệt để sử dụng trong các ứng dụng phân tán trên mạng công ty và Internet. Ruby được sử dụng trong nhiều ứng dụng web. Curl, Smalltalk, Delphi và Eiffel cũng là những ví dụ về ngôn ngữ lập trình hướng đối tượng.

OOPSLA là hội nghị thường niên dành cho các Hệ thống lập trình hướng đối tượng, Ngôn ngữ và Ứng dụng.

This site uses Akismet to reduce spam. Learn how your comment data is processed.