Ron
Ron

Reputation: 24235

how to go about developing an application for 3 Windows platforms

I want to rewrite an application that will be available on Windows desktop, Windows store, and Windows Phone.

Current state: Windows desktop is MFC app. Windows store and Windows Phone are sharing a PCL for backend and network comm.

I have to rewrite the whole app so that backend and APIs are added once and reused by 3 platforms.

One way I see is to rewrite the desktop app using .Net and reuse the PCL. But WPF .Net desktop apps are slow. Evernote Windows app was a .Net app until version 3, they moved to WTL C++ in 4.0; Evernote Windows moved to WTL

I am confused after reading that thread on Evernote. What other options do I have?

Upvotes: 0

Views: 174

Answers (2)

Jan S
Jan S

Reputation: 408

WTL is more efficient and flexible than MFC/.net for the windows desktop version. It has been recently updated.

Upvotes: 0

Kevin Gosse
Kevin Gosse

Reputation: 39007

Evernote dropping WPF was years ago. Most of the issues they faced were fixed in .NET 4.0. A native MFC app will often be lighter than a WPF app, but you can't really drop WPF altogether just on the assumption that it's slow. Note that the text editor of Visual Studio is entirely based on WPF.

That said, your options depend really on what you want. I'd recommend going for sharing the business logic in PCL assemblies, and write the desktop UI in WPF. Another option could be to write your whole application using WinRT, and betting on the fact that the next version of Windows 8 will allow for Windows Store application to execute in windowed mode (as announced a week ago during the Build).

Upvotes: 1

Related Questions