Clean Code
-
4장 주석Clean Code 2022. 1. 14. 22:22
있으나 마나 한 주석을 달려는 유혹에서 벗어나 코드를 정리하라. 더 낫고, 행복한 프로그래머가 되는 지름길이다. 함수나 변수로 표현할 수 있다면 주석을 달지 마라 주석은 나쁜 코드를 보완하지 못한다 코드로 의도를 표현하라! // 직원에게 복지 혜택을 받을 자격이 있는지 검사한다. if ((employee.flags & HOURLY_FLAG) && (employee.age > 65)) 위 코드보단 if (employee.isEligibleForFullBenefits()) 좋은 주석 법적인 주석 정보를 제공하는 주석 의도를 설명하는 주석 의미를 명료하게 밝히는 주석 결과를 경고하는 주석 TODO 주석 중요성을 강조하는 주석 하지만 코드로 설명할 수 있다면 그것이 베스트 위치를 표시하는 주석 반드시 필요할 ..
-
클린 코드 3장 함수Clean Code 2021. 12. 12. 19:57
// 3-1. HtmlUtil.java (FitNesse 20070619) public static String testableHtml { PageData pageData, boolean includeSuiteSetup } throws Exception { Wikipage wikiPage = pageData.getWikiPage(); StringBuffer buffer = new StringBuffer(); if (pageData.hasAttribute("Test")) { if (includeSuiteSetup) { WikiPage suiteSetup = PageCrawlerImpl.getInheritedPage( SuiteResponder.SUITE_SETUP_NAME, wikiPage ); if (s..
-
클린 코드 2장 의미 있는 이름Clean Code 2021. 12. 6. 23:21
의도를 분명히 밝혀라 변수나 함수 그리고 클래스 이름은 다음과 같은 굵직한 질문에 모두 답해야 한다. 변수(혹은 함수나 클래스)의 존재 이유는? 수행 기능은? 사용 방법은? 따로 주석이 필요하다면 의도를 분명히 드러내지 못했다는 말이다. int d; // 경과 시간(단위: 날짜) // ==== d보다는 아래 변수들이 훨씬 명확 int elapsedTimeInDays; int daysSinceCreation; int daysSinceModification; int fileAgeInDays; public List getThem() { List list1 = new ArrayList(); for (int[] x : theList) if (x[0] == 4) list1.add(x); return list1; }..
-
클린 코드 1장 깨끗한 코드Clean Code 2021. 12. 6. 23:12
깨끗한 코드를 작성하는 방법은 배우기 어렵다. 단순히 원칙과 패턴을 안다고 깨끗한 코드가 나오지 않는다. 고생을 해야 한다. 스스로 연습하고 실패도 맛봐야 한다. 남들이 시도하다 실패하는 모습도 봐야 한다. 그들이 넘어지고 일어서는 모습도 봐야 한다. 결정을 내리느라 고민하는 모습, 잘못된 결정으로 대가를 치르는 모습도 봐야 한다. "나중은 결코 오지 않는다." 기한을 맞추는 유일한 방법은, 그러니까 빨리 가는 유일한 방법은, 언제나 코드를 최대한 깨끗하게 유지하는 습관이다. 프로그래머들이 대충 넘어가는 부분 중 하나가 오류 처리다. 메모리 누수, 경쟁 상태(race condition), 일관성 없는 명명법이 또 다른 예다. 한 마디로 요악하면, 깨끗한 코드는 세세한 사항까지 처리하는 코드다. 깨끗한 코..