스프링 프레임 워크를 말하기 앞서
프레임 워크(Framework)
프레임워크는 프로그램의 기초를 구축할 수 있는 코드의 집합
개발자라는 직업은 각 개발자의 능력에 따라 결과물의 완성도가 천차만별이기 때문에,
이를 극복하고자 하여 나온 결과물이 프레임워크다.
프레임워크를 사용한다면 프로그램의 기본 뼈대와 틀을 정하고,
모든 팀 구성원들이 이 틀과 뼈대에 맞게 살을 붙이기 위해 코드를 작성
스프링 프레임워크(Spring Framework)
하나로 딱 정의하기는 힘들지만 가장 잘 정의된 표현은
자바 엔터프라이즈 개발을 편하게 해주는 오픈 소스 경량급 애플리케이션 프레임워크
라고 생각한다.
- Java를 기반으로 한 프레임워크.
- 복잡하지 않고 경량화 된 애플리케이션 프레임워크
- 한국의 공공기관 웹 서비스 개발 시, 사용을 권장하는 전자정부 표준 프레임워크.
- 기본 뼈대를 흔들지 않고 다른 프레임워크를 혼용해서 사용할 수 있다.
특징
POJO(Plain Old Java Object) 기반의 구성
스프링은 내부적으로 별도의 API를 사용하지 않고, 일반적인 Java 코드를 이용하여 객체를 구성하는 방식 그대로 사용하고 있습니다. 이것은 코드를 개발할 때, 개발자가 특정한 라이브러리나 컨테이너의 기술에 종속적이지 않다 라는것을 의미합니다.
트랜잭션의 지원
DB 트랜잭션(Transaction)
트랜잭션(Transaction) 하나의 처리를 여러 단계로 다루는 기능을 트랜잭션(Transaction)이라 한다. 하나의 처리를 Commit이라는 명령어를 수행하기전 마지막으로 한번 더 확인할 수 있는 기회를 줌으로
jkadv.tistory.com
DI(Dependency Injection, 의존성 주입)
[Spring] 의존관계 주입(Dependency Injection), 의존성 주입, DI
DI를 알기 전 의존관계에 부터 말하자면 의존관계 의존 대상 B가 변하면, 그것이 A에 영향을 미칠 때 A는 B와 의존관계라 한다. 쉽게 말해 B가 변경되었을 때 그 영향이 A에 미치는 관계 피자 가게
jkadv.tistory.com
AOP(Aspect Oriented Programming, 관점 지향 프로그래밍)
관점 지향 프로그래밍 (AOP, Aspect oriented Programming)
관점 지향 프로그래밍 (AOP, Aspect oriented Programming) 관점 지향 프로그래밍 언어로 객체 지향 프로그래밍 뒤를 이은 하나의 프로그래밍 언어 고주 문제를 해결하기 위한 핵심 관심 사항과 전체에 적
jkadv.tistory.com
장점
- 프레임워크이기 때문에, 개발자의 수준과 실력에 상관없이 일정 수준의 품질을 기대할 수 있습니다.
- 담당자 혹은 개발자가 도중에 바뀌더라도, 유지보수에 관한 리스크를 줄일 수 있습니다.
단점
- 많은 기능을 제공하고 탑재하고 있으므로, 그만큼 무겁다.
- 마찬가지로, 기능을 익히기 위해 많은 노력과 시간이 필요
'Java > Spring' 카테고리의 다른 글
[Spring]@Validation @valid 어노테이션 (1) | 2022.12.08 |
---|---|
[Java/Spring] 스프링 컨테이너 (0) | 2022.12.08 |
[Spring] 제어의 역전 IoC(Inversion of Control)와 bean (0) | 2022.12.04 |
[Spring] 의존관계 주입(Dependency Injection), 의존성 주입, DI (0) | 2022.12.04 |
[Backend] API 패턴 - 레이어드 아키텍처 패턴 (1) | 2022.12.01 |
댓글