Object-Oriented Programming viết tắt OOP

Object-Oriented Programming viết tắt OOP – Lập trình hướng đối tượng: là một trong những kỹ thuật lập trình rất quan trọng hiện nay. Nó được áp dụng ở hầu hết các ứng dụng thực tế xây dựng tại các doanh nghiệp. Hầu hết các ngôn ngữ lập trình và framework lập trình phổ biến hiện nay như Java, PHP, .NET đều hỗ trợ lập trình hướng đối tượng. Các lập trình viên đa phần đã được học về lập trình hướng đối tượng ở trường đại học nhưng các nguyên lý cơ bản của lập trình hướng đối tượng đôi khi lại không nắm rõ dẫn đến sử dụng sai, không đúng triết lý của lập trình hướng đối tượng.

Lập trình hướng đối tượng người tiêu dùng là một kỹ thuật lập trình được cho phép lập trình viên tạo ra những đối tượng người tiêu dùng trong code trừu tượng hóa những đối tượng người tiêu dùng thực tiễn trong đời sống. Hướng tiếp cận này hiện đang rất thành công xuất sắc và đã trở thành một trong những khuôn mẫu tăng trưởng ứng dụng, đặc biệt quan trọng là những ứng dụng cho doanh nghiệp .
Khi tăng trưởng ứng dụng sử dụng OOP, tất cả chúng ta sẽ định nghĩa những lớp ( class ) để quy mô những đối tượng người tiêu dùng thực tiễn. Trong ứng dụng những lớp này sẽ được khởi tạo thành những đối tượng người dùng và trong suốt thời hạn ứng dụng chạy, những phương pháp ( method ) của đối tượng người dùng này sẽ được gọi .

Lớp định nghĩa đối tượng sẽ như thế nào: gồm những phương thức và thuộc tính (property) gì. Một đối tượng chỉ là một thể hiện của lớp. Các lớp tương tác với nhau bởi các public API: là tập các phương thức, thuộc tính public của nó.

OOP có 3 nguyên lý cơ bản chúng ta sẽ cùng tìm hiểu chi tiết sau đây đó là:

Tính đóng gói (Encapsulation)

Tính đóng gói tức là quy tắc nhu yếu trạng thái bên trong của một đối tượng người dùng được bảo vệ và tránh truy vấn được từ code bên ngoài ( tức là code bên ngoài không hề trực tiếp nhìn thấy và biến hóa trạng thái của đối tượng người dùng đó ). Bất cứ truy vấn nào tới trạng thái bên trong này bắt buộc phải trải qua một public API để bảo vệ trạng thái của đối tượng người dùng luôn hợp lệ do tại những public API chịu nghĩa vụ và trách nhiệm triển khai kiểm tra tính hợp lệ cũng như trình tự update trạng thái của đối tượng người tiêu dùng đó .

Tính kế thừa (Inheritance)

Khi khởi đầu thiết kế xây dựng ứng dụng tất cả chúng ta sẽ mở màn việc phong cách thiết kế những lớp, thường thì tất cả chúng ta sẽ thấy có trường hợp một số ít lớp có vẻ như có quan hệ với những lớp khác, chúng có những đặc tính khá giống nhau .
Tính đa hình ( Polymorphism )
Với hầu hết lập trình viên thì tính Kế thừa và Đóng gói trong OOP khá dễ hiểu còn tính Đa hình khi mới tiếp cận sẽ thấy khó hiểu hơn một chút ít. Tuy nhiên đây lại là một đặc thù hoàn toàn có thể nói là tiềm ẩn hầu hết sức mạnh của lập trình hướng đối tượng người dùng. Hiểu một cách đơn thuần : Đa hình là khái niệm mà hai hoặc nhiều lớp có những phương pháp giống nhau nhưng hoàn toàn có thể thực thi theo những phương pháp khác nhau .