
C# 11이 개발 완성 단계에 가까워졌다. 마이크로소프트는 현재 객체 초기화 개선 및 제네릭 수치 계산 지원 등의 기능을 추가 중이라고 밝혔다.
해외 온라인 매체 인포월드에 따르면, 객체 초기화를 이용하면 개발자는 불변 객체나 가변 객체에 상관없이 생성자와 객체 초기자를 쉽게 지원할 수 있다. 제네릭 수학(generic math)을 이용하면, 다수의 숫자 데이터 타입에 대하여 하나의 알고리즘만 작성해도 된다. C#과 .NET을 이용하여 머신러닝, 통계나 기타 수치 계산 중심 애플리케이션 개발이 수월해진다. 부호 없는 오른쪽 시프트 연산자, 인터페이스의 정적 추상 멤버와 정적 가상 멤버 등의 기능도 추가된다.
마이크로소프트는 C# 11의 최신 기능이 8월 9일 자로 배포된 비주얼 스튜디오 2022 17.3 IDE로 제공하는 기능이라고 발표했다. 기존에 발표된 C# 11의 업데이트는 로우 스트링 리터럴, 리스트 패턴 등을 다룬다. 개발자 효율 향상과 관련해서는 비주얼 스튜디오 2022 17.3부터 C# 11에서 “nameof” 연산자를 메서드 매개변수에 이용할 수 있다. 이 연산자는 메서드의 속성 선언에 이용할 수 있다.
또한 컴파일러는 구조체 실행 시 스트럭트 타입이 디폴트 값으로 초기화되도록 한다. 즉 생성자로 초기화되지 않은 필드나 자동 프로퍼티는 컴파일러에 의하여 자동으로 초기화된다. 따라서 필드를 모두 지정하지 않은 구조체도 컴파일되며, 초기화되지 않은 모든 필드는 디폴트 값으로 세팅된다.
패턴 매칭과 관련해서는 스트링에서 특성 값이 존재하는지 확인하는 데 이용되는 알고리즘이 Span<char> 나 ReadOnlySpan<char> 등의 변수도 이용할 수 있다.
한편, 비주얼 스튜디오 2022의 최신 프리뷰와 .NET7의 프리뷰를 다운로드하여 C# 11의 신기능을 이용해 볼 수 있다. .NET 7의 최종 버전은 11월 중으로 배포될 예정이다.
[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]