Hãy bắt đầu từ đầu. Trước hết, thực sự trừu tượng là gì?
Vấn đề / Động lực
Khi bạn lập trình, bạn thường phải giải quyết các vấn đề rất chi tiết cụ thể.
Động lực chính của sự trừu tượng là khi bạn có thể thấy mình trong một tình huống mà chương trình của bạn xử lý toàn bộ vấn đề như một đơn vị, với nhiều đặc thù nhỏ riêng biệt đòi hỏi sự chú ý và hiểu biết. Vấn đề ở đây là con người khó có thể xử lý lượng dữ liệu khổng lồ như vậy cùng một lúc.
Giải pháp: Trừu tượng
Để bạn có thể hiểu những gì bạn cần để thực hiện ý tưởng của mình , bạn trích xuất các giải pháp chi tiết thành các tóm tắt đơn giản hóa .
Ví dụ: chúng ta hãy xem ORM (Ánh xạ quan hệ đối tượng), trong đó SQL được trừu tượng hóa thành các đối tượng.
Để chèn một mục mới vào cơ sở dữ liệu mà không trừu tượng, lập trình viên phải biết SQL. Vì vậy, để chèn một mục mới, lập trình viên cần nhớ cú pháp SQL để chèn một mục mới vào bảng:
INSERT INTO Items (field1, field2) VALUES (value1, value2)
Nhưng với sự trừu tượng, lập trình viên chỉ cần nhận thức được ý tưởng về những gì anh ta muốn làm. Một sự trừu tượng hướng đối tượng có thể trông giống như:
Item item = new Item(value1, value2)
Bạn thậm chí có thể đi xa hơn một chút và suy nghĩ về thực tế rằng chính SQL là một sự trừu tượng hóa rất lớn đối với hàng tấn cấu trúc và thuật toán lưu trữ dữ liệu tinh vi, hoàn toàn nằm trong tầm tay bạn với giá học ngôn ngữ khai báo đơn giản.
Đối diện của sự trừu tượng
Dựa trên những gì chúng ta đã định nghĩa rằng sự trừu tượng thực sự là tất cả về việc làm cho nó đủ để chỉ biết khái niệm tinh túy trong tay, chúng ta có thể dễ dàng suy ra rằng sự đối lập của sự trừu tượng trong thực tế là bí truyền , trong đó việc sử dụng hoặc hiểu biết đòi hỏi phải có một số kiến thức chuyên ngành về đặc thù của chủ đề.