Trừu tượng (công nghệ phần mềm)

Bản chất của trừu tượng là bảo vệ thông tin có liên quan trong một ngữ cảnh cụ thể và quên đi thông tin không liên quan trong ngữ cảnh đó.

– 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à:

  • Quá trình loại bỏ hoặc khái quát các chi tiết vật lý, không gian hoặc thời gian[2] hoặc thuộc tính trong nghiên cứu các đối tượng hoặc hệ thống để tập trung vào các chi tiết quan trọng hơn;[3] nó tương tự như quá trình của khái quát;
  • Quá trình tạo ra các trừu tượng khái niệm-đối tượng bằng cách phản ánh các đặc điểm hoặc thuộc tính chung của nhiều đối tượng hoặc hệ thống không trừu tượng trong nghiên cứu[3] - kết quả của quá trình trừu tượng hóa.

Trừu tượng, nói chung, là một khái niệm cơ bản trong khoa học máy tính và phát triển phần mềm.[4] Quá trình trừu tượng hóa cũng có thể được gọi là mô hình hóa và có liên quan chặt chẽ với các khái niệm lý thuyếtthiết kế.[5] Mô hình cũng có thể được xem là các loại trừu tượng hóa do chúng khái quát các khía cạnh của thực tế.

Trừu tượng hóa trong khoa học máy tính có liên quan chặt chẽ với trừu tượng hóa trong toán học do cùng tập trung vào việc xây dựng các trừu tượng như các đối tượng,[2] nhưng cũng liên quan đến các khái niệm trừu tượng khác được sử dụng trong các lĩnh vực khác như nghệ thuật.[3]

Các trừu tượng cũng có thể liên quan đến các đối tượng và hệ thống thế giới thực, các quy tắc của hệ thống tính toán hoặc quy tắc của ngôn ngữ lập trình mang hoặc sử dụng các đặc điểm của trừu tượng hóa, chẳng hạn như:

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.

Tham khảo

[sửa | sửa mã nguồn]
  1. ^ Guttag, John V. (ngày 18 tháng 1 năm 2013). Introduction to Computation and Programming Using Python . Cambridge, Massachusetts: The MIT Press. ISBN 9780262519632.
  2. ^ a b Colburn, Timothy; Shute, Gary (5 tháng 6 năm 2007). “Abstraction in Computer Science”. Minds and Machines (bằng tiếng Anh). 17 (2): 169–184. doi:10.1007/s11023-007-9061-7. ISSN 0924-6495. S2CID 5927969.
  3. ^ a b c Kramer, Jeff (1 tháng 4 năm 2007). “Is abstraction the key to computing?”. Communications of the ACM. 50 (4): 36–42. doi:10.1145/1232743.1232745. ISSN 0001-0782. S2CID 12481509.
  4. ^ Ben-Ari, Mordechai (1 tháng 3 năm 1998). “Constructivism in computer science education”. ACM SIGCSE Bulletin. 30 (1): 257, 257–261. doi:10.1145/274790.274308. ISSN 0097-8418.
  5. ^ Comer, D. E.; Gries, David; Mulder, Michael C.; Tucker, Allen; Turner, A. Joe; Young, Paul R. /Denning (1 tháng 1 năm 1989). “Computing as a discipline”. Communications of the ACM. 32 (1): 9–23. doi:10.1145/63238.63239. ISSN 0001-0782. S2CID 723103.
  6. ^ Liskov, Barbara (1 tháng 5 năm 1988). “Keynote address – data abstraction and hierarchy”. ACM SIGPLAN Notices. ACM. 23: 17–34. doi:10.1145/62138.62141. ISBN 0897912667. S2CID 14219043.
  7. ^ Barendregt, Hendrik Pieter (1984). The lambda calculus : its syntax and semantics . Amsterdam: North-Holland. ISBN 0444867481. OCLC 10559084.
  8. ^ Barendregt, Hendrik Pieter (2013). Lambda calculus with types. Dekkers, Wil., Statman, Richard., Alessi, Fabio., Association for Symbolic Logic. Cambridge, UK: Cambridge University Press. ISBN 9780521766142. OCLC 852197712.
  9. ^ Newell, Allen; Simon, Herbert A. (1 tháng 1 năm 2007). Computer science as empirical inquiry: symbols and search. ACM. tr. 1975. doi:10.1145/1283920.1283930. ISBN 9781450310499.

Bài viết này dựa trên nguồn lấy từ Từ điển trực tuyến miễn phí về máy tính trước ngày 1 tháng 11 năm 2008 và được hợp nhất theo các điều khoản "cấp lại giấy phép" của GFDL, phiên bản 1.3 hoặc mới hơn.

Đọc thêm

[sửa | sửa mã nguồn]

Liên kết ngoài

[sửa | sửa mã nguồn]
  • SimArch example of layered architecture for distributed simulation systems.
Chúng tôi bán
Bài viết liên quan
17 website hữu ích cho các web developer
17 website hữu ích cho các web developer
Giữ các trang web hữu ích có thể là cách nâng cao năng suất tối ưu, Dưới đây là một số trang web tốt nhất mà tôi sử dụng để giúp cuộc sống của tôi dễ dàng hơn
Pink Pub ♡ Take me back to the night we met ♡
Pink Pub ♡ Take me back to the night we met ♡
Đã bao giờ bạn say mà còn ra gió trong tình trạng kiệt sức nhưng lại được dựa vào bờ vai thật an toàn mà thật thơm chưa?
Công nghệ thực phẩm: Học đâu và làm gì?
Công nghệ thực phẩm: Học đâu và làm gì?
Hiểu một cách khái quát thì công nghệ thực phẩm là một ngành khoa học và công nghệ nghiên cứu về việc chế biến, bảo quản và phát triển các sản phẩm thực phẩm
Thời điểm “vàng” để giáo dục giới tính cho trẻ
Thời điểm “vàng” để giáo dục giới tính cho trẻ
Khi nói chuyện với con về chủ đề giới tính và tình dục, ba mẹ hãy giải thích mọi thứ phù hợp với độ tuổi, khả năng tiếp thu của con