인프런 강의를 통해서 학습한 내용을 단순히 옮겨 적는 게 아니고
생각한 부분을 적어보자
코드는 github 들어가면 그냥 볼 수 있는 부분이니깐
나중에 생각하기 쉽게 당시에 들었던 생각을 적어보고, 중요하다고 생각하는 내용 위주로 작성해 보자
개발환경 준비
gradle, java17
스프링 부트가 아닌 스프링에 대한 강의지만 스프링 각각의 프로젝트 의존성을 넣어서 관리하기는 힘들다.
미리 호환 버전을 패키징 해둔 스프링 부트로 프로젝트 의존성을 사용하자
처음에는 스프링을 사용하지 않고 서비스 요구사항에 맞는 내용을 구현한다.
추후에 스프링을 통해서 해당 코드가 어떻게 변화하는지 잘 관찰해 보자
java17 record 이용 - 생성자, getter, setter 없이 데이터 조작이 가능
다만, 한번 값을 넣으면 변경 불가
@JsonIgnoreProperties(ignoreUnknown = true)
public record ExRateData(String result, Map<String, BigDecimal> rates) {
}
조금씩 요구사항을 구현해 나가면서 각 단계별로 값이 제대로 나오는지 확인하는 과정이 중간에 많았다.
완벽하게 동일하지는 않지만, TDD와 비슷한 방식인 거 같다는 생각이 들었다.
테스트를 생활화하자!