이전 페이지


추천사 ~ 1장. 깨끗한 코드

기억해야할 것들


// 나쁜 예
int d; // 경과 시간(단위: 날짜)

// 좋은 예
int elapsedTimeInDays;
int daysSinceCreation;

좋은 이름을 사용하면 주석 없이도 변수 이름만 보고도 용도를 알 수 있다.

import java.util.**ArrayList**;

String[] account**List**; // 나쁜 예

String[] accounts; // 좋은 예
ArrayList<String> accountList; // 좋은 예

“List”라는 단어는 특수한 의미로 쓰이므로 실제 List가 아니라면 그릇된 정보를 제공하는 셈이다.

차이를 구분하기 힘든 이름 사례

genymdhms → generationTimestamp

modymdhms → modificationTimestamp

*ymdhms - Year Month Day Hour Minute Second

g_ : global variable

m_: class member

s_ : static variable of class

c_ : static variable of function

타입을 변수명에 접두어로 붙여 표현하는 방식.

지금은 IDE의 기능이 좋아져 color로 구분해주므로 이제 사용하지 않는다.

[X] IShapeFactory & ShapeFactory

[O] ShapeFactory & ShapeFactoryImp or CShapeFactory

개인적으로 Imp가 Java의 implements 구문과 엮여서 더 보기 좋아보인다.