■ MemberNotNullWhenAttribute 클래스를 사용해 특정 멤버가 NOT NULL인 것을 보장하는 방법을 보여준다.
※ 조건부 not null 보장 : 특정 조건이 참일 때 멤버가 null이 아님을 컴파일러에게 알려준다.
※ 정적 분석 개선 : 컴파일러의 정적 분석을 돕고, 불필요한 null 체크 경고를 줄인다.
※ 코드 안정성 향상 : null 참조 예외의 위험을 줄여 코드의 안정성을 높인다.
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 |
using System.Diagnostics.CodeAnalysis; /// <summary> /// 뒤로 가기 가능 여부 /// </summary> [MemberNotNullWhen(true, nameof(Frame), nameof(this.frame))] public bool CanGoBack => Frame != null && Frame.CanGoBack; |