Lập trình có cấu trúc và lập trình hướng đối tượng
Lập trình hướng đối tượng (OOP) và lập trình có cấu trúc là hai mô hình lập trình. Một mô hình lập trình là một phong cách cơ bản của lập trình máy tính. Các mô hình lập trình khác nhau về cách mỗi phần tử của các chương trình được trình bày và cách các bước được xác định để giải quyết vấn đề. Như tên cho thấy, OOP tập trung vào việc thể hiện các vấn đề bằng cách sử dụng các đối tượng trong thế giới thực và hành vi của chúng, trong khi Lập trình có cấu trúc xử lý việc tổ chức chương trình theo cấu trúc logic.
Lập trình cấu trúc là gì?
Giả định rằng năm sinh của Lập trình có cấu trúc là năm 1970. Lập trình có cấu trúc được coi là một tập hợp con của lập trình mệnh lệnh. Một chương trình có cấu trúc được tạo thành từ các cấu trúc dòng chương trình đơn giản, được tổ chức theo cấp bậc. Chúng là trình tự, lựa chọn và lặp lại. Trình tự là một thứ tự của báo cáo. Lựa chọn có nghĩa là chọn một câu lệnh từ một tập hợp các câu lệnh dựa trên trạng thái hiện tại của chương trình (ví dụ: sử dụng câu lệnh if) và lặp lại có nghĩa là thực thi một câu lệnh cho đến khi đạt được trạng thái nhất định (ví dụ: sử dụng câu lệnh for hoặc while). ALGOL, Pascal, Ada và PL / I là một số ngôn ngữ lập trình có cấu trúc được sử dụng ngày nay.
Lập trình hướng đối tượng là gì?
Trong OOP, trọng tâm là suy nghĩ về vấn đề cần giải quyết về các yếu tố trong thế giới thực và đại diện cho vấn đề về các đối tượng và hành vi của chúng. Các lớp mô tả các biểu diễn trừu tượng của các đối tượng trong thế giới thực. Các lớp giống như bản thiết kế hoặc mẫu, tập hợp các mục tương tự hoặc những thứ có thể được nhóm lại với nhau. Các lớp có các thuộc tính được gọi là thuộc tính. Các thuộc tính được thực hiện như các biến toàn cục và cá thể. Các phương thức trong các lớp đại diện hoặc định nghĩa hành vi của các lớp này. Các phương thức và thuộc tính của các lớp được gọi là các thành viên của lớp. Một thể hiện của một lớp được gọi là một đối tượng. Do đó, một đối tượng là một cấu trúc dữ liệu gần giống với một số đối tượng trong thế giới thực.
Có một số khái niệm OOP quan trọng như trừu tượng hóa dữ liệu, đóng gói, đa hình, nhắn tin, mô đun và kế thừa. Thông thường, đóng gói đạt được bằng cách đặt các thuộc tính riêng tư, đồng thời tạo các phương thức công khai có thể được sử dụng để truy cập các thuộc tính đó. Kế thừa cho phép người dùng mở rộng các lớp (được gọi là lớp phụ) từ các lớp khác (được gọi là siêu lớp). Đa hình cho phép lập trình viên thay thế một đối tượng của một lớp thay cho một đối tượng của siêu lớp của nó. Thông thường, các danh từ tìm thấy trong định nghĩa vấn đề trực tiếp trở thành các lớp trong chương trình. Và tương tự, động từ trở thành phương thức. Một số ngôn ngữ OOP phổ biến nhất là Java và C #.
Sự khác biệt giữa lập trình có cấu trúc và lập trình hướng đối tượng là gì?
Sự khác biệt chính giữa Lập trình có cấu trúc và OOP là trọng tâm của Lập trình có cấu trúc là cấu trúc chương trình theo một hệ thống phân cấp của các chương trình con trong khi, trọng tâm của OOP là phá vỡ nhiệm vụ lập trình trong các đối tượng, đóng gói dữ liệu và phương thức. OOP được coi là linh hoạt hơn so với lập trình có cấu trúc, bởi vì OOP tách một chương trình thành một mạng các hệ thống con thay vì cấu trúc chương trình theo cấu trúc phân cấp. Mặc dù cấu trúc cung cấp sự rõ ràng nhất định, một thay đổi nhỏ đối với chương trình có cấu trúc rất lớn có thể gây ra hiệu ứng gợn khi phải thay đổi nhiều chương trình con.