본문 바로가기
레거시

2022.04.23 의 기록

by GroovyArea 2022. 4. 23.

▶ 계획

1. Gradle test 코드 수정

2. 스프링 PSA 추상화 정리

 

▷ test code

문제 : 게임 카운트 증가 테스트 시 계속 테스트 실패 

원인 : 디버깅 해봤더니 계속 default 걸려서 보니까 switch문 break 추가 안함..

계속 default 걸리길래 1시간 삽질했다... 하
카운트 관련 테스트 추가

> 카운트 값 자체를 비교하는게 아니라 증가 여부만 판단했다.

 

▷ 스프링 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