Trừu_tượng_(công_nghệ_phần_mềm)

– John V. Guttag[1]Trong công nghệ phần mềmkhoa học máy tính, trừu tượng (tiếng Anh: abstraction) là một kỹ thuật sắp xếp độ phức tạp của hệ thống máy tính. Nó hoạt động bằng cách thiết lập mức độ phức tạp mà một người tương tác với hệ thống, ngăn chặn các chi tiết phức tạp hơn ở dưới mức hiện tại. Lập trình viên làm việc với một giao diện lý tưởng (thường được định nghĩa rõ ràng) và có thể thêm các cấp độ bổ sung của chức năng nếu không sẽ quá phức tạp để xử lý. Ví dụ, một lập trình viên viết mã liên quan đến các toán tử số có thể không quan tâm đến cách những con số đó được lưu dưới phần cứng ra sao (ví dụ chúng là 16 bit hay 32 bit số nguyên), và khi những chi tiết đó bị giấu đi, có thể diễn tả rằng chúng được trừu tượng, để lại chỉ đơn giản là con số để lập trình viên có thể làm việc. Ngoài ra, việc gửi một email xuyên lục địa sẽ cực kỳ phức tạp nếu lập trình viên phải bắt đầu với từng sợi cáp quang cùng với các thành phần phần cứng cơ bản. Bằng cách sử dụng các lớp phức tạp đã được tạo ra để trừ tượng bố cục cáp và mạng, và hiển thị một kênh dữ liệu ảo cho lập trình viên, nhiệm vụ này có thể làm được.Trừu tượng có thể áp dụng cho kiểm soát hoặc cho dữ liệu: trừu tượng kiểm soát (control abstraction) là trừu tượng của hành động trong khi trừu tượng dữ liệu (data abstraction) là cấu trúc dữ liệu.