리액트를 프레임워크라고 알고있는 분들이 많지만 리액트 홈페이지에서 프레임워크가 아니라 라이브러리로 분류가 되어 있다.
프레임워크는 단지 미리 만들어둔 반제품이나, 확장에서 사용할 수 있도록 준비된 추상 라이브러리의 집합이 아니다. 프레임워크가 어떤 것인지 이해하려면 프레임워크와 라이브러리가 어떻게 다른지 알아야한다.
라이브러리를 사용하는 애플리케이션 코드는 애플리케이션 흐름을 직접 제어한다. 단지 동작하는 중에 필요한 기능이 있을 때 능동적으로 라이브러리를 사용할 뿐이다.
반면에 프레임워크는 거꾸로 애플리케이션 코드가 프레임워크에 의해 사용된다.
프레임워크에는 분명한 <제어의 역전> 이 적용되어야 한다.
애플리케이션 코드는 프레임워크가 짜 놓은 틀에서 수동적으로 동작해야 한다.