javaboiii의 Spring

Spring - Spring Framwork 구조

javaboiii 2024. 10. 2. 11:34

Spring

Spring 프레임워크 구조

코드를 gpt로 양산해낼 수 있는 시대에 생각을 할 수 있는지
 = > 개발 양식을 개발자들에게 제시
  = > 개발자들의 역량이 획일화
   = > 일관성 유지 용이
    = > 쉬운 관리
     = > 구현 시간 단축됨
      = > 개발 비용 최소화
       = > 유지보수 용이
        = > 재사용성 증가

 

IoC :   Inversion of Control (제어의 역행)

제어의 정의

제어는 객체를 관리하는 능력

 

전통적인 객체 관리

개발자가 직접 객체를 생성하고 관리

 

IoC의 개념

개발자가 new를 덜 사용하게 되면 더 좋은 개발자

Spring 프레임워크에서는 "컨테이너"가 객체를 관리

 

Web 프로젝트의 변화

기존 Web 프로젝트에서는 직접 new를 하지 않음

그러나 내부적으로 자동으로 객체가 생성됨

 

서블릿 컨테이너

톰캣과 같은 서블릿 컨테이너가 객체를 관리

 

설정 파일

톰캣, 서블릿 컨테이너의 설정 파일: web.xml

과도한 XML 설정을 방지하기 위해 @어노테이션 사용 가능

 

Spring의 POJO 관리

Spring에서는 POJO(Plain Old Java Object)를 관리하는 컨테이너가 존재

설정 파일이 필요함: pom.xml

 

결론

컨테이너와 설정 파일의 관계: .xml(설정파일) = 1 : 1


AOP(Aspect-Oriented Programming) 지원 : 관점 지향 프로그래밍

공통되고 반복되는 관심사(기능 등)를 분리하여 모듈화 함
관심사를 분리하면 개발자는 핵심 로직에만 집중하여 코드를 작성할 수 있으며 유지보수에 유리함
분리한 기능을 관점(Aspect)이라고 함


경량

가벼움
not POJO(서블릿)가 없다는 뜻
POJO로 대부분 구성되어 있음

Spring  프레임워크가 뭔데? 한마디로 정의해봐
"IoC와 AOP를 지원하는 경량의 프레임워크 입니다."

'javaboiii의 Spring' 카테고리의 다른 글

Spring - 의존성 주입  (1) 2024.10.02
Spring - 컨테이너  (0) 2024.10.02
Spring - Spring Framwork 정의  (2) 2024.10.02
Spring - MVC 핸들러맵핑과 싱글톤패턴  (0) 2024.08.21
Spring - 스프링 프레임워크  (0) 2024.08.19