<기술면접질문>
react 클래스형과 함수형의 차이를 설명해주세요. 어떤 방식을 주로 사용하였고 그 이유가 뭔지 답변해주세요.
클래스형 컴포넌트는 ES6 클래스로 정의되며, 라이프사이클 메서드를 사용합니다. 함수형 컴포넌트는 간단한 함수로 정의되고, Hook을 사용하여 상태를 관리합니다. React 16.8 이후, Hook의 도입으로 함수형 컴포넌트가 주로 사용되게 되었습니다. 함수형 컴포넌트는 간결하고 성능이 약간 더 좋을 수 있습니다. 커뮤니티와 공식 문서는 함수형 컴포넌트와 Hook을 적극 권장하고 있습니다. 클래스형과 함수형의 주요 차이는 상태 관리와 라이프사이클 접근 방식에 있으며, 현대 React 개발에서는 함수형 컴포넌트가 더 선호됩니다.
쓰로틀링과 디바운싱의 개념과 사용하는 이유에 대해서 설명해주세요.
쓰로틀링은 일정 시간 동안 이벤트 핸들러가 한 번만 실행되도록 제한하며, 성능 문제를 예방하는 데 사용됩니다. 디바운싱은 연속된 이벤트 발생 후 일정 시간 대기하고 마지막 이벤트만 처리하여 리소스를 절약합니다. 두 기술은 사용자 인터페이스와 상호작용할 때 특히 유용하며, 빈번한 이벤트 처리의 반응성과 효율성을 높이는 데 중요합니다.