본문 바로가기
IT/Java

PSA 란?

by 성준하이 2022. 9. 28.
반응형

자바 spring에서는 몇 가지 특성이 있다.

이전에 포스팅에서 다뤄본적이 있는데 한 가지가 빠져 있어서 그 부분에 대해서 설명을 해보려고 한다.

(아래 참고 포스팅 참조)

 

주제는 PSA 이다.

스프링은 아래 사진이 유명한데 삼각형으로 만들어진 이 그림을 본 적이 있는 분들이 있을 것이다.

AOP, DI/IoC 와 어깨를 나란히 하고 있는 이 PSA란 무엇일까?

 

PSA란 환경의 변화와 관계없이 일관된 방식의 기술로의 접근 환경을 제공하는 추상화 구조를 말한다.

이는 POJO 원칙을 철저히 따른 Spring의 기능으로 Spring에서 동작할 수 있는Library들은

POJO원칙을 지키게끔 PSA형태의 추상화가 되어있음을 의미한다.

"잘 만든 인터페이스 하나가 열 클래스 부럽지 않다"

PSA = 잘 만든 인터페이스

PSA가 적용된 코드라면 나의 코드가 바뀌지 않고, 다른 기술로 간편하게 바꿀 수 있도록 확장성이 좋고,

기술에 특화되어 있지 않는 코드를 의미한다.

Spring은 Spring Web MVC, Spring Transaction, Spring Cache 등의 다양한 PSA를 제공한다.

또한 annotation 의 기술이 입혀짐으로써 더욱 인터페이스 활용도가 높아서 스프링의 사용이 편해짐이 PSA 가 있어야 하는 이유이다.


참고 포스팅

https://thenicesj.tistory.com/144

 

Spring 에서 IOC, AOP, DI 에 대하여

이번 포스팅에서는 SPRING의 핵심요소인 IOC, AOP, DI에 대해서 다뤄볼 것이다. 다른 특징들도 많지만 이 세가지는 스프링의 장점으로 많이 알려져있다. 하나씩 다뤄보도록 해보자. IOC(Inversion of Contro

thenicesj.tistory.com

 

반응형

'IT > Java' 카테고리의 다른 글

Quartz 스케줄러 part.2  (36) 2022.10.03
Quartz 스케줄러 part.1  (34) 2022.10.02
Assertions.assertThat 비교 하기  (39) 2022.09.24
enum 이란  (36) 2022.09.17
Spring REST Docs  (33) 2022.09.09

댓글