차세대 CodePorting.Translator Cs2Cpp 출시

CodePorting.Translator Cs2Cpp의 대규모 아키텍처 업데이트 출시를 발표합니다. 차세대 트랜슬레이터는 이전 버전에서 사용되던 레거시 NRefactory 라이브러리를 대체하여 Roslyn을 활용하도록 완전히 재작성되었습니다. 이번 전환은 C# 5로 제한되었던 구버전의 중대한 아키텍처적 한계를 해결합니다. Roslyn을 도입함으로써 새로운 트랜슬레이터는 최신 언어 기능(현재 C# 13까지)을 기본적으로 지원하며, 언어가 계속 발전함에 따라 향후 C# 버전도 지원할 수 있는 준비를 마쳤습니다.

이전까지 최신 C# 코드베이스를 C++로 이식하는 과정에서 제한을 겪으셨다면, 이번 릴리스를 통해 이러한 장벽이 제거되고 프로젝트의 새로운 가능성이 열립니다.

확장된 언어 지원

Roslyn의 의미론적 분석으로의 전환을 통해 이전에는 지원되지 않았던 수많은 강력한 언어 기능을 사용할 수 있게 되었습니다. 새로운 트랜슬레이터는 다음과 같은 복잡하고 현대적인 패턴을 원활하게 처리합니다.

  • 비동기 워크플로 및 이터레이터: async/await(Task 템플릿에 래핑된 상태 머신으로 변환) 및 yield 연산자를 완벽 지원합니다.
  • 레코드 및 기본 생성자: 참조 및 구조체 레코드, with 키워드, 기본 생성자의 완전한 변환을 지원합니다.
  • 고급 패턴 매칭: switch 식, 속성 및 위치 패턴, C# 11 리스트 패턴을 지원합니다.
  • 현대적인 데이터 구조: Value Tuples, Span<T>, Memory<T> 및 stackalloc의 변환을 지원합니다.
  • 구문 설탕(Syntactic Sugar): LINQ 쿼리 구문, 식 본문 멤버, 문자열 보간, null 전파(?. 및 ?[]), 자동 속성 초기화를 지원합니다.
  • 최신 추가 기능: 파일 범위 네임스페이스, 함수 포인터, C# 12 컬렉션 식 등 최근 언어 확장 기능을 지원합니다.

이러한 현대적 구성 요소가 C++에 어떻게 매핑되는지에 대한 자세한 기술 설명은 새로운 기능 문서를 참조하십시오.

통합

번역 파이프라인 업그레이드는 간편하게 설계되었습니다. 차세대 트랜슬레이터는 기존 워크플로의 드롭인 대체제로 작동합니다. 동일한 명령줄 인수를 허용하고, 동일한 구성 파일을 읽으며, 이미 익숙한 코드 속성을 그대로 존중합니다.

새로운 엔진은 C# 프로젝트가 의미론적으로 올바를 것을 요구하므로, Roslyn 컴파일러의 모든 기능을 활용하여 코드가 높은 정밀도로 변환되도록 보장할 수 있습니다. 기존 CI/CD 파이프라인에 통합하든 로컬에서 테스트하든, 마이그레이션 경로는 매끄럽고 잘 문서화되어 있습니다.

이전 트랜슬레이터로는 처리하기 어려울 만큼 최신 C# 프로젝트를 보유하고 계셨다면, 지금이야말로 다시 시도해 볼 완벽한 시기입니다.

프로젝트 및 빌드 환경 전환에 대한 자세한 지침은 마이그레이션 가이드를 참조하십시오.

문서 및 다운로드

새로운 트랜슬레이터 설정, 기능 이해, 빌드 스크립트 통합을 돕기 위해 종합적인 문서 포털을 공개했습니다.

관련 뉴스

관련 동영상

관련 기사