Các phí tổn và lợi ích của lập trình hướng đối tượng (tiếp tục)
Lập trình hướng đối tượng thử kiểm soát phức tạp của một chương trình trong khi vẫn mô hình hóa dữ liệu
cái thay đổi trạng thái của chúng. Phong cách này chia dữ liệu thành các đơn vị nhỏ tương đối gọi là
các objects. Mỗi object sau đó chịu trách nhiệm cho quản lí dữ liệu của bản thân nó. Nếu một object
cần giúp đỡ với các nhiệm vụ của bản thân nó, nó có thể gọi lên object khác hay sử dụng các phương thức
định nghĩa trong siêu class của nó. Mục tiêu chính là chia trách nhiệm giữa các bộ phận tương đối độc lập
nhỏ hay liên kết lỏng lẻo. Phối hợp các objects, khi chúng được thiết kế tót, làm giảm khả năng rằng
một hệ thống sẽ bị phá vỡ khi các thay đổi được thực hiện bên trong một bộ phận.
Mặc dù lập trình hướng đối tượng đã trở nên hoàn toàn thông dụng, nó có thể bị sử dụng quá mức hay lạm
dụng. Các vấn đề quy mô trung bình và nhỏ vẫn có thể được giải quyết hiệu quả, đơn giản và quan trọng nhất
nhanh chóng sử dụng 3 phong cách lập trình kia đề cập ở trên, hoặc riêng rẽ hoặc kết hợp. Các giải pháp
cho các vấn đề như tính toán số học thường có vẻ gượng ép khi chúng được diễn đạt dưới dạng các objects
và classes. Cho các vấn đề khác, sử dụng các objects là dễ để nắm bắt, nhưng thực thi của chúng trong
dạng các classes phản ánh một mô hình tính toán phức tạp với cú pháp và semantics làm nản. Cuối cùng,
các tương tác ẩn và không thoải mái có thể ẩn nấp trong trật tự có thứ bậc kế thừa thiết kế kém cái
giống những cái đang xung đột các chương trình thủ tục dễ hỏng nhất.
Để kết luận, bất cứ phong cách lập trình hay kết hợp các phong cách nào bạn chọn để giải quyết một
vấn đề, thiết kế tốt và ý nghĩa phổ biến là cơ bản.
