Side-Effect

shinetiger·2022년 8월 9일
0

이론정리

목록 보기
5/13

Side-Effect란?

함수가 실행되면서 함수 외부에 존재하는 값이나 상태를 변경시키는 등의 행위.
Side-Effect는 절차형 프로그래밍에서 흔히 존재하는 작업이다.

Side-Effect가 사용되는 경우

  • 함수에서 전역변수의 값을 변경 시킬 때
  • 함수 외부에 존재하는 버튼의 텍스트를 변경시킬 때
  • 쿠키 저장, 네트워크를 통해 데이터 송신 등

함수가 매개변수를 받아 결과를 생성하는 것과 무관한 외부의 상태를 변경하거나 외부와 상호작용할 때 쓰인다.

단점

  • 프로그램을 읽기 어렵게 한다
  • 실행상태를 예측하기 어렵게 한다
  • 개발비용을 증가 시킨다

그래서 요즘 선언형 프로그래밍 에서는 Side-Effect를 최소화하는 방향으로 가고 있다.

함수는 전달받은 배개변수를 통해 연산을 수행하고 결과를 반환해야 한다.
그래야 결과가 항상 일관되고 예측할 수 있다.
이것이 곧 프로그램이 쉽고 단순해질 수 있는 방법이며,
유지보수의 난이도와 비례한다.

React에서

useEffect 를 통해서 Side-Effect 작업을 지원한다.

React에서는 컴포넌트를 다시 렌더링 하는 시점을 통제할 수 있다.

참고링크

https://points.tistory.com/86

profile
의문을 질문으로 바꾸는 개발자

0개의 댓글