728x90
문제상황 Java/Spring을 Kotlin/Spring으로 마이그레이션 하는 과정에서 Kotlin의 Lombok 사용에 어려움을 겪었다.그리고 그 이유 Lombok이 Javac의 Annotation Processing 과정에서 처리되는데, Javac보다 Kotlinc가 더 먼저 작동하여 Javac에서 Annotation Processing 과정을 통해 생성되는 코드를 Kotlin 코드에서는 알 수가 없기 때문임을 알게 되었다. 이 과정에서 Javac의 Annotation Processing을 포함한 전반적인 과정을 흝어보고 싶어 학습하여 기록해 두게 되었다. javac의 동작 과정 javac의 동작과정에 대해 자세히 파헤쳐보자. javac는 대략 아래 7가지 단계로 컴파일을 수행한다. 1. Parsi..
문제 상황 정의 생산성 저하 우리 팀에서는 땅콩 개발 초기에, 테스트 코드를 작성할 때 위와 같은 init-test.sql 파일을 사용했었다. 초반에는 위와 같이 사용함으로 인해 테스트 코드 작성 시에 굉장히 길어질 수 있는 데이터 초기화 로직을 제거할 수 있었다.미리 init-sql에 정의되어 있는 값만 가져다가 사용하면 되어서 편리하다고도 생각했다. 하지만 위 방식에서는 문제점이 있었다. 데이터가 얼마 없을 때는 편리할 줄 알았으나테스트 코드에서 사용할 데이터를 참조할 때 매번 init-test.sql 파일에 접근해서 사용할 데이터의 ID값을 확인해야하는 것이 굉장히 불편했다. 이로 인해 테스트 코드 작성의 생산성이 저하 되었다. 가독성 저하 생산성 저하로 인해서 잘 사용하지 않게 되자, 결국 테..
어느덧 우아한테크코스의 레벨 3까지 끝나게 되었다.프로젝트 팀원들과의 너무나 즐겁고 소중한 시간들이었고, 지금까지의 개발 인생에 있어서 가장 유의미한 협업의 한 사이클을 경험한 나날들이었기에 회고를 통해 글로 기록해두고자 한다. 프로젝트와 함께 시작된 협업우아한테크코스 레벨 3 시작과 함께 함께 레벨 1,2를 거치며 학습한 내용을 바탕으로 프로젝트를 시작하게 되었다.레벨 1을 통해 단련한 자바와 레벨 2를 통해 단련한 스프링을 기반으로 프로젝트의 백엔드를 개발하게 되었다. 팀원들과 첫 만남지금은 누구보다도 터놓고 지내는 팀원들이지만, 그래도 첫 만남은 조금은 어색했던 것 같다.백엔드 팀원은 3명 중 2명이 레벨 2에서 같은 조원이라 굉장히 가까웠지만, 프론트엔드 팀원들은 완전히 처음 보거나 한 번 ..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.