오늘 TIL 3줄 요약
- 완벽한 소프트웨어를 만드는 것은 불가능하다.
- "그런 일은 절대 일어날리 없다"는 없다.
- 작은 단계를 밟아라. 언제나.
TIL (Today I Learned) 날짜
2022년 3월 24일
오늘 읽은 범위
4장. 실용주의 편집증
책에서 기억하고 싶은 내용을 써보세요.
- 여러분은 완벽한 소프트웨어를 만들 수 없다.
- 삶의 공리로 인정하고 받아들여라. 그리고 축하하라. 완벽한 소프트웨어는 존재하지 않기 때문이다. 그리 길지 않은 컴퓨터 역사를 통틀어 어느 누구도 완벽한 소프트웨어를 만들지 못했다.
- (중략) 그래봐야 일관성을 확인하고 데이터베이스 칼럼에 제약을 거는 정도로 뿌듯해 하는 경우가 대부분이다.
- 모든 프로그래머가 자기 경력을 쌓는 초기부터 암기해야 하는 계명이 있는것 같다. 요구사항, 설계, 코드, 주석 등 우리가 하는 거의 모든 것에 적용하도록 배우는 컴퓨팅의 근본 교리이자 핵심적 믿음이다. 그것은 이렇게 시작한다. "그런 일은 절대 일어날 리 없어" 이런식으로 자신을 기만하지말자, 특히 코딩할 때는.
- 작은 단계들을 밟아라. 언제나.
- 언제나 신중하게 작은 단계들을 밟아라. 더 진행하기 전에 피드백을 확인하고 조정하라. 피드의 빈도를 여러분의 제한 속도라고 생각하라. '너무 큰' 단계나 작업은 하지 않게 될 것이다.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
- 첫 문단이 강렬했지만 왠지 읽히지가 않았다.
- 완벽한 소프트웨어를 만들어 갈 수 없다는 것을 인정하고 받아드리고, 최소한의 기능을 구현한 뒤 변경, 수정해서 살을 붙여 나가고 싶다.
- 함부로 '절대로' 라고 단정 짓지 말자. 모든 경우의 수를 파악하는 것은 불가능하고 사람은 의도치 안헤 실수를 한다.
- assert 를 활용해서 코드를 확인하자. 하지만 부작용도 있으니 쓸 때를 구분하자
- 목표를 이루려면 한번에 너무 큰 목표를 이루려고 하지말고 그 목표를 이루기 위한 가능한 구체적이고 상세하고 작은 단위로 목표를 세우면 달성감과 동기부여가 생겨 그 큰 목표를 이루기 용이해진다. 어떤 책에서 비슷한 맥락의 내용을 읽었다. 그 후로 아주 작은 목표들을 가졌고, 반복적으로 작은 성공을 느껴가며 목표를 향해 나아가고 있다.
- 개발 또한 비슷한 맥락이 아닐까? 이게 애자일 방식과 비슷한걸까?
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
- DBC 구현
- p.160 의 코드 부분. 실용주의 프로그래머라면 try catch 문을 쓰지 않는다
- 1. 애플리케이션 코드가 오류 처리 코드 사이에 묻히지 않는다
- 2. 코드의 결합도를 높이지 않는다.
반응형
'Choi solyi > 책' 카테고리의 다른 글
[책] 주니어개발자가 읽어 본 소프트웨어 아키텍처 101 (0) | 2022.03.28 |
---|---|
실용주의 프로그래머 Assignment #08 - 5장. 구부러지거나 부러지거나 (0) | 2022.03.27 |
실용주의 프로그래머 Assignment #05 - 3장. 기본도구 (0) | 2022.03.24 |
실용주의 프로그래머 Assignment #03 - 2장.실용주의 접근법 (0) | 2022.03.21 |
실용주의 프로그래머 Assignment #02 - 1장.실용주의 철학 (0) | 2022.03.20 |