[Effective Java] 지역 변수의 유효 범위를 최소화 하자. |
-
지역 변수의 유효 범위를 최소화하면, 코드의 가독성과 유지 보수성을 높이고 에러의 가능성이 줄어든다.
-
C와 같은 종전 프로그래밍 언어들은 지역 변수를 블록의 맨 앞에 선언해야 했으며, 일부 프로그래머들은 습관 때문에 계속 그렇게 한다.
하지만 이것은 버려야 할 습관이다.
자바에서는 명령문만 적법하다면 어디에든 변수를 선언할 수 있기 때문.
-
지역 변수의 유효 범위를 최소화하는 가장 강력한 방법은 그 변수가 최초 사용되는 곳에 선언하는 것.
만일 변수를 사용하기 전에 선언하면 혼란만 생긴다.
-
지역 변수의 선언과 초기화에 주의하자.
만일 변수를 올바르게 초기화하는데 필요한 정보가 충분하지 않다면, 충분하게 될 때 까지 선언을 미루어야 한다.
이런 규칙의 한 가지 예외는 try-catch 문이다.
만일 checked 예외를 발생시키는 메소드에서 변수가 초기화되면, 그 변수는 반드시 try 블록 내부에서 초기화되어야 한다.
-
Loop 는 변수의 유효 범위를 최소화하기 좋은 곳이다.
루프 변수의 내용이 루프 종료 후 필요 없다면 while 루프 대신 for 루프를 사용하자.
while 루프에 비해 for 루프는 코드가 짧아저 가독성이 좋아진다.
-
for loop 이디엄
for( int i=0, n = expensiveComputation(); i < n; i++ ){
doSth( i );
}
-
지역변수의 유효 범위를 최소화하는 마지막 방법은 메소드를 작게 그리고 한 가지 일에 집중하게 만드는 것이다.
'프로그래밍 놀이터 > 디자인 패턴, 리펙토링' 카테고리의 다른 글
[Effective Java] 라이브러리를 배우고 사용하자. (0) | 2017.01.30 |
---|---|
[Effective Java] 종전의 for 루프보다는 for-each 루프를 사용하자. (0) | 2017.01.26 |
[Effective Java] 외부에 제공하는 모든 API 요소에 대해 문서화 주석을 넣자. (0) | 2017.01.23 |
[Effective Java] null 대신 비어있는 배열이나 컬렉션을 반환하자. (0) | 2017.01.19 |
[Effective Java] 가변인자(varargs)를 분별력 있게 사용하자. (0) | 2017.01.17 |
댓글