2011-03-26 10 views
7

Quiero crear una aplicación de escritorio para Windows, sé que hay un tipo de aplicación basada en Win32 API y otra basada en .NET Framework.confundido acerca de MFC/.net/WPF

¿Qué pasa con MFC, WPF, WinForm, etc.?

Por lo que he visto, son API gráficas, ¿cuál elegiría para mi aplicación?

¿Y hay buenos recursos (por ejemplo, libros) para aprender sobre la tecnología?

Respuesta

20

MFC es un marco para crear aplicaciones de GUI en C++ nativo (no administrado) como el C++ que aprendió en la universidad. .NET Framework admite la escritura de código administrado en C++/CLI, C#, VB.NET o en otros idiomas. Hay dos formas de crear una aplicación de GUI de escritorio en .NET Framework: Windows Forms y WPF. Windows Forms es anterior y ya no se encuentra en desarrollo activo. WPF es más nuevo.

Si conoce C++ y tiene la intención de implementarlo en máquinas sin .NET Framework, MFC es una buena opción. Crea UI de aspecto moderno y es compatible con las características de Windows 7. Si está dispuesto a aprender C# y desplegar en máquinas con .NET Framework, considere WPF o Windows Forms. Para su "arrastre básico de un botón, haga doble clic para editar el controlador, escriba algún código en las aplicaciones del administrador de clics", no hay diferencia entre ellos. WPF tiene mejor soporte para la frescura gráfica (degradados, transparencia) y para multitáctiles, artículos de Windows 7, etc. Algunas personas encuentran que es más difícil de aprender, pero creo que es solo porque aprendieron Windows Forms hace años. Si estás comenzando desde la nada, podrías aprender y también aprender la más nueva.

MSDN tiene muchos temas de "inicio" una vez que ha elegido un marco.

+1

+1, ¡excelente respuesta! Eso prácticamente lo resume :) –

+2

Olvidaste la principal ventaja de WPF sobre las formas de ganar: la aplicación WPF está usando el acelerador de video en tiempo de ejecución (por defecto) y no la CPU principal. Para la consideración del rendimiento, es muy importante saberlo. – Liran

+1

@Liran para algunos tipos de aplicaciones, es de hecho. Pero no para el tipo de aplicaciones de "tres cuadros de texto y un botón" IMO. –

Cuestiones relacionadas