ITEM 12 : Prefer Member Initializers to Assignment Statements
(할당문 보다 멤버 초기화를 선호해라.)
■ 요약 및 장점
1. Initializers는 초기화 되지 않는 변수를 회피하는데에 가장 좋은 방법이나 완벽하지는 않다.
아래의 3가지의 경우에는 초기화를 사용하지 마라
① 오브젝트를 0 또는 null로 초기화 할 때.
(코드가 실행되기 전에 모두 0으로 기본적으로 초기화가 된다. 틀린 것은 아니지만 비효율적이다.)
② 모든 생성자(constructor)에서 동일한 초기화를 하지 않을 때.
(초기화된 변수를 생성자에서 또 초기화 할 때 처음 값은 바로 Garbage가 된다.)
③ 예외 처리가 불가능할 때.
( 초기화시에 에러가 날 수 있는 것은 생성자 않에서 초기화를 해줘야 한다.)
2. 모든 생성자에서 동일한 값으로 초기화 되는 Member variable은 멤버변수로 선언과 동시에 초기화를 해줌으로써,
차후에 추가되는 생성자에서 실수로 빼먹는 일이 발생하지 않게 할 수 있고, 가독성과 유지보수가 쉽게된다.
■ Terms
■ 해석이 모호하거나 중요한 구문
■ 단어
1. over time : 시간이 지남에 따라 (cf. overtime : 야근).
2. utilize : 활용하다, 이용하다.
3. regardless of : 상관없이
4. superfluous: 불필요한.
5. dutifully : 충실하게 , 의무적으로.
6. facilitate : 가능하게하다, 용이하게 하다.
7. propagate : 전파하다.
■ 피드백
'프로그래밍 > Effective C#' 카테고리의 다른 글
ITEM 14 : 중복되는 초기화 로직을 최소화 하라. (0) | 2014.05.30 |
---|---|
ITEM 13 : Static 멤버변수에 대해서 적절한 초기화를 하라. (0) | 2014.05.30 |
ITEM 11 :작은 함수들의 매력을 이해하라. (0) | 2014.05.30 |
ITEM 10 : 메소드 Overload를 최소화 하기 위해서 Optional Parameter를 사용하라 (0) | 2013.08.23 |
ITEM 9 : Conversion Operator를 회피하라. (0) | 2013.08.23 |