읽어볼만한 아티클 2021

엄선된 아티클들을 통해 개발자들이 흥미롭게 읽고 고민해볼 만한 다양한 주제들을 소개합니다.

외부 툴 변경에 휘둘리지 않는 서버 코드 작성기 강남언니 팀이 외부 서비스를 도입하며 고민한 흔적이 보인다. DIP의 개념에 대해 구체적으로 이해하기 쉽게 설명하고 있다. 외부 서비스와 연동이 많은 시스템(ex. 결제) 은 DIP 를 고민해보면 좋을 것 같다.

Domain Modeling Made Functional - Scott Wlaschin - KanDDDinsky 2019 언어는 F# 이지만, 구현이 아니라 design 에 대해서만 이야기하고 있어서 볼만 한 것 같다. "DDD(domain driven development) 에서 domain/code 는 비개발자도 이해할 수 있는 형태라고 생각한다. 그리고 따라서 비개발자와도 design 에 대해 서로 의미있는 피드백을 주고 받을 수 있다" 강의자는 비개발자에와의 소통은 어렵다고 주장하는 나에게 반박하는 듯 하다. "어떤 개념을 정말 잘 이해하고 있으면 그걸 모르는 사람에게 쉽게 설명할 수 있어야 한다" 는 얘기가 흔히 있는데, Software Architecture 에도 적용되는 얘기라고 생각한다. 만약 시스템이 비개발자도 이해할만큼 직관적으로 설계되었다면, 이해하기 어려울만큼 지저분한 코드를 작성하기도 어렵지 않을까 ?

유저 주문 취소 기능 Java 전환기 29CM 팀의 legacy 시스템 마이그레이션 후기이다. 결제 도메인 아키텍처를 참고하기 좋다.

함수형 프로그래밍과 ES6+ 살짝 함수형 프로그래밍의 가공된(?) 버전이지만, 쉽게 함수형 프로그래밍을 접할 수 있게 해준다.

토스ㅣSLASH 21 - 결제 시스템의 SDK와 API 디자인 토스 결제 모듈을 붙여보다 잘 설계된 API 라고 생각했었는데, 그들의 고민이 담겨 있다.

주니어 프론트엔드 개발자의 채용 프로세스 참여 후기 개발자 채용에 대한 Zoom 의 깊은 고민을 읽으면서, "좋은 개발자는 무엇일까" 에 대해 생각해보게 되었다.

프로그래밍과 알고리즘 공부 방법 공부법에 대해 깊은 고민을 하신 것 같아서, 유심히 읽어보게 되었다. 특히 리팩토링과 "code smell" 에 대해 생각해 보면서, 팀의 코드리뷰 문화에 대해 고민하게 되었다.

IN THE LOOP | Jake Archibald | JSConf Asia Node 런타임 이벤트 루프와 매크로·마이크로태스크 자바스크립트 런타임인 Node 에서 이벤트 루프가 어떻게 동작하는지 설명하고 있다.

Monad 란 무엇인가? Monad 라는 개념이 무엇인지 항상 궁금했는데, 이에 대해 잘 정리된 영상.

NestJS Custom Caching Decorator 만들기 ZUM 에서 NestJS 프레임워크를 분해해서, 자신들에게 필요한 Custom Decorator 를 만들어내는 과정을 설명한다.

자바스크립트는 왜 프로토타입을 선택했을까 평범할 것 같은 제목에 평범하지 않은 내용. 개인적으로 2021년에 가장 흥미롭게 읽은 글이다.


이것도 읽어보세요