March 31, 2022
‘앤드류 헌트, 데이티드 토머스, 실용주의 프로그래머(인사이트), 2020)‘를 읽고, 제가 느낀 방식대로 정리한 문서입니다.
냄비 속의 개구리처럼 서서히 익어가는 우를 범하지 말자.
지식에 대한 투자가 언제나 최고의 이윤을 낸다.
하지만 내가 지금 공부하는 것은 Expirigin assets이다. 내가 현재 공부하는 것이 영원히 나를 지탱해줄 것이라고 생각하면 안 된다.
다각화: 특정 기술에만 얽매이지 말고, 더 많은 기술을 배워보자.
리스크 관리: 안정적 결과를 가져다 줄 것과 불안하지만 흥미로워보이는 것을 함께 균형을 맞춰보자.
Q. 특정 기능에 대한 요구사항 변경시 영향 받는 모듈의 수는? A. 직교적 시스템에서 답은 ‘하나’
프로토타입의 코드는 예광탄과는 달리 나중에 버릴 수 있다. 예광탄이 발사되기 전에 거쳐야 하는 & 위험을 수반하는 모든 것에 대해 조사하는 단계가 프로토타입
코드에는 추상화를, 메타데이터에는 세부 내용을 담는다.
동시성concurrency은 둘 이상의 코드가 동시에 실행중인 것처럼 행동하는 것
병렬성parallelism은 실제로 동시에 실행되는 것
기능과 뷰를 완전히 분리하자. 좋은 예는 MVC 모델
적절하지 않다면 언제든지 리팩토링을 해야 한다.
지금 리팩터링을 하지 않으면, 나중에 더 많은 의존성을 신경쓰면서 해야 한다.
어떤 제약조건은 절대적이지만, 다른 것들은 대부분 지레짐작으로 어려워보이는 것이다.
명세를 ‘완벽’하게 쓰고, 코드 작성을 하려고 하면 코드 작성은 못 한다. 완벽은 없다.
소유권에 대한 긍지