클린코드

클린코드

인자의 개수는 적을수록 좋다 (+ 실무 경험)

열심히 기능을 짜다보면, 인자가 2~3개 넘어가는 일이 다반사입니다. 로버트 C. 마틴의 클린코드에서 말하듯이, 3개 이상의 인자는 죄악입니다. (이렇게 까지 강하게 표현했는지 정확하게 기억은 나지 않지만.. 어쨌든 확실히 나쁩니다) 3개 보다 나은 것은 2개, 2개보다 나은 것은 1개의 인자, 가장 좋은 것은 0개의 인자를 활용하는 것입니다. 0개의 인자가 어떻게 가능한지 처음 들으면 의아할 수 있는데, 객체를 생성하고 객채의 메소드로 기능을 구성하라는 말입니다. 가장 좋은건 0개가 맞지만, 열심히 비지니스 로직을 짜다보면 2개 정도의 인자까지는 봐줄만 한 것 같습니다. 하지만, 이 때도 최대한 메서드명을 잘 지어서 실수를 방지해야 합니다. 예를 들어, 게시글의 그룹명과 카테고리명이 따로 존재하고, 이..

클린코드

함수

기본 원칙 함수는 최대한 작을수록 좋다. 또한, 한 가지를 해야 한다. 그 한가지를 잘 해야 한다. 그 한가지만을 해야한다. if/else/while 문 등에 들어가는 블록은 한 줄이어야 한다. 다만, '한 가지'가 무엇인지 알기 어렵다는 점은 존재한다. 예를 들어, 함수 내에서 다음 3가지 동작을 한다고 가정해보자: 페이지가 테스트 페이지인지 판단한다. 그렇다면 설정 페이지와 해제 페이지를 넣는다. 페이지를 HTML로 렌더링 한다. 목록만으로 판단했을 때, 이는 세 가지를 하는 것처럼 보인다. 하지만, 이는 어떻게 구현하냐에 따라 달라질 수 있다. 즉, 지정된 함수 이름 아래에서 추상화 수준이 하나인 단계만 수행한다면, 그 함수는 한 가지 작업만 하는 것이다: function renderPageWith..

sjoonb
'클린코드' 카테고리의 글 목록