5S (린)
- 정리 - 적절한 명명법
- 정돈 - 코드는 누구나 예상하는 위치에 있어야 한다.
- 청소 - 과거 이력이나 해야하는 것을 기억하는 주석은 제거한다.
- 청결 - 그룹 내에서 일관적인 구현 스타일 및 기법의 필요성
- 규율 - 관례를 따르고, 자기 작품을 자주 돌본다.
프로그래밍이란 기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업
나쁜 코드는 초반에는 빠른 기능 구현이 가능하지만 시간이 지나면서 개발 속도를 크게 떨어뜨리고 팀의 전체적인 생산성을 떨어뜨린다.
시간을 들여 깨끗한 코드를 만드는 노력이 비용 절감 뿐만아니라 전문가로서 살아남는 방법이다.
좋은 코드를 사수하는 일은 프로그래머의 책임이지 일정을 맞춰야하는 관리자의 책임이 아니다.
좋은 코드란 다른 사람이 고치기 쉬워야 하며 테스트 케이스가 존재해야하고 많은 생각과 고민이 들어간 코드이다.
좋은 코드를 만드는 비결은 중복 줄이기, 표현력 높이기, 초반부터 간단한 추상화 고려하기
리팩토리 할 때 한번에 많은 것을 하려고 하지말고 변수 이름 개선, 긴 함수 분할, 중복 제거 등 간단한 것을 하나씩 개선하면서 시간이 지날 수록 코드가 좋아지도록 하는 것이 좋다.
평소 클린 코드가 중요하는 말은 항상 들어왔지만 제대로 학습하지는 않았다. 이번에 노개북을 통해서 클린 코드 1장을 읽게 되었고 좋은 개발자, 협업을 잘하는 개발자, 함께 일하고 싶은 개발자가 되기 위해서는 클린 코드는 필수적이라고 생각이 들었다. 3주간 한번도 빠짐없이 참여해서 클린 코드에 대한 지식을 가지고 회사에서 적용하고 습관화시키는 것을 의식적으로 노력해야겠다는 생각이 들었다.