728x90
반응형
C# 14 신기능 실전 예제: 널 조건부 할당(Null-Conditional Assignment) 활용법
C# 14에서는 널 조건부 멤버 접근 연산자(?.)와 ?[]를 **할당(=, +=, -= 등)**의 왼쪽에서도 사용할 수 있게 되었습니다. 이 기능을 활용하면 객체가 null인지 직접 검사하지 않고도 안전하게 값을 할당할 수 있어 코드가 더욱 간결하고 안전해집니다
1. 기존 코드와의 비교
기존에는 객체가 null인지 확인한 뒤에 속성 값을 할당해야 했습니다.
if (customer is not null)
customer.Order = GetCurrentOrder();
2. C# 14 방식: 널 조건부 할당
이제는 아래처럼 한 줄로 처리할 수 있습니다.
customer?.Order = GetCurrentOrder();
- 만약 customer가 null이면 GetCurrentOrder()는 호출되지 않고, 아무 일도 일어나지 않습니다.
- null이 아닐 때만 안전하게 할당이 이뤄집니다.
3. 복합 할당 연산자에도 사용 가능
널 조건부 연산자는 +=, -= 등 복합 할당 연산자와도 함께 사용할 수 있습니다.
customer?.Points += 100;
- customer가 null이 아니면 Points에 100이 더해집니다.
- null이면 아무 동작도 하지 않습니다.
4. 배열/인덱서에도 활용
order?.Items?[0] = newItem;
- order와 Items가 모두 null이 아닐 때만 0번째 아이템을 바꿉니다.
5. 실전 활용 팁
- 여러 단계의 객체 접근에서 null 체크 분기를 줄이고, 코드 가독성을 높일 수 있습니다.
- 복잡한 UI 바인딩, 데이터 모델 갱신, 이벤트 핸들러 등에서 유용하게 활용할 수 있습니다.
요약
- 널 조건부 할당은 null 체크와 값 할당을 한 번에 처리해 코드가 간결해집니다.
- 복합 할당 연산자와 배열에도 적용할 수 있어 실무에서 활용도가 높습니다.
- C# 14의 대표적인 생산성·안정성 강화 기능입니다ㅍ
728x90
반응형
'C#' 카테고리의 다른 글
초보자를 위한 C# 변수명 규칙과 네이밍 표기법 완벽 정리 (0) | 2025.06.16 |
---|---|
C# 개발자가 자주 쓰는 라이브러리와 실전 유용 함수 모음 (0) | 2025.06.16 |
C# 패턴 매칭: 속성·목록 패턴 실전 활용과 예제 (0) | 2025.06.11 |
C# 실전 개발에서 자주 발생하는 오타와 실수, 그리고 코드 리팩토링 전후 비교 (10) | 2025.06.04 |
LINQ 패턴으로 실무 C# 한 단계 업그레이드 (3) | 2025.06.02 |