새로운 프로젝트를 하기위해 시간이 좀 생겨서 MFC의 노후화(?)로 인해
다른 언어 C#으로 배우려고 합니다. 선택지는 WInform과 WPF가 있는데
아무래도 진보적인 WPF를 해보려고 하는데
제가 개발할려는 프로젝트랑 맞는지에 대해서 선배님들의 조언을 구합니다.
작업은 CAD 작업같은 그래픽이 필요하고요. Bitmap의 Data를 Load하여
이 Data를 수정/변경 또는 확대 축소하여 보여주는 프로그램입니다.
UI는 복잡할것이 별로 없고요. 포토샵 비슷한 것이 되겠네요.
다만 Data는 많을수도 있어요.
WPF로 이걸 만들기 적합한지 궁금하네요.
기존에는 GDI/GDI Plus로 했었습니다.
WPF에서 이런작업을 한다면 DirectX같은걸 이용해야 하나요? 아니면 GDI등을 그대로 써도되나요?
WPF에서 화면을 구성하는 방법은 XAML이라는 XML기반 언어를 사용하는데 바로 익숙하게 다루기에는 학습 커브가 좀 있습니다. 그런 면에서는 윈폼이 더 접근이 좋을 수 있어요.
윈폼 역시 GDI/GDI Plus를 이용할 수 있기 때문에 비슷한 감각으로 코딩이 가능합니다.
윈폼 역시 DirectX를 사용할 수 있어요. 관련된 라이브러리는 NuGet에서 검색이 가능합니다.
C#언어를 배워야 하는과정에서 WInform 을 건너뛰구 바로 WPF로 가도 괜찮을까요?
WPF는 그 구성이 MFC와 상당히 상이하기 때문에 유사한 윈폼이 접근성이 좋은 것은 사실입니다.
회사에서 D-Day가 있는 프로젝트라면 WPF보다는 윈폼을 추천 드리고요,
개인 프로젝트의 경우 조금 더 시간을 둬서 WPF를 바로 접근해 보시는 것도 나쁘지 않습니다. 왜냐하면 CAD 작업의 주요 기능이 그리기일 것으로 예상되는데, WPF의 모든 기능을 다 알지 않고 필요한 기능만 빠르게 익숙해지셔도 가능할 것 같습니다.
그런데 그전에 C# 언어 자체를 학습하는 시간도 고려해야 합니다. C++에 능숙하시다면 짧은 기간 안에 습득이 가능하시겠지만 어쨌든 1개월 이상의 학습 시간은 할당하셔야 합니다.