본문 바로가기
Spring/Spring

day61) 스프링 프레임워크란?

by code_learner 2022. 3. 29.

[스프링 프레임워크란?]

1. 프레임워크

일정한 형태의 틀, 부품을 가지고 다양한 형태의 결과물을 만드는 것
-> 관리가 용이
-> 개발시간 단축
-> 개발자들의 역량이 획일화
-> 재사용성 증가

2. 스프링 프레임워크

"IOC와 AOP를 지원하는 경량(POJO)의 프레임워크"

: 재사용성이 향상된 어플리케이션을 개발할 수 있음

 ->JSP 팀프로젝트보다 빠르고 정확한 프로젝트를 생산가능

 


[IOC]

제어의 역행(Inversion of Control): 컨테이너가 객체를 대신 관리

Java 객체 지향 언어에서는 객체가 있어야 메서드를 수행 할 수 있었다.

톰캣은 서블릿 컨테이너를 실행시키며 객체를 new(생성)해 주는 존재이다.

스프링에서는 이러한 컨테이너가 POJO형태이다.(경량)

★ 스프링 컨테이너가 객체를 생성 및 관리하기 때문에(대신 new해주기 때문에) 결합도가 낮아짐 !!★

 


 

[AOP]

 

관점지향 프로그래밍 (때가 되면 알아서 동작할 수 있게 만든다)
기능을 하나의 클래스에 정의, 해당클래스를 불러와서 기능을 수행하게 하는 기법이다.

 

-객체지향 프로그래밍(때가 되면 코드를 작성 해야한다.)

dao.selectOne()
    1. conn 확보
    2. pstmt 준비
    3. 기능 -a
    4. conn 해제
dao.insert()
    1. conn 확보
    2. pstmt 준비
    3. 기능 -b
    4. conn해제

<->

-관점지향 프로그래밍

CRUD, 비즈니스메서드(핵심관심)  <->공통관심 공통 로직, 횡단관심(ex: JDBCUtil클래스)

 

★ 관점지향 프로그래밍은 로직들을 전부 분리해서 저장할 수 있게 해주기 때문에, 응집도가 높아짐!!★

댓글