실용주의 프로그래머
0001-01-01실용주의 프로그래머 책에서 발췌
-
자신의 기술에 관심과 애정을 가져라
-
자신의 일에 대해 생각하면서 일하라
-
어설픈 변명을 만들지 말고 대안을 제시하라
-
깨진 창문을 내버려두지 말라
-
변화의 촉매가 되라
-
큰 그림을 기억하라
-
품질을 요구사항으로 만들어라
-
지식 포트폴리오에 주기적으로 투자하라
-
읽고 듣는 것을 비판적으로 분석하라
-
무엇을 말하는가와 어떻게 말하는가 모두 중요하다
-
DRY-반복하지 마라
-
재사용하기 쉽게 만들라
-
관련 없는 것들 간에 서로 영향이 없도록 하라
-
최종결정이란 없다
-
목표물을 찾기 위해 예광탄을 써라
-
프로토타입을 통해 학습하라
-
문제 도메인에 가깝게 프로그래밍하라
-
추정을 통해 놀람을 피하라
-
코드와 함께 일정도 반복하며 조정하라
-
지식을 일반 텍스트로 저장하라
-
명령어 셀의 힘을 사용하라
-
하나의 에디터를 잘 사용하라
-
언제나 소스코드 관리 시스템을 사용하라
-
비난 대신 문제를 해결하라
-
디버깅을 할 때 당황하지 마라
-
‘select’는 망가지지 않았다
-
가정하지 마라, 증명하라
-
텍스트 처리 언어를 하나 익혀라
-
코드를 작성하는 코드를 작성하라
-
완벽한 소프트웨어는 만들 수 없다
-
계약에 따른 설계를 하라
-
일찍 작동을 멈추게 하라
-
단정문을 사용해서 불가능한 상황을 예방하라
-
예외는 예외적인 문제에 사용하라
-
시작한 것은 끝내라
-
모듈간의 결합도를 최소화하라
-
통합하지 말고 설정하라
-
코드에는 추상화를, 메타데이터에는 세부 내용을
-
작업흐름 분석을 통해 동시성을 개선하라
-
서비스를 사용해서 설계하라
-
언제나 동시성을 고려해 설계하라
-
모델에서 뷰를 분리하라
-
칠판을 사용해 작업흐름을 조율하라
-
우연에 맡기는 프로그래밍을 하지 말라
-
여러분의 알고리즘의 차수를 추정하라
-
여러분의 추정을 테스트하라
-
일찍 리팩터링하고, 자주 리팩터링하라
-
테스트를 염두에 두고 설계하라
-
소프트웨어를 테스트하라. 그렇지 않으면 사용자가 테스트하게 될 것이다
-
자신이 이해하지 못하는, 마법사가 만들어준 코드는 사용하지 말라
-
요구사항을 수집하지 말고 채굴하라
-
사용자처럼 생각하기 위해 사용자와 함께 일하라
-
구체적인 것보다 추상적인 것이 더 오래간다
-
프로젝트 용어사전을 사용하라
-
생각의 틀을 벗어나지 말고 틀을 찾아라
-
준비가 되었을 때 시작하라
-
어떤 일들은 설명하기보다 실제로 하는 것이 더 쉽다
-
형식적 방법의 노예가 되지 마라
-
비싼 도구가 더 좋은 설계를 낳지는 않는다
-
팀을 기능 중심으로 조직하라
-
수작업 절차를 사용하지 말라
-
일찍 테스트하고, 자주 테스트하라, 자동으로 테스트하라
-
모든 테스트가 통과하기 전엔 코딩이 다 된 게 아니다
-
파괴자를 써서 테스트를 테스트하라
-
코드 커버리지보다 상태 커버리지를 테스트하라
-
버그는 한 번만 잡아라
- 사람이 한 번 버그를 찾았으면, 그 버그를 더 이상 사람이 찾을 일은 없어야 한다. 그 다음부터는 자동화된 테스트로 체크하라.
-
한국어도 하나의 프로그래밍 언어인 것처럼 다루라
-
문서가 애초부터 전체의 일부가 되게하고 나중에 집어넣으려고 하지 말라
-
사용자의 기대를 부드럽게 넘어서라
-
자신의 작품에 서명하라
- 예전 장인들은 자기 일에 서명하는 것을 자랑스러워 했다. 당신도 그래야 한다.