방프리
20.03.26 Chapter1. C# 언어 요소 (Item 6) 본문
Item 6: nameof() 연산자를 적극 활용하라
nameof 연산자는 Type이나 메서드, 속성 등의 이름을 반환하는 연산자로 주 목적은 하드코딩을 방지하기 위해
사용된다. 하지만 제네릭 타입을 사용할 경우 부분적 제약이 있어 모든 타입 매개변수를 지정한 닫힌 제네릭 타입에만
사용이 가능하다. nameof 연산자는 현대에 들어서 수많은 시스템에서 데이터가 오가는데 이 부분에서 데이터 타입에
의해 호환성이 망가지는 것을 어느정도 방지하기 위해 사용한다고 한다.
다음 코드는 INotifyPropertyChanged 인터페이스 구현부의 일부분이다.
속성의 이름을 변경할 경우 이벤트의 인자로 전달해야하는 문자열도 쉽게 변경이 가능하다.
예외처리 부분의 경우 매개변수로 문자열을 요구하는데 nameof() 연산자를 통해 편하게 전달이 가능하다.
특히 MCV 응용 프로그램이나 Web API 응용프로그램 개발 시에 경로를 지정할 때 간편하다.
개인적인 생각으로는 긴 경로는 string에 저장 후 파일을 직접적으로 컨트롤 하는 데이터는 변수와 파일명을 맞추어
접근이 가능하도록 하면 유지보수가 좀 더 쉬워지지 않을까 싶다.
'C# > Effective C#' 카테고리의 다른 글
20.04.14 Chapter1. C# 언어 요소 (Item 8) (0) | 2020.04.14 |
---|---|
20.03.29 Chapter1. C# 언어 요소 (Item 7) (0) | 2020.04.01 |
20.03.25 Chapter1. C# 언어 요소 (Item 5) (0) | 2020.03.26 |
20.03.24 Chapter1. C# 언어 요소 (Item 4) (0) | 2020.03.24 |
20.03.23 Chapter1. C# 언어 요소 (Item 3) (0) | 2020.03.23 |
Comments