📅 2022.03.23
📖 범위: 3장. 기본적인 도구
도구는 재능을 증폭한다
디버깅은 여러 근거들을 수집하여 문제의 지점을 좁혀나가는 과정이다.
일반 텍스트란? 사람이 직접 읽고 이해할 수 있는 형태의 인쇄 가능한 텍스트다.
일반 텍스트가 압축된 이진 포멧을 사용하는 것 보다 더 공간을 많이 차지하고 비싼 계산을 한다. 그럼에도 일반 텍스트의 사용을 권장하는 이유는?
호환성이 좋다.
세월이 흘러 구식 언어가 되어도 다른 이들이 코드를 알아보기 쉽다.
그러므로 여러 이질적인 환경을 하나로 이어주는 표준이 된다.
수동적 코드 생성기
결과를 내기 위해 한 번만 실행. 코드 생성기는 결과물과 독립적
타이핑을 줄여준다. 주로 몇개의 입력에서 주어진 출력을 생성한다.
ex. 새 소스파일 생성, 일회용 변환 수행
능동적 코드 생성기
DRY 원칙을 따르고 싶다면 필수 요소!
생성이 필요할 때마다 작동. 일회용이어서 언제든지 코드 생성기가 다시 만들어 낼 수 있다.
ex.언어 형태 변환, 다회용
필요에 따라서 코드생성기가 꼭 100% 정확할 필요는 없다. 완벽한 코드를 만드는 데에 드는 시간과 수동 작업의 양을 고려하여 선택한다.
만물의 영장인 인간 답게 도구를 사용해야겠다.
쉘을 연마해서 피아노 연주하듯 사용해보자.
현재 사용하는 z쉘의 명령어를 하루에 한 가지씩 알아가봐야겠다.
만약에 자동완성 기능이 없었더라면? 무슨 맛으로 코딩을 했을까?
에디터에 익스텐션이 없었더라면?
git lens가 없었으면 난 내가 낳은 자식도 못 알아봤을 것이다.
eslint, prettier, 구문 강조 기능이 없었더라면 내 시력은 진작 포기했다.
막판의 텍스트 처리, 코드 생성기에 대한 내용은 느낌은 알겠지만
어떤 식으로 적용해야 좋을지 뚜렷하게 떠오르지 않아서
차분하게 다시 읽어봐야 겠다.
개발 관련 부분으로 들어가니 모르는 용어나 개념의 양이 크게 늘어났다.
모르는 용어들은 여기에 적어두고, 설명이 없는 용어들은 앞으로도 지속적으로 추가할 것이다.
IDE - 통합 개발 환경(Integrated Development Environment, IDE)으로 아래의 요소를 사용하기 쉽게 결합한 소프트웨어이다.
YAML - YAML은 XML, C, 파이썬, 펄, RFC2822에서 정의된 e-mail 양식에서 개념을 얻어 만들어진 '사람이 쉽게 읽을 수 있는' 데이터 직렬화 양식이다.
json처럼 key-value의 값으로 되어있고 리스트를 -로 표시하는 등 보기에도 간결하고 깔끔한 형태이다.
유닉스 철학
오늘 알게된 셸 명령어
셸의 종류
RCS, CVS, ..
DDD 디버거
책을 그대로 요약하기 보다 이해하기 쉬운 말로 변환하여 적어주셔서 도움이 되었습니다!