▶ 계획
1. Gradle test 코드 수정
2. 스프링 PSA 추상화 정리
▷ test code
문제 : 게임 카운트 증가 테스트 시 계속 테스트 실패
원인 : 디버깅 해봤더니 계속 default 걸려서 보니까 switch문 break 추가 안함..
> 카운트 값 자체를 비교하는게 아니라 증가 여부만 판단했다.
▷ 스프링 PSA 추상화
> 스프링 내부 구현 클래스들이 추상화 되어 있는 이유?
> PSA와 연관이 있다.
> 서비스를 추상화함으로써 개발자가 실제 구현부를 알지 못하더라도 해당 기능을 사용할 수 있게된다. 즉, 추상화 계층인 인터페이스 API 의 정보를 활용해 해당 서비스의 모든 기능을 이용하면 되는 것이다.
> 추상화 계층을 사용해 어떤 기술을 내부에 숨기고 개발자에게 편의성을 제공하는 것 : 서비스 추상화
> 이로 인해 제공되는 기술을 다른 기술 스택으로 간단히 바꿀 수 있는 확장성을 갖고 있는 것이 곧 PSA
1. Spring Web MVC
> 서블릿을 Low Level 개발을 하지 않고 에너테이션으로(@GetMapping, @PostMapping 등등) 쉽게 서블릿을 개발 가능함 : 서비스의 추상화
2. Spring Transaction
> Low Level 트랜잭션 처리인 setAutoCommit(), commit()... 명시적 호출이 아닌 @Transactional 에너테이션으로 쉽게 처리
> DB Connection 구현체 쉽게 변경 가능 : Jpa, hibernate 등등
반응형
'레거시' 카테고리의 다른 글
2022.04.25의 기록 (0) | 2022.04.25 |
---|---|
2022.04.24의 기록 (0) | 2022.04.24 |
2022.04.22의 기록 (0) | 2022.04.22 |
2022.04.21의 기록 (0) | 2022.04.21 |
2022.04.20 의 기록 (0) | 2022.04.20 |