Giới thiệu về Lập trình hướng đối tượng

Xin chào các bạn, chủ đề hôm nay mình muốn chia sẻ với các bạn là “Giới thiệu về lập trình hướng đối tượng”. Chắc hẳn khái niệm này vô cùng quen thuộc với các bạn rồi phải không vì chúng ta đã được làm quen từ hồi năm nhất, năm hai đại học rồi. Hôm nay chúng mình cùng ôn lại kiến thức nhé! Tuy nhiên để thực sự hiểu OOP là gì thì chúng ta hãy bắt đầu từ lịch sử của quá trình lập trình, xem xét OOP đã tiến hóa như thế nào. Let’s Gooooo!!!

1. Sự tiến hóa của các phương pháp lập trình

1.1 Lập trình không có cấu trúc

  • Là phương pháp xuất hiện đầu tiên. Phương pháp này đơn giản chỉ là viết tất cả mã lệnh vào 1 hàm main duy nhất và chạy.
  • Ngôn ngữ dược sử dụng trong phương pháp này là Assembly.
  • Nhược điểm: Chỉ sử dụng biến toàn cục, rất tốn bộ nhớ; Khó hiểu, khó bảo trì, khó phát triển ứng dụng lớn.

1.2 Lập trình có cấu trúc

Sau một thời gian tồn tại, người ta dần nhận ra những nhược điểm của phương pháp trên và đưa ra phương pháp đó là chia chương trình lớn thành các chức năng, mỗi chức năng được đưa vào 1 hàm. Khi cần dùng đến chức năng nào thì sẽ gọi hàm tương ứng. Vào cuối các năm 1960 và 1970, ngôn ngữ lập trình có cấu trúc ra đời.

  • Ưu điểm: Chương trình được module hóa, dễ hiểu, dễ bảo trì, dễ dàng tạo ra các thư viện.
  • Nhược điểm: Dữ liệu và xử lý tách rời. Khi cấu trúc thay đổi dẫn đến thuật toán thay đổi,…

1.3 Lập trình hướng đối tượng

Với mong muốn xây dựng một phương pháp lập trình trực quan, mô tả trung thực hệ thống trong thực tế vì thế phương pháp lập trình hướng đối tượng ra đời. Chúng ta cùng tìm hiểu nhé!

2. Lập trình hướng đối tượng

Lập trình hướng đối tượng ( Object-oriented programming gọi tắt là OOP) hay chi tiết hơn là Lập trình định hướng đối tượng, chính là phương pháp lập trình lấy đối tượng làm nền tảng để xây dựng giải thuật, xây dựng chương trình.

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

Hướng đối tượng giống như tên gọi của nó là hướng vào một đối tượng, nghĩa là nó có động cơ được xác định từ trước. Lập trình hướng đối tượng là kỹ thuật lập trình nhằm vào sự tương tác giữa các đối tượng.

Mỗi đối tượng (Object) có những thuộc tính ( Property), những phương thức (Method) các định các chức năng của đối tượng. Bên cạnh đó, đối tượng cũng có khả năng phát sinh các sự kiên (Event) khi thay đổi thông tin. Tất cả những thuộc tính, phương thức và sự kiện tạo nên cấu trúc của đối tượng.

Một ngôn ngữ được coi là ngôn ngữ lập trình hướng đối tượng nếu đáp ứng đủ 4 tính chất sau:

  • Tính đóng gói (Encapsulation)
  • Tính trừu tượng (Abstraction)
  • Tính kế thừa (Inheritance)
  • Tính đa hình (Polymorphism)

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

  • Dữ liệu không bị thay đổi trong chương trình như lập trình cấu trúc.
  • Khi thay đổi cấu trúc dữ liệu của một đối tượng, không cần thay đổi các mã nguồn của các đối tượng khác mà chỉ cần thanh đổi một một số hàm thành phần.
  • Có thể sử dụng lại mã nguồn qua kế thừa .
  • Phù hợp các phần mềm phức tạp, lớn.
  • Được đánh giá là dễ học, năng suất, đơn giản, dễ bảo trì, dễ mở rộng…

2.3 Tại sao sinh ra nó?

Khi bạn đọc đến dòng này rồi thì chắc bạn cũng đã hiểu, ta không thể lập trình một cái gì đó lớn hơn và rộng hơn nếu ta không sử dụng OOP trong dự án của chúng ta. Đúng vậy, Lập trình Hướng đối tượng được sinh ra giúp ta lập trình vững chắc từng bước một và dễ dàng chia sẻ nhiệm vụ cho mỗi người trong một đội nhóm, dễ dàng bảo trì hệ thống. Đem lại sự yên tâm khi build và sự rõ ràng khi tìm lỗi. Nói chung, nếu bạn áp dụng OOP vào dự án của bạn, bạn sẽ ngủ ngon hơn và có thời gian đi chơi với Gấu mà không bị đau đầu.

Ý nghĩa giữa cuộc sống và lập trình hướng đối tượng?

Liên tưởng từ lập trình trong máy tính ra lập trình trong cuộc sống. Có rất nhiều điểm tương đồng.

Trong cuộc sống hàng ngày, ta có thể làm những điều ta muốn một cách tuyến tính hay một cách có hệ thống. Đó là tùy ở bạn. Khi bạn lên một kế hoạch cụ thể, tức là bạn làm cho cuộc sống của bạn có mục tiêu, đối tượng rõ ràng. Cuộc sống của bạn ví như một hệ thống lớn mà nếu bạn design theo cảm tính ngay từ đầu mà không đặt ra những  mục tiếu rõ ràng ( hướng đối tượng) bạn sẽ gặt lại những thứ không rõ ràng. Đến một lúc nào đó, bạn sẽ không kiểm soát được cuộc đời mình nữa và tương lai bạn sẽ nằm lại trong bàn tay người khác.

Hãy áp  dụng hướng đối tượng vào cuộc sống và tự thiết kết cuộc đời mình nhé!!!!