2022/09 4

고차 함수로 의존성 줄이기

2023년 8월 3일 추가: 이 내용을 포함한 카카오 테크밋에서 발표한 영상이 올라왔습니다. 스프링을 사용한 프로젝트에서 종종 보이는 어노테이션을 사용한 의존성 주입의 남용과 오랜 세월의 흐름으로 의도치 않게 서비스 간의 의존성 그래프가 복잡하게 강결합으로 묶이면서 코드를 읽기도 어렵고 단위 테스트를 구성하기도 어려운 상황이 생긴다. 아래는 어떤 백엔드 서비스의 의존성 그래프다. 순환 종속성이 포함된 복잡한 왼쪽의 의존성 그래프를 오른쪽의 단순한 의존성 그래프로 리팩터링하여 라이브 서비스에 반영하였다. 이번 글은 오랜 세월의 흐름으로 서비스 의존성 그래프가 복잡해진 라이브 서비스를 리팩터링한 내용을 일반화하여 작은 예제로 만들어서 정리한다.  이 글을 읽는데 필요한 배경지식으로 자바의 함수형 인터페이스를..

Dev 2022.09.22

이름 없는 자들의 도시

오래전에 종이책으로 사놓고 안 봤던 ‘눈뜬 자들의 도시’를 읽으려다가 이북이 나왔나 찾다가, ‘이름 없는 자들의 도시’가 이북으로 출간된 것을 보고 출간 순서를 찾아보니 번역서 출간 순서와는 다르게 이 책의 출간이 먼저라서, 도시 3부작인가 하고 구매했다. 읽으면서 ‘눈먼 자들의 도시’와는 전혀 연관이 없는데 뭘까 했더니, 이유가 있었다. 마케팅의 힘이었다. 원제는 이며, 도시 시리즈와는 전혀 관계가 없다. 책을 사서 보기 전에 약간의 정보를 찾아볼까 하는 생각이 살짝 든다. 마케팅의 일환으로 이름 없는 자들의 도시로 출판되었다. https://namu.wiki/w/주제%20사라마구#fn-4 주제 사라마구 - 나무위키 주제 사라마구는 쉼표와 마침표 이외의 문장부호를 전혀 사용하지 않는 문체로 유명하다. ..

Book Shelf 2022.09.18

물고기는 존재하지 않는다

저자가 롤 모델로 삼으려 했던 데이비드 스타 조던이라는 인물의 삶을 따라가면서 그의 삶을 조명하고 저자의 고민 그리고, 드러나는 사실과 반전이 어우러져 읽으면서 뭐지? 흐름이 뭐 이래? 하다가… 어?! 와우! 하게 되는 스릴러 느낌도 있고, 여러 가지 생각하게 하는 책이다. 목차도 추상적이라, 별다른 정보 없이 쭉 읽었고, 아무런 정보 없이 보면 더 재밌는 책이라고 생각해서 최대한 스포일러를 피해 본다. 제목에 명시적으로 적힌 물고기만 언급해보면, 분류학에서 어류가 없다고 해서 우리가 알던 물고기가 사라지는 것도 아니고 우리가 물고기라고 부르지 않을 것도 아니지만, 과학의 엄밀함에는 중요한가 보다. 하지만, 과학도 언제나 엄밀한 것은 아니니, 공룡에게 깃털도 생겼는데 장래에 분류학의 발전으로 어류가 다시..

Book Shelf 2022.09.12

명상록

마르쿠스 황제는 자신의 비망록이 세상에 공개되어 후세에 읽힐 것이라고 상상해봤을까? 책 초반에 마르쿠스 아우렐리우스가 코모두스의 아버지라는 것을 보고 영화 글래디에이터에서 봤던 노황제 그분이 생각나서 왠지 모르게 반가웠다. 170~180년 사이에 쓰였을 것이라고 하니, 이 책이 내가 봤던 고전 중에서 가장 오래된 고전이 아닐까 싶다. 책을 읽으면서 종교서를 읽는 듯한 느낌과 교양 수업으로도 만나 본 적은 없지만, 철학과 교수님에게 혼나는 기분이 살짝 들었다. 선악을 판단하지 말고 이렇게 하라, 그렇게 하지 말라 계속 혼난다. 자기 자신에게 쓴 글이 엄격하다. 우리 대부분은 자신에게 관대하지 않은가? 마르쿠스 황제는 철인이면서 득도하셨을 듯하다. ‘판단을 하지 않으면 괴로움이 사라진다.’ ’얼마나 오래 사..

Book Shelf 2022.09.05
반응형