Hỏi Đáp

Lập trình hướng đối tượng là gì? | Object Oriented Programming – OOP

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

Lập trình hướng đối tượng (oop) là một trong những kỹ thuật lập trình quan trọng và được sử dụng rộng rãi nhất hiện nay. Hầu hết các ngôn ngữ lập trình hiện nay như java, php, .net, ruby, python … đều hỗ trợ oop . Vậy lập trình hướng đối tượng là gì? Và nguyên tắc cơ bản của oop là gì?

  • Lập trình chức năng là gì?

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

Lập trình hướng đối tượng (oop) là một kỹ thuật lập trình cho phép lập trình viên tạo các đối tượng trong mã để tóm tắt chúng.

Đối tượng là những sự vật và sự kiện có cùng thuộc tính, đặc điểm và hành động mà chúng tôi thu thập được trong cuộc sống thực. Trong khi lập trình oop, chúng ta sẽ định nghĩa các lớp để thu thập (mô hình hóa) các đối tượng thực tế.

Đối tượng

Một đối tượng chứa hai phần thông tin: thuộc tính phương thức .

  • Thuộc tính là thông tin và đặc điểm của một đối tượng. Ví dụ: một người có các thuộc tính như mắt, mũi, tay, chân …
  • Phương thức là những thao tác và thao tác mà đối tượng có thể thực hiện. Ví dụ, một người sẽ có thể nói chuyện, đi bộ, ăn, uống, v.v. ..

Lớp

Một lớp là một kiểu dữ liệu bao gồm các thuộc tính và phương thức được xác định trước. Đây là một sự trừu tượng của các đối tượng. Không giống như các kiểu dữ liệu thông thường, các lớp là các đơn vị (trừu tượng) bao gồm các phương thức và thuộc tính. Đại khái hơn, các đối tượng có các thuộc tính tương tự được nhóm thành một lớp đối tượng.

Sự khác biệt giữa các đối tượng và lớp

Lớp

có thể được hiểu là một khuôn mẫu và đối tượng là một thể hiện dựa trên khuôn mẫu. Ví dụ: chúng ta nói về chó, bạn có thể hiểu là chó:

  • Thông tin và đặc điểm: 4 chân, 2 mắt, đuôi, chiều cao, cân nặng, màu lông …
  • Các hành động như sủa, đi, ăn, ngủ …
  • li>

Đối tượng là chó Phú Quốc nhà ta, cũng có đặc điểm giống chó nhà.

kiến ​​thức cơ bản trên

Đóng gói

Xem Thêm : Hình nền gấu trúc Panda cute, dễ thương – Thủ Thuật Phần Mềm

Lưu ý:

  • Đóng gói dữ liệu và phương thức liên quan thành các lớp để dễ sử dụng và quản lý. Có nghĩa là, mỗi lớp được xây dựng để thực hiện một bộ chức năng cụ thể cho lớp đó.
  • Ngoài ra, tính năng đóng gói ẩn một số thông tin và chi tiết triển khai nội bộ với thế giới bên ngoài. Thế giới bên ngoài không thể nhìn thấy nó.

Các thuộc tính và phương thức của đối tượng cần thiết để giải quyết vấn đề đã chọn sẽ được đóng gói thành một kiểu dữ liệu gọi là lớp. Để ẩn thông tin với các đối tượng bên ngoài, bất kỳ thuộc tính nào cũng có một phương thức. Có nghĩa là, mã bên ngoài không trực tiếp xem và thay đổi trạng thái của đối tượng.

OOP-Encapsulation

Nói chung, trạng thái đối tượng không hợp lệ thường do: chưa xác thực, không đúng thứ tự hoặc các bước bị bỏ qua, do đó, có một quy tắc quan trọng cần nhớ trong oop, đó là luôn khai báo trạng thái bên trong của đối tượng là riêng tư và chỉ thông qua truy cập công khai / các phương thức / thuộc tính được bảo vệ.

Ví dụ: chúng tôi thấy một viên thuốc cảm. Chúng ta chỉ biết rằng nó điều trị cảm lạnh, nhức đầu và một số thành phần chính, nhưng những hoạt chất cụ thể có trong nó là gì thì hoàn toàn không biết.

Được kế thừa

Nó cho phép xây dựng một lớp mới dựa trên định nghĩa lớp hiện có. Điều này có nghĩa là các lớp cha có thể chia sẻ dữ liệu và phương thức với các lớp con. Các lớp con không cần phải định nghĩa lại và có thể mở rộng các thành phần kế thừa và thêm các thành phần mới. Sử dụng lại mã nguồn theo cách tốt nhất có thể và tận dụng tối đa nó. Một số kiểu thừa kế thường gặp: thừa kế đơn, thừa kế đa thừa, thừa kế đa cấp, thừa kế thứ bậc.

Khi chúng tôi bắt đầu xây dựng ứng dụng, trước tiên chúng tôi sẽ bắt đầu bằng cách thiết kế các định nghĩa lớp. Thường thì một số lớp có liên quan đến các lớp khác và chúng có các thuộc tính tương tự.

Ví dụ: Android, iphone loại 2

Mỗi lớp đại diện cho một loại điện thoại thông minh khác nhau, nhưng có các tính chất giống nhau, chẳng hạn như gọi điện, nhắn tin, chụp ảnh. Thay vì sao chép các thuộc tính này, chúng ta nên đặt chúng vào một lớp công khai gọi là lớp cha. Chúng ta có thể định nghĩa một lớp cha – trong trường hợp này là Điện thoại thông minh và có các lớp con kế thừa từ nó, tạo ra mối quan hệ cha / con.

Tính đa hình

Đa hình là một phép toán có thể được thực hiện theo nhiều cách khác nhau. Đây là một thuộc tính khác có thể nói là chứa hầu hết các chức năng của lập trình hướng đối tượng.

Nói một cách đơn giản hơn: Đa hình là một khái niệm trong đó hai hoặc nhiều lớp có cùng phương thức nhưng có thể được triển khai theo những cách khác nhau.

Xem Thêm : Tuổi học trò – nơi gửi gắm kí ức và cảm xúc chân thật nhất | Báo Dân trí

Ví dụ: trong ví dụ trên, mỗi điện thoại thông minh kế thừa từ lớp siêu cấp điện thoại thông minh, nhưng có thể lưu trữ dữ liệu trên đám mây theo những cách khác nhau. android được lưu trữ trên google drive và iphone được lưu trữ trên icloud.

Một ví dụ về tính đa hình. Chúng tôi có hai con vật: chó và mèo. Cả hai loài động vật này đều là động vật dạng động vật. Nhưng khi chúng ta bảo hai con vật kêu meo meo, con chó kêu meo meo và con mèo kêu meo meo.

Vì vậy, trong ví dụ này, chó và mèo được coi là đồ vật. 2 con vật có thể hiểu cùng một âm thanh, nhưng theo những cách khác nhau.

Tóm tắt

trừu tượng có nghĩa là khái quát điều gì đó mà không cần chú ý đến chi tiết. Nó không quan tâm những gì bên trong, mọi người vẫn hiểu nó mỗi khi họ nghe nó.

Ví dụ: nếu bạn chạy xe tay ga và hành động là tăng ga để tăng tốc, thì chức năng chân ga thể hiện tính trừu tượng. Người sử dụng chỉ cần biết khi nào cần tăng tốc, và nó sẽ tăng tốc bất kể chiếc xe đang ở bên trong.

Trong lập trình oop, trừu tượng hóa có nghĩa là chọn các thuộc tính và phương thức của một đối tượng cần thiết để giải quyết vấn đề bạn đang lập trình. Bởi vì một đối tượng có nhiều thuộc tính phương thức, nhưng không phải tất cả chúng đều cần được chọn cho một vấn đề cụ thể.

Ví dụ: trong trường hợp quản lý học sinh, chúng tôi chỉ cần quản lý thông tin tương tự

  • Tên
  • Ngày sinh
  • Giới tính
  • Điểm Kiểm tra

Không có thông tin bổ sung để quản lý:

  • Màu tóc
  • Sở thích
  • Chiều cao

Bởi vì chúng thực sự không cần thiết.

Ưu điểm của Lập trình hướng đối tượng

  • Dựa trên nguyên tắc kế thừa, trong quá trình mô tả các lớp, các thủ tục trùng lặp và thừa có thể được loại bỏ. Và tính khả dụng của các lớp có thể được mở rộng mà không cần thực hiện lại. Tối ưu hóa và sử dụng lại mã một cách hiệu quả.
  • Đảm bảo giảm thời gian xây dựng hệ thống và cải thiện hiệu quả triển khai.
  • Hai khái niệm mới xuất hiện là lớp đối tượng đặc điểm của lập trình hướng đối tượng . Nó giải quyết những thiếu sót của cách tiếp cận lập trình hướng cấu trúc. Hơn nữa, hai khái niệm này giúp thể hiện tốt hơn thế giới thực trên máy tính.

Một số bài viết bạn có thể quan tâm:

  • So sánh giao diện và trừu tượng trong lập trình hướng đối tượng
  • 4 Thuộc tính của lập trình hướng đối tượng trong Java
  • Hiểu “Nguyên tắc vàng” vững chắc của lập trình hướng đối tượng

Đừng bỏ lỡ các công việc lập trình hàng đầu trên topdev

Nguồn: https://xettuyentrungcap.edu.vn
Danh mục: Hỏi Đáp

Related Articles

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Back to top button