🌐
웹개발
프레임워크
Framework
애플리케이션 개발의 뼈대. React, Django, Spring 등. 라이브러리와 달리 제어 흐름을 결정.
Framework
애플리케이션 개발의 뼈대. React, Django, Spring 등. 라이브러리와 달리 제어 흐름을 결정.
프레임워크(Framework)는 애플리케이션 개발의 뼈대를 제공하는 소프트웨어입니다. 라이브러리와 달리 프레임워크가 코드 실행 흐름을 제어합니다(IoC: 제어의 역전).
"프레임워크를 호출하는 것이 아니라, 프레임워크가 내 코드를 호출한다"는 것이 라이브러리와의 핵심 차이입니다.
// 라이브러리 (jQuery) - 내가 호출
$('#btn').click(() => doSomething());
// 프레임워크 (React) - 프레임워크가 내 컴포넌트 호출
function MyComponent() {
return <button onClick={doSomething}>Click</button>
}
// React가 MyComponent를 언제 렌더링할지 결정
신입
"React가 라이브러리인가요 프레임워크인가요?"
시니어
"공식적으론 라이브러리야. 근데 Next.js 쓰면 프레임워크가 되지. 라우팅, 빌드, 서버 렌더링까지 프레임워크가 정해주거든."