Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- 안드로이드
- 국가공인sql개발자
- Framework추천
- 로딩다이얼로그
- java
- 로고추출
- Android
- 실기합격후기
- 시나공IT
- 정처기3회실기
- db
- 로고투명
- db최적화
- 2020정보처리기사3회
- 2020정처기실기
- sql최적화
- 로고흰색배경
- myBatis
- 개발자
- 2020정처기3회
- 오라클
- oracle
- 웹앱개발
- 텍스트뷰안보임
- 7일전사
- sqlmapping
- DB자격증
- spring
- 어플로딩
- SQL
Archives
- Today
- Total
Everything counts - 라키의 IT 블로그
[Spring] Spring이란? 그리고 Spring특징 본문
SpringFramework
Framework란?
틀, 뼈대이며 프로젝트의 토대, 기반을 제공한다
다양한 컴포넌트와 개발 패턴을 제공한다
반완전 어플리케이션.
전체 어플리케이션의 구조를 결정하는 아키텍처에 해당하는 골격 코드를 프레임워크가 제공한다.
프로그램의 전체적인 구조와 흐름을 확정지으며, 어플리케이션 개발에 필요한 클래스와 인터페이스의 집합
Framework의 장점
- 빠른 구현시간
- 쉬운 관리
- 개발자의 역량 획일화
- 검증된 아키텍처의 재사용, 일관성 유지
Spring이란?
앤터프라이즈 어플리케이션을 개발하기에 적합한 프레임워크. 객체관리를 해주는 빈 컨테이너 프레임워크
스프링프레임워크는 많은 디자인패턴을 적용시켜 배포되므로 프레임워크를 사용하는 자체가 디자인패턴을 사용하는것.
특징
- 경량
일반적인 J2EE 등 다른 프레임워크와 달리 객체간의 관계를 구성할 때 별도의 API를 사용하지 않고 기존에 존재하는 라이브러리 등을 사용하기 때문에 객체가 가볍다
IoC의 제어역행이란 객체의 생성에서부터 생명주기의 관리까지 모든 객체에 대한 제어권이 바뀐다는 것을 의미.
Servlet, EJB등을 사용하는 경우 Container에 제어권이 넘어가 제어를 전담한다.- 의존성 관리(DI: Dependency Injection)
- 의존성 : 하나의 객체가 다른 객체 없이 제대로된 역할을 할 수 없다는 의미
- 각각의 계층이나 서비스 간에 의존성이 존재할 경우 프레임워크가 자동으로 관리한다
- 관점 지향 프로그래밍(AOP : Aspect-Oriented Programming)
- 공통모듈의 반복적인 코드를 줄이고, 핵심 비즈니스 로직에만 집중할 수 있는 방법을 제공한다.
- 트랜잭션이나 로깅, 보안과 같이 여러 모듈에서 공통적으로 사용하는 기능의 경우 해당 기능을 분리하여 관리할 수 있다.
- 컨테이너
- 특정 객체의 생성과 관리를 담당하며 객체 운용에 필요한 기능을 제공
- 일반적으로 서버 안에 포함되어 배포 및 구동된다.
- 대표적인 컨테이너로는 Servlet 객체를 생성하고 관리하는 Servlet컨테이너와 EJB객체를 관리하는 EJB 컨테이너가 있다.
- Servlet 컨테이너는 톰캣버서버에도 포함되어 있다.
- 애플리케이션 운용에 필요한 객체를 생성하고 객체간의 의존관계를 관리한다는 점에서 스프링도 일종의 컨테이너