PSA(Portable Service Abstraction)란?

환경의 변화와 관계없이 일관된 방식의 기술로의 접근 환경을 제공하는 추상화 구조(하나의 추상화로 여러 서비스를 묶어둔 것)
특정 클래스가 추상화된 상위 클래스를 일관되게 바라보며 하위 클래스의 기능을 사용하는 것이 PSA의 기본 개념
PSA가 적용된 코드는 개발자의 기존에 작성된 코드를 수정하지 않으면서 확장할 수 있으며, 어느 특정 기술에 특화되어 있지 않음 -> 확장성 높음
왜 사용하나요?
어떤 서비스를 이용하기 위한 접근 방식을 일관된 방식으로 유지하여
애플리케이션에서 사용하는 기술이 변경되더라도 최소한의 변경만으로 변경된 요구 사항을 반영하기 위해 사용
=> PSA를 통해서 애플리케이션의 요구 사항 변경에 유연하게 대처 가능
Spring은 상황에 따라 기술이 바뀌더라도 변경된 기술에 일관된 방식으로 접근할 수 있는 PSA를 지원
종류 : Spring Web MVC, Spring Transaction, Spring Cache, Spring Data, 메일 서비스 등이 있음
'CS' 카테고리의 다른 글
[CS] Spring Framework (1) | 2024.05.01 |
---|---|
[CS] Spring 빈 스코프(Bean Scope) (0) | 2024.05.01 |
[CS] Spring Interceptor (0) | 2024.04.30 |
[CS] Spring Filter (0) | 2024.04.30 |
[CS] Spring DI란? (0) | 2024.04.30 |
PSA(Portable Service Abstraction)란?

환경의 변화와 관계없이 일관된 방식의 기술로의 접근 환경을 제공하는 추상화 구조(하나의 추상화로 여러 서비스를 묶어둔 것)
특정 클래스가 추상화된 상위 클래스를 일관되게 바라보며 하위 클래스의 기능을 사용하는 것이 PSA의 기본 개념
PSA가 적용된 코드는 개발자의 기존에 작성된 코드를 수정하지 않으면서 확장할 수 있으며, 어느 특정 기술에 특화되어 있지 않음 -> 확장성 높음
왜 사용하나요?
어떤 서비스를 이용하기 위한 접근 방식을 일관된 방식으로 유지하여
애플리케이션에서 사용하는 기술이 변경되더라도 최소한의 변경만으로 변경된 요구 사항을 반영하기 위해 사용
=> PSA를 통해서 애플리케이션의 요구 사항 변경에 유연하게 대처 가능
Spring은 상황에 따라 기술이 바뀌더라도 변경된 기술에 일관된 방식으로 접근할 수 있는 PSA를 지원
종류 : Spring Web MVC, Spring Transaction, Spring Cache, Spring Data, 메일 서비스 등이 있음
'CS' 카테고리의 다른 글
[CS] Spring Framework (1) | 2024.05.01 |
---|---|
[CS] Spring 빈 스코프(Bean Scope) (0) | 2024.05.01 |
[CS] Spring Interceptor (0) | 2024.04.30 |
[CS] Spring Filter (0) | 2024.04.30 |
[CS] Spring DI란? (0) | 2024.04.30 |