본문 바로가기

프로그래밍

클린코드 4장 - 주석 나쁜 코드에 주석을 달지 마라. 새로 짜라. - 브라이언 W. 커니핸, P.J. 플라우거 잘 달린 주석은 그 어떤 정보보다 유용하다. 경솔하고 근거 없는 주석은 코드를 이해하기 어렵게 만든다. 오래되고 조잡한 주석은 거짓과 잘못된 정보를 퍼뜨려 해악을 미친다. 주석은 '순수하게 선하지' 못하다. 기껏해야 필요악이다. 우리는 코드로 의도를 표현하지 못해, 실패를 만회하기 위해 주석을 사용한다. 때때로 주석 없이는 자신을 표현할 방법을 찾지 못해 할 수 없이 주석을 사용한다. 그러므로 주석이 필요한 상황에 처하면 곰곰이 생각하기 바란다. 상황을 역전해 코드로 의도를 표현할 방법은 없을까? 주석을 무시하는 이유는, 거짓말을 해서다. 항상도 아니고 고의도 아니지만 너무 자주 거짓말을 하니까. 주석은 오래될수록 .. 더보기
클린코드 3장 - 함수 이전의 프로그래밍에서는 시스템이 루틴, 하위루틴, 혹은 포트란과 PL/1 시절에는 프로그램, 하위 프로그램, 함수로 나눴다. 결국 지금은 함수만 살아남았다. 어떤 프로그램이든 가장 기본적인 단위가 함수가 되었다. 이 장은 함수를 만드는 법을 소개한다. 이 책에서 보여주고있는 목록3-1 코드는, 길이가 길고, 중복된 코드에, 괴상한 문자열에, 낯설고 모호한 자료 유형과 API로 이루어져 있다. 이러한 코드를 3-2에서는 리팩토링하여서 보여주고 있다. 이로써 목록 3-1에서는 파악하기 어려웠던 정보가 목록 3-2에서는 쉽게 드러난다. 그렇다면 목록 3-2 함수가 읽기 쉽고 이해하기 쉬운 이유는 무엇일까? 의도를 분명히 표현하는 함수를 어떻게 구현할 수 있을까? 함수에 어떤 속성을 부여해야 처음 읽는 사람이 .. 더보기