반응형
『Clean Code(클린 코드) 애자일 소프트웨어 장인 정신 - 로버트 C. 마틴』 을 읽고 요약한 내용입니다. 나쁜 코드에 주석을 달지 마라. 새로 짜라 브라이언 W. 커니핸, P.J. 플라우거 우리는 코드로 의도를 표현하지 못해, 그러니까 실패를 만회하기 위해 주석을 사용한다. 그러므로 우리는 (간혹 필요할지라도) 주석을 가능한 줄이도록 꾸준히 노력해야 한다. 주석은 나쁜 코드를 보완하지 못한다. 코드에 주석을 추가하는 일반적인 이유는 코드 품질이 나쁘기 때문이다. 코드로 의도를 표현하라 확실히 코드만으로 의도를 설명하기 어려운 경우가 존재한다. // 직원에게 복지 혜택을 받을 자격이 있는지 검사한다. if ((emplotee.flags & HOURLY_FLAG) && (employee.age > ..
『Clean Code(클린 코드) 애자일 소프트웨어 장인 정신 - 로버트 C. 마틴』 을 읽고 요약한 내용입니다. 함수를 잘 만드는 법 작게 만들어라! 블록과 들여쓰기중첩구조가 생길만큼 함수가 커져서는 안 된다. if문 else문 while문 등에 들어가는 블록은 한 줄이어야 한다는 의미다. 대개 거기서 함수를 호출한다. 그러면 바깥을 감싸는 함수(enclosing function)가 작아질 뿐 아니라, 블록안의 함수명이 적절하다면 코드 이해가 쉬워진다. 한 가지만 해라! 함수는 한 가지를 해야 한다. 그 한 가지를 잘 해야 한다. 그 한 가지만을 해야 한다. 지정된 함수 이름 아래에서 추상화 수준이 하나인 단계만 수행한다면 그 함수는 한 가지 작업만 한다. 단순히 다른 표현이 아니라 의미있는 이름으로 ..
Qiita : 일본 개발자 사이트 https://qiita.com/ エンジニアに関する知識を記録・共有するためのサービス - Qiita Qiitaは、エンジニアに関する知識を記録・共有するためのサービスです。 プログラミングに関するTips、ノウハウ、メモを簡単に記録 & 公開することができます。 qiita.com 개발자로서 갖춰야 할 소양중 하나로 구글 검색을 꼽아도 손색이 없다. Qiita는 일본에서 개발자로 일하면서 구글에 검색하면 stackoverflow(https://stackoverflow.com/) 와 함께 가장 많이 검색 결과에 나오는 사이트이다. 우리나라의 티스토리, Notion, velog, GitHub 블로그 등과 같은 성격의 사이트라 보면 된다. 그래서 stackoverflow 처럼 질의 형식이 아닌, ..
『Clean Code(클린 코드) 애자일 소프트웨어 장인 정신 - 로버트 C. 마틴』 을 읽고 요약한 내용입니다. 이름을 잘 짓는 간단한 규칙 의도를 분명히 밝혀라 변수(혹은 함수나 클래스)의 존재 이유는? 수행 기능은? 사용 방법은? 따로 주석이 필요하다면 의도를 분명히 드러내지 못했다는 말이다. 의도가 드러나는 이름을 사용하면 코드 이해와 변경이 쉬워진다. “문제는 코드의 단순성이 아니라 코드의 함축성이다. 다시 말해, 코드 맥락이 코드 자체에 명시적으로 드러나야 한다. 암암리에 독자가 정보를 안다고 독단하지말자” 그릇된 정보를 피하라 프로그래머는 코드에 그릇된 단서을 남겨서는 안 된다. 그릇된 단서는 코드 의미를 흐린다. 유사한 개념은 유사한 표기법을 사용한다. 이것도 정보다. 일관성이 떨어지는 표..
『Clean Code(클린 코드) 애자일 소프트웨어 장인 정신 - 로버트 C. 마틴』 을 읽고 요약한 내용입니다. 코드가 존재하리라 기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업, 바로 이것이 프로그래밍이다. 이렇게 명시한 결과가 바로 코드다. 나쁜 코드 우리 모두는 자신이 짠 쓰레기 코드를 쳐다보며 나중에 손보겠다고 생각한 경험이 있다. 우리 모두는 대충 짠 프로그램이 돌아간다는 사실에 안도감을 느끼며 안 돌아가는 프로그램보다 돌아가는 쓰레기가 좋다고 스스로를 위로한 경험이 있다. 다시 돌아와 나중에 정리하겠다고 다짐했었다. 나중은 결코 오지 않는다. 나쁜 코드로 치르는 대가 나쁜코드는 개발속도를 저하시키며 얽히고설킨 코드를 더한다. (...) 기한을 맞추는, 빨리 가는 유일한 방법은, 언제나..