개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
팀은 소통하고 프로젝트의 품질에 책임을 가져야 한다.
신뢰할 만한 일관성을 갖기 위해 자동화하라.
문서가 애초부터 전체의 일부가 되게 하고, 나중에 집어넣으려고 하지 마라.
TIL (Today I Learned) 날짜
2022.04.05-2022.04.05
오늘 읽은 범위
8장. 실용주의 프로젝트
책에서 기억하고 싶은 내용을 써보세요.
실용주의 팀 👩🏫👨🏻🏫🧑🏫
팀은 상품의 품질에 대해 책임을 져야만 한다.
전체 환경의 변화에 계속 유의하는 것은 어려운 일이다.
→ 이미 일어난 변화를 거부하지 말고 단지 그런 일이 일어나고 있다는 것을 인지하고 있어라.
훌륭한 팀이 생산하는 문서는 깔끔하고 정확하며 일관적이다.
💡 하나의 팀으로 원활한 소통을 도와주는 팁은 바로 팀 이름을 짓는 것 (적극 활용할 것!)
기능 중심으로 팀을 조직하라.
사람들을 작은 팀으로 나누고, 각 팀은 최종 시스템의 특정한 기능 측면에 대해 책임지도록 한다.
자동화는 모든 프로젝트팀에게 필요불가결한 요소이다.
자동화
일관성과 반복가능성을 확보하는 자동화, 선택이 아닌 필수!
컴파일, 테스트, 빌드, 릴리즈, 그 외 다양한 작업들을 자동화 할 수 있는 도구가 있다.
웹사이트 생성
잘못된 정보는 없느니만 못하다! 유지보수하는데 시간을 허비하지 말자.
테스트
일찍 테스트하고, 자주 테스트하라. 자동으로 테스트하라.
무엇을 테스트할지, 어떻게 테스트할지, 언제 테스트할지 파악할 것.
단위 테스트(모듈 테스트)를 많이 작성한다.
모든 테스트가 끝날 때까지 코딩이 끝난 게 아니다.
통합 테스트
단위 테스트의 확장으로 주요 시스템이 다른 부분과 잘 작동하는지 테스트한다.
모듈을 통합하는 부분에 있어 버그가 많이 발생할 수 있다.
스트레스 테스트
초당 트렌젝션, 실 환경에서 성능 요구 사항에 따라 시스템이 감당할 수 있는지 자문한다.
✏️ 결국은 모두 글쓰기
문서화는 프로그래머의 숙명이다!
변수 이름 또한 유의미한 것으로 온전한 의미를 가진 이름으로 적는다.
코드엔 주석이 있어야 하지만 목적에 합당한 주석을 사용해야 한다. (DRY 원칙을 위반하지 말 것)
주석에서 사용하지 말아야 할 목록은.
파일 내의 코드가 익스포트하는 함수들의 목록.
리비전 기록 → 소스코드 관리 시스템이 할 수 있도록 양보하자.
이 파일이 사용하는 파일 목록.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
프로젝트를 시작하면서 팀원들과 어떤 공동 목표를 가져야 하는지 알게되었다. 팀을 리드하는 수석은 아니지만 팀의 일원으로써 우선은 돌멩이 스프와 같은 시너지를 낼 수 있는 팀원이 될 수 있지 않을까. 또한 코드에 자부심을 갖고 내 작품에 자신있게 서명하는 (책임감있는) 모습도 필요할 것 같다. 스스로 반복 작업을 싫어하는 나름 실용주의적인(?) 직원이라고 생각했지만 그건 착각이었던 것 같다. 정말 테스트는 프로그래머로써 숙명같은 일인 것 같다. 나에게 너무 관대했던 과거를 반성하게 된다. 책의 마지막 장까지 와보니 처음부터 마지막까지 관통하는 몇가지 큰 맥락이 있다. 이론적인 부분도 많지만 결국 실용주의 프로그래머의 자세를 강조한다. 마지막까지 정말 깨달은 바가 크다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
오늘 읽은 다른사람의 TIL