본문 바로가기

분류 전체보기44

테스트를 작성하는 방법 이 글은 .NET Core 및.NET 표준을 사용하는 단위 테스트 모범 사례라는 글에 영감을 받았습니다. 글에서 제시하는 맥락에 어느정도 동의하며 이 중 자바 관점으로의 전환이 필요한 내용과 자바 개발자 사이에서 지속적으로 발견되는 문제에 대한 경험을 종합하여 작성된 글입니다. 2021.6.15 - "9. 제어 가능한 테스트" 주의사항 보완 - "4. 테스트 구성요소의 위치" 예제 버그 수정 - "4. 테스트 구성요소의 위치" 에서 "5. 테스트 환경" 내용 분리 작성 2021.6.16 - "4. 테스트 구성요소의 위치" '도우미 메서드' 에서 "메서드 추출" 로 용어 변경 2021.6.20 - "4. 테스트 구성요소의 위치" "xunitpatterns" 에서 소개하는 Implicit Setup 의 단점.. 2021. 6. 14.
[2020-11-11] 5년차 개발자 나에게 5년차라는 개발 연차는 조금 특별하다. 첫 회사에서 내가 속한 조직에는 시니어 개발자가 없었다. 내가 입사했을 때 1년 정도 차이가 나는 선배개발자가 한분 있었고, 입사한 후 6개월 텀으로 1~2명 정도의 신입 개발자들만 채워졌다. 당시에 동료들과 나는 5년차 개발자에 관해 이야기를 많이 했다. 회사에 5년차 정도의 개발자 한분만 오셨으면 좋겠다고 매일 이야기했다. 당시에 나는 5년차 개발자는 엄청난 내공을 가지고 있는 환상 속의 시니어 개발자라고 생각했다. 2년차로 막 들어섰을 무렵 합류하신 팀장님과 면담에서 내 목표를 물은 적이 있다. 나는 그때 최대한 빠르게 시니어 개발자가 되는 것이라고 답했다. 굉장히 멋쩍게 웃으셨는데 이제는 그 웃음의 의미를 알고 있다. 내가 생각하는 시니어 개발자의 방.. 2020. 11. 11.
[2020-02-19] 배달의민족 최전방 시스템! '가게노출 시스템'을 소개합니다. 2020년 2월 19일 우아한형제들 기술블로그에 작성한 글 입니다. (woowabros.github.io/experience/2020/02/19/introduce-shop-display.html) 안녕하세요 우아한형제들 프론트검색서비스팀 권용근입니다. 저는 "먼데이 프로젝트" 라는 2019년 대형 프로젝트에서 요란하게 탄생하였고, 탄생한 순간부터 지금까지 배달의민족 최전방에서 활약 중인 2019년 4월 1일생 가게노출 시스템 을 소개하려고 합니다. 가게노출 시스템이란? 가게노출 시스템 은 배달의민족 최전방에서 사용자에게 가게를 노출하는 시스템입니다. 쉽고 단순하다고 생각할 수 있지만, 사실 이 시스템은 매우 복잡하고 어지러운 시스템입니다. 단순히 캐시를 서빙하는 것이 아닌, 십여개의 외부 시스템과 수십개.. 2020. 11. 11.
[2019-07-01] 멀티모듈 설계 이야기 with Spring, Gradle 멀티 모듈 프로젝트란? 멀티 모듈 프로젝트를 처음 알게된 건 2017년 초였습니다. 당시에 저는 단일 프로젝트를 사용하고 있었습니다. 예를 들어 제가 회원 시스템을 개발 한다고 하면 member internal api member external api member batch 와 같이 서로 독립된 프로젝트 단위로 가지고 있었습니다. 이런 구조를 가지고 있을 때 가장 큰 문제점은 시스템의 중심 Domain 이 가져야할 구조와 규칙 등을 동일하게 보장해주는 메커니즘 이 없다는 것 입니다. {: style="width:75%; display:block; margin:40px auto 0;"} 개발자는 동일한 Domain 을 가지고 있는 위 3가지 어플리케이션을 열심히 복&붙하며 개발을 하게 됩니다. 매우 귀찮.. 2019. 12. 29.