개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
완벽은 없다.
에러(이슈)에서 답을 찾는다.
4장 제목인 편집증인 이유를 각각의 토픽에서 찾는다.
-> 우리는 다소 편집증처럼 집착할 필요가 있다.
TIL (Today I Learned) 날짜
2022.05.20
오늘 읽은 범위
4장. 실용주의 편집증
책에서 기억하고 싶은 내용을 써보세요.
🔥 누구도 믿지 않는다. 심지어 본인 스스로도.
선행조건 - 루틴이 호출되기 위해 참이여야 하는 조건.
후행 조건 - 루틴이 끝난 뒤 상태. (*무한 반복은 허용되지 않는 유한한 상태)
클래스 불변식 → 루틴이 끝난 뒤 호출자로 제어권이 반환되는 시점의 불변식은 항상 참이 되어야 한다.
있을 수 없는 일 이 발생했을 떄 우리는 그 사실을 알아야 한다.
모든 오류는 정보를 준다. → 앱 코드가 오류 처리 코드 사이에 묻히지 않고, 결합도를 높이지 않게 설계.
🔥 우리는 일찍 앱의 작동을 멈출 필요가 있다.
에러가발생했다는 것은 프래그램은 더이상 유효 하지 않다.
오히려 죽은 프로그램이 피해를 덜 끼친다.
🔥 단정문으로 불가능한 상황을 예방하라.
→ 진짜 오류처리를 해야하는 곳에 단정을 대신 사용하지는 말라.
단정은 결코 일어나서는 안되는 것들을 검사하게 된다.
디버깅의 행위가 디버깅을 하려는 시스템의 행동을 바꿔버리는 하이젠버그의 문제
테스트가 모든 버그를 발견한다는 가정은 틀린가정이다.
메모리 트랜젝션 스레드 네트워크 파일 타이머 등 관리.
자신이 시작한 것은 자신이 끝내라.
중첩할당 → 할당의 순서 역순으로 해제,
실용 주의 프로그래머는 아무것도 믿지 않는다.
작은 단계들을 밟아라, 언제나.
블랙스완 → 예언하지말라.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
눈이 오기전 서리가 맺힌다고 한다. 예언하지 말아야 하지만, 미래의 조짐은 아주 사소한 것부터 징조를 보인다.
-> 우리는 그곳에 눈높이를 맞출 필요가 있다.
테스트는 테스트한 영역에 있어서 늘 100%의 결과를 제공한다.
-> 완벽한 테스트는 없다. (모든 환경에 테스트를 진행할 수 없다.)
예언하지 말라고 하지만, 예언을 맞출 정도로 굶주리고 갈망할 정도의 편집증을 갖는건 어떨까?
-> 과연 그때도 앤드류 헌트님은 예언하지 말라고 할 것인가?
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
오늘 읽은 다른사람의 TIL