Side effects là gì và những vấn đề liên quan

Trong quá trình làm việc trên các công cụ hỗ trợ lập trình tự động, chắc chắn bạn đã từng bắt gặp side effects. Vậy side effects là gì và có đặc điểm như thế nào? Bài viết dưới đây sẽ giúp bạn trả lời tất cả những thắc mắc xung quanh vấn đề trên.

1. Khái niệm Side effect là gì?

Khái niệm side effects là gì?

Side effects là các hiệu ứng phụ tác động và làm biến đổi trạng thái state bên ngoài chương trình. Đây là thuật ngữ chuyên ngành được sử dụng trong lĩnh vực lập trình phần mềm.

Hiện nay, một số thư viện đặc biệt được phát triển giúp người sử dụng có thể quản lý tất cả các hiệu ứng phụ một cách đơn giản, nhanh chóng như: Redux-Sugar, dva-loading, vue-wait,…

2. Ví dụ của Side Effect trong JavaScript

Khi bạn thao tác nhập dữ liệu username, password và ấn submit trên một hàm submit Login, phần mềm sẽ lần lượt xử lý các bước theo trình tự:

  • Submit thông tin lên server và nhận thông tin trả về
  • Hiển thị trạng thái thành công (chuyển từ redirect sang Dashboard) hoặc thất bại (Error và giải thích lỗi). Như vậy, side effects chính là bước thứ hai – hiển thị trạng thái kết quả truy cập ra phía ngoài màn hình.

3. Những mặt lợi và hại của side effects trong lập trình phần mềm

Những mặt lợi và hại của side effects trong lập trình phần mềm

Side effects là công cụ hoàn hảo, hỗ trợ người dùng thay đổi giá trị và thuộc tính của biến và hiển thị trạng thái dữ liệu ra phía ngoài màn hình. Bên cạnh đó, nó cũng cung cấp chức năng thu thập, quản lý và gửi thông tin lưu trữ về hệ cơ sở dữ liệu (database) hoàn toàn tự động.

Mặc dù vậy, việc lạm dụng hiệu ứng phụ có thể khiến phần mềm tự động mặc định thay đổi trạng thái cho tất cả các hàm nhập vào. Điều này chính là nguyên nhân dẫn đến một số lỗi chương trình không mong muốn.

Side effects là một phần quan trọng, không thể thiếu đối với quá trình phát triển phần mềm, giúp hỗ trợ xử lý các hàm không đồng bộ. Do đó, là một lập trình viên, bạn cần phải hiểu rõ side effects là gì và vận dụng những hiệu ứng phụ này một cách hiệu quả nhất.

Nếu bạn quan tâm, hãy xem các vị trí đang tuyển dụng của Got It tại: bit.ly/gotit-hanoi và đọc thêm về quy trình tuyển dụng tại đây.

https://d1iv5z3ivlqga1.cloudfront.net/wp-content/uploads/2021/04/29235048/1_QAG9RXQyyMAY7i9OYo84FA.png
Got It Vietnam
February 03, 2021
Share this post to:
Tags:
0 Comments
Inline Feedbacks
View all comments
Các bài viết liên quan
Phân biệt trí tuệ nhân tạo và học máy

Phân biệt trí tuệ nhân tạo và học máy

Trong thời đại số hóa hiện nay, trí tuệ nhân tạo (AI) và học máy (Machine Learning) đang trở thành hai thuật ngữ phổ biến trong lĩnh vực công nghệ. Mặc dù có sự tương đồng, nhưng chúng không phải là hai khái niệm hoàn toàn tương đương. Bài viết này sẽ giúp bạn hiểu […]
Got It ra mắt MathGPT Platform cho các nhà cung cấp dịch vụ giáo dục toán học

Got It ra mắt MathGPT Platform cho các nhà cung cấp dịch vụ giáo dục toán học

Mục lụcGot It ra mắt MathGPT Platform cho các nhà cung cấp dịch vụ giáo dục toán họcMathGPT Platform được xây dựng dành cho nhóm đối tượng nào?Hành trình khai sinh ra MathGPT PlatformMục tiêu phía trước Got It ra mắt MathGPT Platform cho các nhà cung cấp dịch vụ giáo dục toán học Chúng […]
Cơ hội có 1-0-2: Gặp gỡ AI expert hàng đầu thế giới, trở thành world-class engineers!

Cơ hội có 1-0-2: Gặp gỡ AI expert hàng đầu thế giới, trở thành world-class engineers!

Nếu là độc giả thân thiết của Got It, ắt hẳn bạn đã biết đến đợt tuyển dụng lớn nhất năm của chúng mình – Code Your Impact 2023! Dù mới khởi động được 2 tuần nhưng Got It đã nhận được sự quan tâm từ đông đảo các bạn ứng viên cho vị trí […]
Got It @ Sài Gòn: Bạn đã sẵn sàng về chung nhà cùng Got It?

Got It @ Sài Gòn: Bạn đã sẵn sàng về chung nhà cùng Got It?

Hai năm dịch bệnh là hai năm Got It chứng kiến những biến chuyển cực kỳ mạnh mẽ khi team chúng mình chuyển từ làm 100% tại văn phòng sang 100% làm việc tại nhà trong thời gian giãn cách, đồng thời chào đón các Software Engineer gia nhập team từ xa. Đó cũng là […]
Developer là gì? Tất tần tật về developer bạn nên biết

Developer là gì? Tất tần tật về developer bạn nên biết

Sự phát triển chóng mặt của thời đại 4.0 đã tạo ra nhu cầu tuyển dụng vô cùng lớn đối với lĩnh vực IT. Trong đó, Developer là trong những ngành nghề đang trong tình trạng “khát” ứng viên nhất. Vậy, developer là gì? Liệu bạn có phù hợp với công việc này hay không? […]
Visual Studio Code là gì? Lợi thế từ việc sử dụng Visual Studio Code

Visual Studio Code là gì? Lợi thế từ việc sử dụng Visual Studio Code

Visual Studio Code là gì mà khiến cộng đồng IT Việt yêu thích đến vậy? Trình soạn thảo code này sẽ giúp bạn xây dựng ứng dụng web và cloud như thế nào? Hãy cùng Got It tìm hiểu Visual Studio Code ngay hôm nay nhé! Mục lục1. Visual Studio Code là gì?2. Phân biệt […]