반응형

IT Book/클린 코드(Clean Code) 15

[Clean Code] 5. 형식 맞추기 - 클린 코드 정독하기

프로그래머라면 형식을 깔끔하게 맞춰 코드를 짜야한다. 코드 형식을 맞추기 위한 간단한 규칙을 정하고 그 규칙을 착실히 따라야 한다. 필요하다면 규칙을 자동으로 적용하는 도구를 활용한다. 형식을 맞추는 목적 코드 형식을 맞추는 것은 중요하다. 너무나도 중요하므로 융통성 없이 맹목적으로 따르면 안 된다. 코드 형식은 의사소통의 일환이다. 의사소통은 전문 개발자의 일차적인 의무다. 오늘 구현한 기능이 다음 버전에서 바뀔 확률은 아주 높다. 오늘 구현한 코드의 가독성은 앞으로 바뀔 코드의 품질에 지대한 영향을 미친다. 맨 처음 잡아놓은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 계속 영향을 미친다. 원래 코드는 사라질지라도 개발자의 스타일과 규율은 사라지지 않는다. 적절한 행 길이를 유지하라 소스 ..

[Clean Code] 4. 주석 - 클린 코드 정독하기

나쁜 코드에 주석을 달지 마라. 새로 짜라. - 브라이언 W. 커니핸, P.J. 플라우거 Intro 사실상 주석은 필요하지 않다. 우리에게 프로그래밍 언어를 치밀하게 사용해 의도를 표현할 능력이 있다면, 주석은 필요하지 않다. 우리는 코드로 의도를 표현하지 못한 것을 만회하기 위해 주석을 사용한다. 주석을 달 때마다 자신에게 표현력이 없다는 사실을 푸념해야 마땅하다. 주석은 자주 거짓말을 한다. 주석은 오래될수록 코드에서 멀어진다. 오래될수록 완전히 그릇될 가능성도 커진다. 프로그래머들이 주석을 유지하고 보수하기란 현실적으로 불가능하기 때문이다. 코드는 변화하고 진화한다. 여기저기로 옮겨지기도 하고, 조각이 나뉘고 합쳐지기도 한다. 불행하게도 주석이 언제나 코드를 따라가지 못한다. 진실은 한 곳에만 존재..

[Clean Code] 3. 함수 - 클린 코드 정독하기

과거 포트란(Fortran)과 PL/1 시절에는 시스템을 프로그램, 하위 프로그램, 함수로 나눴다. 현재에는 함수만 살아남았으며, 어떤 프로그램이든 가장 기본적인 단위가 함수다. 함수를 잘 이용하면 읽기 쉽고 이해하기 쉬운 코드로 작성이 가능하다. 클린 코드에서는 처음 읽는 사람이 내부 프로그램을 직관적으로 파악할 수 있고, 의도를 분명히 표현하는 함수 작성하는 방법에 대해서 소개한다. 작게 만들어라! 함수를 만드는 가장 중요한 규칙은 작게 만드는 것이다. public static String renderPageWithSetupsAndTeardowns(PageData pageData, boolean isSuite) throws Exception { if (isTestPage(pageData)) inclu..

[Clean Code] 2. 의미 있는 이름 - 클린 코드 정독하기

의미 있는 이름 소프트웨어에서 이름은 어디에나 쓰인다. 변수, 함수, 인수, 클래스, 패키지 등에도 이름을 붙인다. 뿐만 아니라 소스 파일, 소스 파일이 담긴 디렉터리, jar, war 파일에도 이름을 붙인다. 따라서 이름을 잘 지어야 많은 것들이 편해진다. 클린 코드에서는 이름을 잘 짓기 위한 몇 가지 간단한 규칙을 소개한다. 의도를 분명히 하라 의도가 분명한 이름은 정말로 중요하다. 좋은 이름을 지으려면 시간이 걸리지만, 좋은 이름으로 인해 절약하는 시간이 훨씬 더 많다. 변수나 함수, 클래스의 이름에는 존재 이유, 수행 기능, 사용 방법 등에 대한 질문에 답해야 한다. 따로 주석이 필요하다면 의도를 분명히 표현하지 못했다는 것이다. 변수 나쁜 예 int d; // 경과 시간(단위: 날짜) bad c..

[Clean Code] 1. 깨끗한 코드 - 클린 코드 정독하기

나쁜 코드 프로그래밍에서의 나쁜 코드는 이해하기 어렵고 유지보수하기 어려운 코드를 말한다. 나쁜 코드를 작성하게 되는 이유는 시간 부족, 기존 코드의 잦은 수정, 개발자들의 서로 다른 코드 작성 스타일, 유지보수에 대한 인식 부족, ... 등 다양하다. 이를 해결하기 위해 코드 리팩토링, 테스트 코드 작성, 코드 리뷰, 새로운 코드 작성 등 다양한 방법을 적용할 수 있다. 하지만, 나쁜 코드임에도 불구하고 코드가 실행된다는 것에 안도감을 느끼며 나중으로 미룬 경험이 있을 것이다. 이 책에서 뼈때리는 구절이 있었다. 르블랑의 법칙(Leblance's Law) - "나중은 결코 오지 않는다." 깨끗한 코드 깨끗한 코드는 '청결'이라는 감각을 습득하여 여러 기법들을 적용하는 절제와 규율이 필요하다. 여기서 말..

반응형