728x90
오늘 TIL 3줄 요약
- 완벽한 소프트웨어는 만들 수 없다.
- 단정문으로 불가능한 상황을 예방하라.
- 언제나 신중하게 작은 단계들을 밟아라.
TIL (Today I Learned) 날짜
2022.03.24
오늘 읽은 범위
14장.실용주의 편집증
책에서 기억하고 싶은 내용을 써보세요.
- 가정을 적극적으로 검증하는 코드를 작성하라. - p146
- 만약 호출자가 루틴의 모든 선행 조건을 충족한다면 해당 루틴은 종료 시 모든 후행 조건과 불변식이 참이되는 것을 보장한다. - p149
- 단순히 입력만 확인하는 것보다 더 좋은 방식이다. 함수 인자가 범위를 벗어나면 아예 함수 호출이 안 된다. - p151
- 불변식의 자격이 있는 요구 사항을 찾았다면 여러분이 작성하는 모든 문서에 잘 드러나도록 만들어라. - p156
- 모든 오류는 정보를 준다. - p159
- '하지만 물론 그런 일을 절대 일어나지 않을거야.'라는 생각이 든다면 그런 일을 확인하는 코드를 추가하라. - p163
- 디버깅 행위가 디버깅하려는 시스템의 행동을 바꿔 버리는 일종의 '하이젠버그(Heisenbug)'적인 문제다. - p164
- 리소스를 할당하는 함수나 객체가 리소스를 해제하는 책임 역시 져야 한다는 뜻일 뿐이다. - p167
- 리소스를 할당한 순서의 역순으로 해제하라. 이렇게 해야 한 리소스가 다른 리소스를 참조하는 경우에도 참조를 망가트리지 않는다. - p171
- 코드의 여러 곳에서 동일한 구성의 리소스들을 할당하는 경우에는 언제나 같은 순소로 할당해야 교착 가능성을 줄일 수 있다. - p171
- 언제나 신중하게 작은 단계들을 밟아라. 더 진행하기 전에 피드백을 확인하고 조정하라. 피드백의 빈도를 여러분의 제한 속도라고 생각하라. '너무 큰' 단계나 작업은 하지 않게 될 것이다. - p178
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
- 아직까지도 어렵다는 생각이 머릿속 밖을 떠나지 않는다. 이 책은 반드시 한 번 더 읽어야 할 것이다.
- 메모리 리소스 할당과 해제. 딱 이틀전에 해당 문제로 지적을 받았다. 분명 해제한다고 했지만, 메모리 할당 이후 다른 api의 예외상황으로 종료하는 것을 고려하지 못한 것!...
오늘 읽은 다른사람의 TIL
-
728x90
'단기 목표 뿌수기 > 실용주의 프로그래머' 카테고리의 다른 글
[노개북 - 8] 5장.구부러지거나 부러지거나 (0) | 2022.03.31 |
---|---|
[노개북 - 7] 복습 (0) | 2022.03.25 |
[노개북 - 5] 3장.기본 도구 (0) | 2022.03.23 |
[노개북 - 4] 복습 (0) | 2022.03.22 |
[노개북 - 3] 2장.실용주의 접근법 (0) | 2022.03.20 |