반응형
자바 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
반응형
'IT > Java' 카테고리의 다른 글
Quartz 스케줄러 part.2 (36) | 2022.10.03 |
---|---|
Quartz 스케줄러 part.1 (34) | 2022.10.02 |
Assertions.assertThat 비교 하기 (40) | 2022.09.24 |
enum 이란 (36) | 2022.09.17 |
Spring REST Docs (33) | 2022.09.09 |
댓글