인터넷에는 WPF 강의, 블로그들이 기술되어있는데 대부분 .NET Core 환경에서의 WPF 프로그램 강의만 올라와 있고 .NetFramework의 환경에는 기술된게 없었습니다.
회원님들 중에서 알고 계신 .NetFramework 환경 WPF 프로그램 강의나 기술서 정보를 공유해 주실 수 있을까요?
.NET Framework 환경이나 .NET 환경이나 WPF는 크게 다르지 않습니다.
.NET Framework의 프로젝트 파일 구조와 .NET의 프로젝트 파일 구조가 다른 부분에 있어서 솔루션의 전체 프로젝트 구조는 다를 수 있습니다.
하지만 XAML은 거의 바뀐 것이 없습니다.
또한 .NET Framework 4.7.2 이상의 버전을 쓰신다면 .NET Standard 2.0 이기 때문에 .NET Standard 2.0 의 누겟을 모두 이용하실 수 있습니다.
단지 Source Generator 같은 것은 안되겠죠.
Source Generator 같은 것이 안되면 안쓰는게 아니라 Source Generator가 만들어주는 코드를 손수 타이핑 하시면 됩니다.
답변 감사합니다!
그리고 가능하시다면, 기존 코드 유지보수가 아닌 새 프로젝트인 경우 불가피한 이유가 있는게 아니라면 .NET 10 이상의 WPF로 전환하시는것이 맞습니다.
.NET 10도 최대 2년? 정도 서비스를 지원하지 않을까요? 저희 회사는 무조건 .NetFramework를 써서 프로그램이 영구적으로 지속되는 서비스를 지원하다보니 .NET 10은 사용하기 꺼리는 부분도 있는데 말이죠…
음? 서비스를 지원한다는게 기술적인 버그 결함이 발생했을 경우의 지원일텐데
.NET Framework의 경우에는 2019년에 진작에 끝났습니다.
그저 4.8.1, 4.8.2가 나오는건 Windows에 종속되어 있고 Windows 10부터는 기본으로 설치되다보니 보안적 이슈가 발생했을 때 딱 그정도만 업데이트 해주는 겁니다.
오히려 지금이라도 웬만하면 얼른 .NET으로(.NET Framework 아님) 넘어가시는게 좋습니다.
아직 제가 .NET에 관한 지식이 해박하지 않아 저급한 질문일 수 도 있을 것 같습니다.
그렇다면 만약 .NET 10을 사용하고 있다가 .NET 11로 버전이 업데이트 되고 .NET 10 서비스가 종료되면
원래 사용하던 .NET 10 프로그램은 .NET 11로 버전 업데이트 될 수 있을까요?
말씀하신 대로 현대의 .NET은 매년 새로운 기능을 릴리스하고, 정해진 주기(LTS/STS)에 따라 지원을 순환시키는 ‘Evergreen’ 전략을 취하고 있습니다. 이는 비단 .NET뿐만 아니라 모든 최신 IT 기술들이 보안과 생산성을 위해 채택하고 있는 글로벌 표준이기도 합니다.
물론 현실적인 여건상 이러한 흐름을 따라가기 힘든 경우도 분명 존재합니다. 만약 조직 내에서 향후 IT 인력 수급이 불투명하거나, 해당 사업 영역을 점차 축소(Deprecated)할 계획이어서 더 이상의 기술 투자가 어려운 상황이라면, 말씀하신 .NET Framework가 유일한 대안이 될 수 있습니다.
제가 앞서 언급한 '불가피한 사유’란 바로 이런 경우를 의미합니다. 즉, 지속적인 성장과 확장이 필요한 서비스라면 최신 .NET이 필수적이지만, '현상 유지 후 종료’가 목표인 레거시 시스템이라면 .NET Framework에 머무르는 것도 경영상의 선택이 될 수 있다는 점에 동의합니다.
저급한 질문이라니요. 당치 않습니다! ![]()
지금까지의 경험으로 봤을 때, .NET Framework → .NET으로 전환할 때처럼 급작스런 변경은 거의 일어나지 않았습니다. 매년 릴리스되는 추세를 잘 따라오시면 거의 어려움이 없습니다.
다만 WPF의 경우 서드파티 컴포넌트를 사용하시는 경우가 있어 이들 서드파티 업체들이 꾸준히 지원을 이어가는지는 다른 영역이라 그 부분이 문제가 될 수는 있겠습니다.
우선 서비스가 종료된다는 표현이 낯섭니다.
.NET 은 계속 다운로드해서 쓸 수 있습니다.
이미 지원 종료된 .NET Framework 의 경우도 그렇고 지난 .NET Core나 .NET 5 6 7 등 다 사용가능합니다.
.NET은 인터넷 서비스가 아니므로 다운로드해서 원하는 버전을 사용하시면 됩니다.
다만 앞으로도 .NET은 계속 신규로 나올 것이고 .NET Framework는 구조부터가 지원이 끝났기에 더이상의 발전은 없습니다. 앞서 말씀드린대로 .NET Framework는 Windows OS에 무조건 설치가 되어 배포되다 보니 Windows OS의 보안과 연계되어 있어서 보안패치만 이뤄질겁니다.
.NET Core 3.0부터는 이후 .NET 5, 6, 7, 8, 9, 10이 모두 그냥 신규버전나오면 .NET 버전만 올리는걸로 성능적인 개선이 가능하도록 편하게 구성되어 있습니다.
물론 Visual Studio를 사용하신다면 Visual Studio 2019는 .NET 5까지만, .NET 6 ~ .NET 9까지는 Visual Studio 2022, .NET 10은 Visual Studio 2026이 필요하긴 합니다.
Rider를 구독중이라면 무관하고, visual studio code를 통핸 C# DevKit을 사용하셔도 됩니다.
다만 WPF를 하신다면 WPF는 Visual Studio에서 개발하는 것이 가장 편합니다.
.NET 9를 사용하다가 말씀하신 서비스 종료라는 표현이 맞는지 모르겠어도 2040년이 되셔서도 .NET 9와 Visual Studio 2022를 구하실 수 있으면 어디서든 개발은 가능하실 겁니다. 다만 사용하시는 Nuget 패키지들의 최신 버전을 사용하지 못할 수는 있겠습니다. 그리고 .NET 9는 .NET 11이 나오면서 기술적으로 종료가 될 것입니다. LTS는 3년, STS는 2년으로 알고 있습니다.
그럼에도 불구하고 .NET 9는 사용가능합니다.
답변 주신 내용 덕분에 궁금증이 해소되었습니다. 감사합니다~