Hiệu ứng lề (khoa học máy tính)

Trong khoa học máy tính, một hàm hay biểu thức được cho là có hiệu ứng lề hay tác dụng phụ (side effect) nếu nó thay đổi một số trạng thái ngoài tầm vực của nó; hoặc có một sự tương tác quan sát được (observable) với hàm gọi nó hay phạm vi bên ngoài bên cạnh việc trả lại giá trị. Ví dụ, một hàm cụ thể có thể thay đổi giá trị của biến toàn cục (global variable) hay biến tĩnh (static variable), thay đổi một trong những tham số của nó, gây ra ngoại lệ (exception), hiển thị dữ liệu hay ghi dữ liệu vào tập tin, đọc dữ liệu, hay gọi các hàm khác có hiệu ứng lề. Với sự có mặt của hiệu ứng lề, hành vi của chương trình có thể phụ thuộc vào lịch sử của nó; nghĩa là, thứ tự của đánh giá các vấn đề. Hiểu đúng và gỡ lỗi một hàm có hiệu ứng lề đòi hỏi kiến thức về ngữ cảnh và lịch sử của nó.[1][2]

Hiệu ứng lề là cách phổ biến nhất mà một chương trình tương tác với thế giới bên ngoài (con người, hệ thống tập tin, các máy tính khác trong mạng). Nhưng mức độ sử dụng hiệu ứng lề phụ thuộc vào mẫu hình lập trình. Lập trình mệnh lệnh được biết đến nhiều vì thường sử dụng hiệu ứng lề.

Trong lập trình hàm, hiệu ứng lề hiếm khi được sử dụng.

Lập trình viên sử dụng hợp ngữ phải chú ý đến hiệu ứng lề ẩn.

Tham khảo[sửa | sửa mã nguồn]

  1. ^ “Research Topics in Functional Programming” ed. D. Turner, Addison-Wesley, 1990, pp 17–42. Truy cập from: Hughes, John, Why Functional Programming Matters (PDF)
  2. ^ Collberg, CSc 520 Principles of Programming Languages, Department of Computer Science, University of Arizona
Chúng tôi bán
Bài viết liên quan
Nhân vật Masumi Kamuro - Youkoso Jitsuryoku Shijou Shugi no Kyoushitsu e
Nhân vật Masumi Kamuro - Youkoso Jitsuryoku Shijou Shugi no Kyoushitsu e
Masumi Kamuro (神かむ室ろ 真ま澄すみ, Kamuro Masumi) là một học sinh của Lớp 1-A (Năm Nhất) và là thành viên của câu lạc bộ nghệ thuật. Cô là một người rất thật thà và trung thành, chưa hề làm gì gây tổn hại đến lớp mình.
Download Mahoutsukai no Yoru [Tiếng Việt]
Download Mahoutsukai no Yoru [Tiếng Việt]
Trong một ngôi nhà đồn rằng có phù thủy sinh sống đang có hai người, đó là Aoko Aozaki đang ở thời kỳ tập sự trở thành một thuật sư và người hướng dẫn cô là một phù thủy trẻ tên Alice Kuonji
Hướng dẫn build Kaeya - Genshin Impact
Hướng dẫn build Kaeya - Genshin Impact
Mặc dù Kaeya sở hữu base ATK khá thấp so với mặt bằng chung (223 ở lv 90 - kém khá xa Keqing 323 ở lv 90 hay Qiqi 287 ờ lv 90) nhưng skill 1 của Kaeya có % chặt to
Phân loại kĩ năng trong Tensura - Tensei shitara Slime Datta Ken
Phân loại kĩ năng trong Tensura - Tensei shitara Slime Datta Ken
Trên đời này không có gì là tuyệt đối cả, nhất là với mấy cái kĩ năng có chữ "tuyệt đối" trong tên, càng tin vào "tuyệt đối", càng dễ hẹo