Clean Code - 의미있는 이름
·
로버트 C.마틴의 클린 코드를 읽고 정리한 내용입니다. 의미가 명확한 이름을 사용하자 변수, 함수 또는 클래스의 목적과 의미를 명확하게 설명하는 이름을 선택하자 아래 코드는복잡한 코드도 아니지만 코드가 하는 일을 짐작하기 어렵다. 문제는 코드의 함축성에 있다. 다시 말해, 코드 맥락이 코드 자체에 명시적으로 드러나지 않기 때문이다. public List getThem() { List list1 = new ArrayList(); for (int[] x : theList) if (x[0] == 4) list1.add(x); return list1; } 위 코드에는 아래와 같은 정보가 드러나지 않는다. theList에 무엇이 들어있는가? theList에서 0번째 값이 어째서 중요한가? 값 4는 무슨 의미인가?..
Clean Code - 객체와 자료구조
·
로버트 C.마틴의 클린 코드를 읽고 정리한 내용입니다. 자료 추상화 // 구체적인 클래스 public class Point { public double x; public double y; } // 추상적인 클래스 public interface Point { double getX(); double getY(); void setCartesian(double x, double y); double getR(); double getTheta(); void setPolar(double r, double theta); } 두 클래스는 2차원 점을 표현한다. 아래 코드는 직교좌표계를 사용하는지 극좌표계를 사용하는지 알 길이 없다. 그럼에도 인터페이스는 자료구조를 명백하게 표현하고 있다. 좌표를 읽을 때는 각 값을 개별..
Clean Code - 단위 테스트(FIRST)
·
로버트 C.마틴의 클린 코드를 읽고 정리한 내용입니다.테스트는 유연성, 유지보수성, 재사용성을 제공한다.테스트 케이스가 없다면 실제 코드를 유연하게 만드는 버팀목도 사라진다. 코드에 유연성, 유지보수성, 재사용서을 제공하는 버팀목이 바로 단위 테스트이다. 테스트 케이스가 있다면 실제 코드의 변경이 두렵지 않다. 테스트 케이스가 없다면 모든 변경은 잠정적인 버그가 된다.테스트 코드가 지저분하면 코드를 변경하는 능력이 떨어지며 코드 구조를 개선하는 능력도 떨어진다. 테스트 코드가 지저분할수록 실제 코드도 지저분해지고 실제 코드도 망가진다. 깨끗한 테스트 코드테스트 코드에서 가독성을 높이려면 가독성이 필요하다. 가독성을 높이기 위해서는 명로성, 단순성, 풍부한 표현력이 필요하다. 테스트 코드는 최소의 표현으로..
Cold Bean
'clean code' 태그의 글 목록