본문 바로가기
TIL

실용주의 프로그래머 3장

by sun_HY 2024. 6. 23.

3장 기본 도구

 

도구는 재능을 증폭하고 생산성을 높인다.

아무리 흐린 먹물일지라도 가장 훌륭한 기억력보다 낫다.

 

 

16. 일반 텍스트의 힘

 

일반 텍스트는 그 자체만으로 의미를 드러낼 수 있다.

HTML, JSON, YAML 등은 모두 일반 텍스트

 

+) 유닉스 철학: 작고 예리한 각각의 도구가 한 가지 일만 잘하도록 만들자

 

 

17. 셸 가지고 놀기

 

텍스트 파일을 다루는 프로그래머에겐 명령어 셸이 작업대이다.

GUI보다 작업 자동화와 가용한 역량을 온전히 사용하는 데에 장점이 있다.

GUI는 설계자가 의도한 범위 내에 제한된다.

 

개발자도 셸을 자기에게 맞추어야 한다.

- 색 조합

- 프롬프트 설정

- alias와 셸 함수

- 명령어 자동 완성

 

 

18. 파워 에디팅

 

에디터를 여러 개 쓸 거라면 각각에 유창해지도록 해라

유창하다는 건 검색, 편집, 이동 등의 과정을 마우스나 트랙패드 없이, 생각하지 않고 사용할 수 있는 것

필요한 기능이 없다면 확장 기능을 찾아보고, 만들어진 것이 없다면 직접 만들어 봐라

 

 

19. 버전 관리

 

버전 관리 시스템은 일종의 거대한 실행 취소 버튼

소스 코드가 아닌 문서나 메모, 셀 스크립트 등도 버전 관리 아래에 두어라.

 

 

20. 디버깅

 

디버깅의 1법칙: 당황하지 말라

버그가 발생하는 상황을 다른 것들에서부터 분리해 본다.

 

 

22. 엔지니어링 일지

 

진행 중인 작업과 직접적인 관계가 없는 발상을 일단 쌓아놓을 수 있다.

새로운 생각을 잊어버릴 걱정 없이 지금 하는 일에 집중할 수 있다.

 

728x90