JPA JPA 선호하는 패턴 @Column(nullable = false) vs @NotNull → 둘 다 테이블 생성시 not null 옵션을 추가해준다 @NotNull의 경우 실제 객체에 null 이 들어가는 경우에도 오류를 반환하므로 더 엄격하다 현업에서는 전자를 더 선호하는 듯 했다 JPA entity equals - 참고주소1, 참고주소2 JPA의 즉시 로딩과 지연 로딩(p.296) @ManyToOne, @OneToMany : 즉시 로딩(FetchType.EAGER) @OneToMany, @ManyToMany : 지연 로딩(FetchType.LAZY) → 최대한 모든 연관관계에 지연 로딩을 사용하는 것을 추천!(출처는 영한님 책) JPA의 영속성 전이(p.307) 특정 엔티티를 영속 상태로 만들..
구현이 끝났다고 완전히 끝난 게 아니었다! 다음 미션은 'wordle - 코드 리뷰' 였다. 공정한(?) 사다리 타기를 통해 내가 리뷰를 해드릴 분은 고슴도치파님, 내 코드를 리뷰해주실 분은 10M 님이 선정되었다. 이직에 성공하신 두 분이 마침 내가 리뷰를 해드리고, 받아야 하는 분들이었다. 사실 한 번도 회사를 다니면서 코드 리뷰를 해본 적이 없어서 아는 것도 없는 내가 누군가에게 리뷰를?이라는 생각이 컸었다. 마침 이 시점에 최근 공개된 우아한테크세미나 영상의 주제가 백명석 님의 '지속가능한 SW 개발을 위한 코드리뷰' 여서 시청했는데, 코드 리뷰를 하기 전 마음가짐을 다시 잡을 수 있었다. 리뷰의 방법은 따로 가이드가 없었어서 누군가를 가르치려고 리뷰를 한다기보다는 배우고자 하는 관점에서 접근해보..
1주차 미션이 무사히(?) 끝나고 두근두근 2주차 미션이 화요일에 도착하였다. 2주차 미션 메일에는 1주차 미션에 대한 피드백 영상과 2주차 '레이싱카' 구현 과제에 대한 내용이 있었다. 숫자야구를 하면서 이제 이런 스타일의 구현은 어렵지 않지! 라며 자신감이 생겨 있었는데 막상 과제를 해보니 생각보다 이전과 다른 부분들이 많이 있어 고민의 시간이 길어졌다. 이 타이밍에 유스방도 구현 과제가 같이 주어져서 조금 부담이 있었는데 다행히 유스방 일정이 여유가 생기고 페어이신 David의 배려로 주어진 1주일을 아낌없이 사용하여 레이싱카 구현을 고민할 수 있었다. (다시 한번 감사합니당!) 숫자야구 피드백 영상에서 테스트를 먼저 만들고 -> 실제 구현을 해보라고 했는데 wordle도 그렇고 레이싱카도 막상 해..
신청 폼을 제출 한 이후, 4월 12일 화요일에 1주차 미션 메일이 도착했다. 넥스트스텝을 아는 사람이라면 다들 익숙할 '숫자야구게임' 구현이 1주차 미션이었다. 요구사항은 기능 요구사항, 프로그래밍 요구사항, 과제 진행 요구사항 세 가지로 분류되어 있고, 이를 만족하는 코드를 작성하는 것이 미션이었다. 또한 기능을 구현하기 전에 먼저 기능 목록을 만들고, 기능 단위로 commit 하는 방식으로 진행하라고 하였다. 기능 요구사항이나, 과제 진행 요구사항은 경력 개발자라면 크게 어려울 내용은 아니었다. 하지만 프로그래밍 요구사항은 그동안의 코딩 스타일을 바꿔야 할 만큼, 새로운 내용들이 많았다. 프로그래밍 요구사항은 다음과 같았다. 자바 코드 컨벤션을 지키면서 프로그래밍한다 indent(인덴트, 들여쓰기)..