1. 질문: React는 무엇이며, 이를 사용하는 이유는 무엇인가요?

    답변: React는 Facebook에서 만든 사용자 인터페이스를 만들기 위한 JavaScript 라이브러리입니다. React를 사용하면 UI를 개별적이고 재사용 가능한 컴포넌트로 분할하여 구축할 수 있습니다. 이렇게 하면 코드의 유지 보수가 쉬워지고, 테스트를 용이하게 합니다. 또한, Virtual DOM을 통해 빠른 렌더링을 가능하게 합니다.

  2. 질문: React에서 컴포넌트란 무엇인가요?

    답변: 컴포넌트는 React의 기본 구성 단위로, UI의 특정 부분을 나타냅니다. 컴포넌트는 독립적이며 재사용 가능합니다. 컴포넌트를 이용하여 복잡한 UI도 쉽게 구성할 수 있습니다.

  3. 질문: React의 Virtual DOM이란 무엇인가요?

    답변: Virtual DOM은 실제 DOM의 가벼운 복사본으로서, React의 핵심 개념 중 하나입니다. 데이터가 변경되면 React는 먼저 Virtual DOM에 변경사항을 반영하고, 이후 실제 DOM에 필요한 변경사항만 업데이트합니다. 이 과정을 통해 불필요한 렌더링을 최소화하고 성능을 향상시킵니다.

  4. 질문: React의 Props와 State에 대해 설명해주세요.

    답변: Props와 State는 React 컴포넌트에서 사용되는 데이터를 관리하는 방법입니다. Props는 부모 컴포넌트에서 자식 컴포넌트로 데이터를 전달하는 데 사용됩니다. Props는 읽기 전용이므로, 컴포넌트 내에서 변경할 수 없습니다. 반면에 State는 컴포넌트의 내부 상태를 관리하며, 사용자의 상호작용이나 시간 경과 등으로 변경될 수 있습니다. State의 변경은 해당 컴포넌트의 재렌더링을 유발합니다.

  5. 질문: React Hooks에 대해 설명해주세요.

    답변: React Hooks는 React 16.8 버전부터 도입된 기능으로, 함수형 컴포넌트에서 State와 생명주기 메소드를 사용할 수 있게 해줍니다. 이전에는 이런 기능들을 사용하려면 클래스형 컴포넌트를 사용해야 했지만, Hooks의 도입으로 함수형 컴포넌트에서도 사용할 수 있게 되었습니다. 대표적인 Hooks에는 useState, useEffect 등이 있습니다.

  6. 질문: JSX란 무엇인가요?

    답변: SX는 JavaScript XML의 약자로, React에서 사용하는 강력한 JavaScript 구문 확장입니다. 이는 HTML과 매우 유사한 구문을 가지고 있어, 웹 개발자들에게 친숙하게 느껴집니다. JSX를 통해 JavaScript 내에서 HTML 태그를 선언할 수 있습니다.

    실행시에는JavaScript로 변환되어 실행되며, 사용자 인터페이스를 구성하는 요소와 컴포넌트를 더 쉽게 이해하고 작성할 수 있게 해줍니다.