개발 일지/개발 도서 리뷰
[Effective C#] 2장 .NET 리소스 관리 - Item12 : 할당 구문보다 멤버 초기화 구문이 좋다
뽕구
2025. 5. 10. 16:51
728x90
반응형
저자 : 빌 와그너
역자 : 김명신
출판사 : 한빛미디어
ISBN :9791162240038
https://www.hanbit.co.kr/store/books/look.php?p_code=B8349603240
이펙티브 C#(3판)
더 나은 C# 코드를 작성하는 새로운 방법 50가지
www.hanbit.co.kr
2장 .NET 리소스 관리
Item12 : 할당 구문보다 멤버 초기화 구문이 좋다
때에 따라 클래스의 생성자를 여럿 설계하기도 합니다.보통 매개변수를 다르게 하죠.
아래처럼 멤버 초기화를 수행하여 생성자에서 멤머 할당 누락을 예방할 수 있습니다.
public class Controller
{
private List<int> numbers = new List<int>(); //멤버 초기화 수행
private List<string> names; //멤버 초기화 미수행
public Controller()
{
names = new List<string>(); //할당 구문 => 다른 생성자에서 누락 가능성 있음
}
public Controller(string name)
{
}
public Controller(string name, int age)
{
}
}
개발 업무하면서 생성자를 여러개 가져가는 생성자 오버로딩을 많이 활용했었습니다.
멤버를 초기화하는게 가독성에서도 좋다고 생각이 들었어요.
어떤 사항에서느 할당하는 것이 더 옳은지 책을 보고 이해했습니다.
할당으로 바꿔야하는 사항
- 객체를 0, null로 초기화
- 여러 생성자에서 동일한 객체 반복 초기화
- 예외 처리가 필요한 경우
마치며
개발할 때 할당, 초기화에 대해 큰 고민은 안했었어요.
어차피 안쓰면 컬렉션 처리될테니까요.
책을 읽으면서 할당과 초기화를 어떻게 나누어 처리 해야할지 알게 되었습니다.
읽어주셔서 감사합니다 :)
728x90
반응형