
Framework란, 소프트웨어 개발이나 시스템 구축 등에서 반복적으로 사용되는 구조, 규칙, 기능들을 미리 제공하여 개발 생산성을 높이고 일관성을 보장하는 ‘뼈대’ 혹은 기본 틀을 의미합니다.
프레임워크는 개발자가 주요 로직이나 기능에만 집중할 수 있도록, 공통적으로 필요한 부분(예: 라이프사이클 관리, 데이터 처리, 인증 등)을 자동화하고 표준화합니다.
한마디로, "어떻게 작업할지 미리 정해진 틀"이며, 개발자는 이 틀 안에서 필요한 부분을 구현해 넣는 방식입니다.
애플리케이션을 개발할 때 반복적으로 사용되는 기본 구조(예: MVC 패턴, 라우팅, 데이터 바인딩 등)를 제공합니다.
개발자가 공통적으로 사용하는 기능(예: 인증, 데이터베이스 연결, 요청/응답 처리 등)을 내장합니다.
프레임워크가 제공해주는 부분(빌트인 라이브러리, 미들웨어 등)과,
개발자가 자유롭게 구현해야 하는 부분(비즈니스 로직, 커스터마이즈된 UI 등)을 명확히 구분합니다.
확장 포인트(플러그인 시스템, 커스텀 컴포넌트 등)와
프레임워크 내의 표준화된 구조를 변경하지 않으면서도 기능 추가/확장이 가능한 범위를 정의합니다.
지원하는 언어: Java
지원 영역: DI(의존성 주입), AOP(관점지향), 트랜잭션 관리, 웹 애플리케이션(MVC), 데이터 접근(JPA, JDBC 등)
확장: 다양한 스타터와 모듈로 손쉽게 기능 추가
개발자가 구현: 도메인 로직, 커스텀 Validation, 비즈니스 처리
Framework란
- 일정한 구조와 원칙에 따라 개발을 돕는 뼈대(틀)을 제공하고,
- 어디까지 자동화/지원하며,
- 어디부터 개발자가 직접 책임지고,
- 확장과 커스터마이즈가 어디까지 가능한지를 명확히 구분짓는 시스템입니다.