React는 라이브러리다 라는 주제로 공부를 하면 제어 흐름의 주체를 기준으로 나눈다.
프레임워크: 다른 사람의 틀 안에서 작업을 함
라이브러리: 다른 사람의 작업을 내 틀안에 호출해 사용
React는 다양한 API와 라이프사이클 제어 흐름을 제공하지만 수행의 주체는 개발자이기 때문에 Library다 라는게 결론이다.
하지만 Vue는 어떻게 다르기에 프레임워크인가에 대해서는 알지 못한다.
먼저 vue, react 둘다 컴포넌트 기반으로 개발하도록 되어있다.
다만 프레임워크는 코드를 프레임에 맞춰서 개발한다는 개념으로 다음과 같은 예를 들 수 있다.
만약 화면에서 조건에 따라서 특정 요소를 보여줄지 결정할 때, React는 다양한 방법을 사용 가능하다.
// 1. && 연산자 방식
<div>
{isVisible && <div> 보임 </div>}
</div>
// 2. 삼항연산자 방식
<div>
{isVisible ? <div> 보임 </div> : null }
</div>
// 단순 if문을 활용 가능
vue에서는 v-if로 정해진 구현 방법을 따라야한다.
// vue에서 정해진 방식
<div>
<div v-if="isVisible">보임</div>
</div>
React는 라이브러리이기 때문에 필요시 호출해 사용하는 등 부분적으로 사용이 가능하다.
Vue는 프레임워크이기 때문에 부분적 사용이 불가능하고, 프레임워크 내부에서 정해진 문법에 따라 작성해야지 동작한다.