티스토리 뷰

BACK-END/SPRING

[SPRING] FRAMEWORK

진심스테이크 2018. 5. 15. 11:36

 

Framework : 다양한 어플리케이션을 제작하기 위해 약속된 프로그래밍 틀

- 어떠한 목적을 달성하기 위해 복잡하게 얽혀 있는 문제를 해결하기 위한 구조이자 약속

- 클래스 + 라이브러리

- 재사용성을 큰 그룹 단위로 묶어줌

- 재사용 가능한 수많은 클래스들과 라이브러리들을 융합한 채로 처음부터 제공

#모듈화를 하는 이유중 하나가 재사용성

 

 

특징

POJO (Plain Old Java Object)

- 기존 라이브러리를 지원하기 용이

- 일반적인 자바 코드를 이용하여 개발 가능

- 객체가 가벼움

- 별도의 프레임워크 없이 JAVA EE를 사용할 떄에 비해 인터페이스를 직접 구현하거나 상속받을 필요가 없음

 

AOP (Aspect Object Programming : 관점 지향 프로그래밍)

- 여러 모듈에서 공통적으로 사용하는 기능을 분리하여 관리

- 스프링에서 지원하는 실행에 조합하는 방식도 지원

- 반복적인 코드를 줄이고, 개발자가 비즈니스 로직에만 집중할 수 있도록 지원

- WAS(Web Application Server)에 종속적이지 않은 개발 환경

 

DI (Dependency Injection : 의존성 주입)

- 객체 간의 의존성을 개발자가 설정하는게 아닌, 스프링 컨테이너가 주입시켜 주는 기능

- 코드 재사용을 높여 소스코드를 다양한 곳에 사용 가능

- 객체를 쉽게 확장하고 재사용 가능

- 모듈간의 결합도를 낮출 수 있음

 

IoC (Inversion of Control : 제어 반전)

- 외부 라이브러리 코드가 개발자의 코드를 호출

- 제어권이 프레임워크에게 있어 필요에 따라 스프링 프레임워크가 사용자의 코드를 호출함

- 객체의 제어권을 스프링에게 넘김

 

생명 주기

- JAVA 객체의 생성, 소멸 직접 관리

- 필요한 객체만 사용

 

다양한 서비스

- 데이터베이스 처리 라이브러리나 유용한 인터페이스 제공

 

 

 

'BACK-END > SPRING' 카테고리의 다른 글

[SPRING] MVC 게시판  (0) 2019.09.25
[SPRING] MYBATIS MYSQL 연동  (0) 2019.09.25
[SPRING] IoC - SPRING CONTAINER  (0) 2019.09.25
[SPRING] AOP - 관점 지향 프로그래밍  (0) 2018.05.17
[SPRING] BASIC THINGS  (0) 2018.05.08
댓글