티스토리 뷰

TIL/Spring

Spring 핵심개념 알아보기

YEIKKI 2023. 4. 27. 02:23

자바(JAVA)기반의 오픈 소스 프레임워크로서, 개발자들이 애플리케이션을 빠르고 쉽게 개발할수 있도록 도와준다.

다양한 모듈로 구성되어 있으며, 각 모듈은 특정한 기능을 수행합니다.

 

 

스프링의 핵심 개념

1. Dendency Injection-> 객체 간의 의존관계(객체 간에 서로 참조하는 관계를 말합니다)를 설정하는것으로 객체가 직접 필요로 하는 의존 객체를 생성하는 것이 아니라, 외부에서 의존객체를 주입받아 사용하는 방식

 

 의존 관계를 잘이해하려면 먼저 객체 지향의 핵심 개념 중 하나인 캡슐화를 이해해야 합니다. 캡슐화는 객체 내부의 상태와 행위를 외부로부터 숨기고, 오직 인터페이스를 통해 상호작용할 수 있도록 만드는 것입니다. 이를 통해, 객체 간의 결합도를 낮추고, 코드의 재사용성과 유지보수성을 향상시킬 수 있습니다.

 

2. 제어의 역전(Inversion of Control) : 객체의 생성과 생명주기 관리 등을 스프링 프레임워크가 대신 수행하는것으로 , 개발자는 객체의 생성과 관리에 대한 일부 책임을 스프링에게 위임 할수 있습니다.

 

3.스프링 컨테이너(Spring Container) : 스프링에서 객체를 생성하고 관리하는 컨테이너 입니다. 스프링 컨테이너는 객체 생성 ,초기화, 의존성 주입등을 수행합니다.

 

4.AOP(Aspect Oriented Programming): 관심사(Cross-cutting-Concerns)를 모듈화하여 코드 중복을 줄이고, 유지 보수성을 높이는 기술입니다. 스프링은 AOP를 지원하며, 애플리케이션 로깅, 트랜잭션 처리등의 관심사를 모듈화 할수있습니다.

 

5. 스프링 MVC: 스프링의 웹 개발 기능 중 하나로 , Model-View-Controller 패턴을 기반으로한  웹 애플리케이션 개발을 지원 합니다.

6. 스프링 데이터: 데이터베이스 처리를 위한 다양한 모듈을 제공하여, ORM(Obeject-Relation Mapping) 기술을 지원합니다.


 

'TIL > Spring' 카테고리의 다른 글

HTTP 통신  (0) 2024.01.11
블로그 과정 기록은 git  (0) 2024.01.11
MySQL 연결하기  (0) 2024.01.11
블로그 프로젝트 실습전 세팅하기  (0) 2024.01.09
클라이언트와 서버  (0) 2023.01.11