c# - tutorial - wpf que es
WPF o formularios de Windows (4)
He estado jugando con las aplicaciones de la consola C # durante aproximadamente un año y quiero pasar a la creación de aplicaciones GUI. Nunca he hecho ningún desarrollo de GUI además de las aplicaciones básicas de Java, pero quiero seguir usando C #. ¿Debería comenzar a aprender Windows Forms o ir directamente a WPF? ¿Hay una gran diferencia? ¿WPF se basa en Windows Forms o son totalmente diferentes?
Ambas tecnologías tienen sus pros y contras.
WPF es mejor para el desarrollo multiplataforma y para crear GUI ''llamativas''. Sin embargo, requiere un .NET framework más nuevo que WinForms y requiere una GPU compatible dx9 o superior (que la mayoría de la gente tendrá).
Pero es un poco más complicado crear la interfaz / cablear todos los eventos, etc.
WinForms sigue siendo una tecnología potente que a menudo puede desarrollarse a un ritmo más rápido que WPF. Sin embargo, al final, ambas tecnologías se pueden utilizar para lograr lo mismo. Sin embargo, WPF es el estándar ''más nuevo''.
WinForms se usa comúnmente para desarrollar aplicaciones comerciales, mientras que WPF se usa a menudo para crear más bits de software, aplicaciones, etc. basados en el usuario final.
Estas dos son tecnologías totalmente diferentes. Ofrecen algunas capas de interoperabilidad en ambas direcciones, pero aparte de eso no tienen nada en común. Windows Forms es más o menos un contenedor ligero sobre Win32 / MFC , lo que significa que su extensibilidad en .NET no es tan buena en todos los casos. WPF es un nuevo marco de interfaz de usuario implementado desde cero. WPF también es mucho más flexible cuando se trata de personalizar los tipos existentes.
Sin embargo, al menos desde mi experiencia, Windows Forms parece ser el marco de interfaz de usuario de escritorio más comúnmente utilizado en la industria. Windows Forms no se puede usar con desarrollo web aunque WPF ofrece aplicaciones Silverlight y XBAP.
Si ya has hecho algún desarrollo de UI, me atrevería a decir que Windows Forms es más fácil de aprender ya que sigue paradigmas de programación más tradicionales. El modelo de programación de WPF es bastante diferente a esto. Si bien WPF se puede usar de la misma manera que Windows Forms, la mayoría de sus beneficios no se logran hasta que acepte el enlace de datos y la encapsulación WPF.
A pesar de afirmar algunos puntos a favor de que Windows Forms elija WPF sobre Windows Forms sería una obviedad para mí si todo lo que quiere hacer es aprender un marco de interfaz de usuario. Es superior a Windows Forms en todos los aspectos. ¡Ojalá la industria del software en general lo adapte a una escala mayor! (Aunque no es como si alguien más escribiera aplicaciones de escritorio desde que obtuvimos la web).
Si recién está empezando, vaya directamente a WPF.
Te permitirá comenzar a crear interfaces enriquecidas mediante el marcado para definir tu interfaz sin enseñarte los posibles malos hábitos (para WPF) que aprenderías de Windows Forms.
WPF proporciona instalaciones muy ricas para construir interfaces de usuario extremadamente complejas. Simplifica la integración de gráficos acelerados por hardware en su interfaz. Sin embargo, el diseñador de Visual Studio WPF es realmente malo (casi nunca lo uso). También creo que WPF es mucho más complejo y es más difícil comenzar por él. Pero esto es subjetivo, por supuesto.