nika-blog

클린코드, code Style Guide 본문

etc

클린코드, code Style Guide

nika0 2022. 2. 27. 12:05

클린코드란?

읽기 쉬운 코드 

 

고려사항

  • 단일 책임 원칙 : 하나의 인터페이스가 하나의 역할 수행
    컴포넌트 분리할 때 디자인보다 시나리오를 중점적으로 바라보기

변수명

  • 의도를 분명하게
  • 검색하게 쉽게
  • 명료한 이름

함수

  • 동사사용
    함수가 하는 일을 서술적으로 표현할 수 있는 이름 사용

  • 인자 개수 
    0개가 가장 좋으나 3개 이상은 피하기

  • 부수 효과 최소화

  • 명령과 조회를 분리
    수행하거나 답하거나 둘 중 하나만
    예: 객체 상태 변경 또는 객체 정보 반환 

좋은 주석

  • 법적(저작권 정보 및 소유권 정보)
// Copyright (C) 2003,2004,2005 by Object Mentor, Inc. All rights reserved.
// GNU General Public License 버전 2 이상을 따르는 조건으로 배포한다.
  • 정보 제공
  • 의도 설명
  • 결과 경고(시간 등)
  • TODO 주석
  • 중요성 강조

형식 맞추기

  • 적절한 행 길이
  • 변수는 사용하는 위치 최대한 가까이 선언
  • 호출하는 함수보다 호출되는 함수 먼저 배치
  • 개념적인 친화도가 높은 코드일수록 가까이 배치

리팩토링

  • 중복 없애기

code Style Guide

들여쓰기

논리적으로 종속되어 있는 코드를 쓸 때, 종속된 code block은 주인 code block보다 두 칸 들여쓰기 합니다.

 

변수이름

한 단어 표현, 구조적 부분보다 변수 존재 목적 고려 

 

Boolean 이름

is 또는 are 붙이기

 

function names 

동사로 시작, {verbObject} 형식 사용

 

이름이 대문자인 경우

  • 대부분의 사람들은 변수가 포함한 Class를 지시하기 위해 변수 이름의 첫 글자를 대문자로 씁니다.
  • 몇몇 사람들은 new 키워드를 사용한 함수에 한해서 대문자를 쓰기도 합니다.
  • 상수(constant), 즉 프로그램 전체에서 일정한 값을 가지는 변수의 이름을 정할 때는 그 변수의 이름은 전체를 대문자로 씁니다.

중괄호는 생략하지 말기

 

작은 따옴표 사용
JavaScript의 문자열을 쓸 때, 그 처음과 끝에는 작은 따옴표를 주로 쓰세요. 

HTML은 태그 속성에 주위에 큰 따옴표를 붙이기 때문입니다.

 

<그 외>

  • 세미클론 사용
  • 3항 연산자 남용 금지
  • switch 구문 사용 자제
  • 짧은 코드 지향
  • 이중 부정 사용 자제
  • 연산자 사이에 띄워쓰기
  • boolean 결과값 바로 리턴
if(charSet.size < text.length) {
  return false;
}
return true;