弊社にはWin32/MFCの時代から現在までMicrosoftの開発プラットフォームや開発技術に携わり続け、深い知識をもったコンサルタント/エンジニアが豊富におります。
既存資産を活用する
既存資産としてWPFで作成されたコードを活用することができます。WPFとWinUI 3では、コード・XAML定義など、大部分に互換性があります。 一部の細かいコンセプトの違いにより、そのままでは移行できないところがありますが、弊社には様々なフレームワーク間移行を実施してきたノウハウがあります。そのノウハウを活かし、既存資産を可能なかぎり有効活用し、新規実装や変更部分を最小限とする手法で、新たなプラットフォームへの移行を促進します。 |
WinUI 3のパフォーマンスを活かす
前節のとおり、WPFとWinUI 3には大部分に互換性があり、コードをコピーするだけで動く箇所も多くあります。しかし、そのまま利用してしまうとWinUI 3の長所を活用できず、パフォーマンスが出ない箇所も出てきます。 前節とは逆の手法になりますが、そのまま移行可能な箇所であっても、あえて変更することで、WinUI 3へ移行した際のパフォーマンスの改善を促進します。 |
現時点のWindowsデスクトップフレームワークにおいて、利用実績が多く安定しているのはWPFといえるでしょう。最も普及し安心して利用できる選択肢であることについては疑う余地もありません。
しかし、WPFは基本となる設計が古いです。機能が不必要に多く複雑であったり、パフォーマンスの問題などで後になってから肉付けされ、作り替えられた箇所も多くあり、一貫性を損なわれているところもあります。
WinUI 3はこれらの諸問題を踏まえ、利用頻度の低いものを省略して不要な複雑化を取り除いています。また、コンテナとなる部品では最初から標準的に仮想化を前提とするなど、より現実的なアプリケーション開発に向けたプラットフォームとなっています。さらに、フレームワーク自体がネイティブコードで記述されており、多くのケースで高速に動作します。
安定性や利用実績などは今後の発展を待たれる面がありますが、頻繁にアップデートされており、不具合も少なくなってきています。
新たなシステム開発ではWinUI 3を選択肢として考えても良いタイミングになってきているのではないかと考えます。
まずはお問い合わせください。
お客様のアプリケーションの概要や背景、規模等についてお聞かせください。
何度かのディスカッション機会を持たせて頂いた上で、提案をさせて頂きます。