🇶 프레임워크와 라이브러리의 차이점을 제어 흐름의 주체와 사용 방식을 중심으로 설명하고, Spring Framework와 일반 Java 라이브러리를 예시로 들어 설명하세요.
프레임워크는 제어 흐름의 주체가 프레임워크인 반면 라이브러리는 제어의 주체가 개발자이다. 스프링은 IoC 디자인 원칙을 따라, 제어는 스프링 프레임워크가 하는 반면, 다른 일반 java 라이브러리는 개발자가 제어 흐름을 주도하고 있다.
- 프레임워크(Framework)란?
- 개발자가 소프트웨어를 개발함에 있어 코드를 구현하는 개발 시간을 줄이고, 코드의 재사용성을 증가 시킬 목적으로 일련의 클래스 묶음이나 **뼈대, 틀**을 제공하는 라이브러리를 구현해 놓은 것이다.
- Framework의 특징
- 개발자가 따라야 하는 가이드를 제공한다.
- 개발할 수 있는 범위가 정해져 있다.
- 개발자를 위한 다양한 도구, 플러그인을 지원한다.
- Framework의 장점
- 개발 시간을 줄일 수 있다.
- 정형화되어 있어 일정 수준 이상의 품질을 기대할 수 있다.
- 유지 보수가 쉽다.
- Framework의 단점
- 지나치게 의존하면 개발자의 능력이 저하되어 직접 개발하는 것이 어려워질 수 있다.
- Framework 사용법 습득에 시간이 오래 소요될 수 있다. → 러닝 커브
'코딩 부트캠프' 카테고리의 다른 글
| 위클리 페이퍼 - Spring에서 @Controller와 @RestController를 따로 쓰는 이유 (0) | 2025.05.15 |
|---|---|
| 위클리 페이퍼 - Spring에서 AOP를 쓰는 이유 + 실무 예시 (0) | 2025.05.15 |
| 위클리 페이퍼 - Spring Boot의 다양한 Bean 등록 방법들 + 장단점 비교 (1) | 2025.05.06 |
| 위클리 페이퍼 - web server 와 WAS의 차이점 + Spring Boot의 내장 톰캣은 어디에 해당될까? (0) | 2025.05.06 |
| 위클리페이퍼 4 - Spring Framework가 왜 필요할까? (0) | 2025.04.26 |
| 위클리페이퍼 3 - O(n)과 O(log n)의 성능 차이 (0) | 2025.04.20 |
| 위클리페이퍼 3 - HashSet은 어떻게 효과적인 중복 체크가 가능할까? (0) | 2025.04.20 |
| 위클리페이퍼 2 - 단일 책임 원칙(SRP), 개방-폐쇄 원칙(OCP) (0) | 2025.04.13 |