리액트에서 함수형 컴포넌트라고 부르지 않고 함수 컴포넌트라고 부르는 이유가 무엇인가요? (참고)
원래 리액트 측에서는 함수형 컴포넌트 라는 단어를 사용했습니다. 하지만 이러한 네이밍이 함수형 프로그래밍 과 비슷했고, 충분히 혼란을 야기할 수 있었습니다. 처음 리액트의 함수형 컴포넌트를 배우는 입장에서는 '함수형 컴포넌트를 사용하면 함수형 프로그래밍이 가능해진다'와 같은 혼란을 느낄 수 있었기 때문입니다.
그러나 우리가 리액트에서 사용하는 함수 컴포넌트 는 훅(hook)이 들어가고, 이 훅으로 사이드 이펙트 를 빈번히 일으키기 때문에 함수형 프로그래밍이라고 볼 수 없습니다. 함수형 프로그래밍은 순수 함수를 지향하는데, 사이드 이펙트를 빈번히 일으키는 리액트의 함수 컴포넌트가 함수형 컴포넌트로 보기는 어렵다는 것입니다.
2018년 이후 리액트 측에서도 함수형 컴포넌트 가 아닌 함수 컴포넌트 로 이름을 다시 정했습니다.
참고 - 모던 자바스크립트 웹 소켓
참고 - 웹 소켓에 대해 알아보자 - 이론 편
참고 - React, TypeScript 웹 소켓 실습