자세히 보기

Paul Krill
Editor at Large

마이크로소프트, C# 12 개선 사항 공개

마이크로소프트가 닷넷8과 비주얼 스튜디오 17.6을 통해 C# 12의 새 기능을 공개했다.

마이크로소프트가 이번에 공개한 C#12의 새로운 기능은 3가지로 ▲비레코드 클래스 및 구조체의 기본 생성자 ▲모든 타입의 별칭 사용 ▲람다식 매개변수의 기본값의 변경으로 구성됐다. 새로운 기능은 4월 11일에 출시된 닷넷8 프리뷰 3에 포함되어 있다. 비주얼 스튜디오 17.6 프리뷰 버전 사용자도 C# 12의 새 기능을 이용할 수 있다. C# 12와 닷넷 8의 공식 버전은 11월에 출시될 예정이다.

기본 생성자를 사용하면 개발자는 클래스 선언 자체에 매개 변수를 추가하고 클래스 본문에서 이러한 값을 사용할 수 있다. 예를 들어 개발자는 매개 변수를 사용하여 프로퍼티를 초기화하거나 메서드 및 프로퍼티 접근자의 코드에서 매개 변수를 사용할 수 있다. 기본 생성자는 레코드에 대한 위치 구문의 일부로 C# 9에서 레코드에 도입되었는데 C# 12에서는 이를 모든 구조체와 클래스로 확장했다.

또한 C# 12는 별칭 지원을 모든 타입으로 확장한다. using이라는 별칭 사용 지시문을 사용하여 명명된 타입뿐만 아니라 모든 유형의 타입을 지정할 수 있는 식이다. 튜플 타입, 배열 타입, 포인터 타입 등 기타 안전하지 않은 타입에 대해 별칭을 만들 수 있다.

마지막으로 C# 12는 개발자가 매개변수의 기본값을 정의할 수 있도록 함으로써 람다 표현식을 개선했다. 구문과 규칙은 로컬 함수나 메서드에 인수의 기본값을 추가하는 것과 동일하다. 마이크로소프트는 “이번 개선으로 람다식의 활용도가 더 높아질 것”이라고 설명했다. 마이크로소프트는 이번 변화와 관련된 피드백을 공식 깃허브 링크를 통해 받고 있다. 

닷넷8 프리뷰 3에는 빌드 경로, 워크로드, Microsoft.Extensions 및 컨테이너에 대한 변경 사항과 Arm64용 JIT 컴파일러의 성능 개선 및 동적 PGO(프로필 가이드 최적화)가 포함되어 있다. 2022년 11월에 출시된 닷넷7은 성능 향상, 컨테이너 및 클라우드 네이티브 도구, .NET MAUI 및 기타 .NET 라이브러리 및 프레임워크에 변화를 주고 C#의 기능도 업데이트 하고 있다. 
dl-ciokorea@foundryco.com

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

이 저자의 추가 콘텐츠