[Duda]Winform o WPF al momento de desarrollar una Aplicacion

Iniciado por OscarCadenas_91, 6 Septiembre 2017, 19:09 PM

0 Miembros y 1 Visitante están viendo este tema.

OscarCadenas_91

Buenas, tengo esta duda cual de estas dos tecnologias es bueno usar al momento de desarrollar una aplicacion, a nivel de diseño y performance.

He estado leyendo por la red y vi que muchos recomiendan usar WPF ante Winform, ya que se puede personalizar y tiene capacidades mucho mayores de DataBinding entre otras cosas.
¿Segun ustedes cual creen que es mejor?


Eleкtro

#1
Hola.

Cita de: OscarCadenas_91 en  6 Septiembre 2017, 19:09 PM¿Segun ustedes cual creen que es mejor?

No es cuestión de creencias, estamos hablando de un hecho indiscutible: WPF es mejor, puesto que es la evolución directa de WindowsForms. En otras palabras: Winforms = pasado (y con pseudo-obsolescencia programada), WPF = presente y futuro (largo futuro por delante, sin fecha determinada de muerte).

Con respecto a temas de "diseño", WindowsForms se basa en la utilización de la API de Windows para renderizar con GDI+ (DirectShow), mientras que WPF lo hace con la API de DirectX (Direct3D), y éste puede aprovecharse de ciertas ventajas como la aceleración de hardware por GPU al renderizar, entre otros muchos beneficios destacables que afectan positivamente al rendimiento de WPF en comparación con la lenta tortuga de WinForms y su imperfección.

Respecto al rendimiento de tu aplicación, bueno, éste será proporcionál a la calidad de tus algoritmos, ni más, ni menos. No importa si WinForms o WPF, aunque en lo referente al instrumental interno de renderización ya hemos explicado que si, hay una gran diferencia donde WPF es más óptimo que WindowsForms, así que es posible que la velocidad de respuesta de la interfáz de usuario pueda ser algo mejor en WPF si lo comparásemos en igualdad de condiciones con WinForms.

Y respecto a la personalización, todo depende de como lo mires y lo que necesites. WPF es mucho más completo en todos los sentidos (y cada día lo es más, puesto que es una tecnología en continuo desarrollo, a diferencia de WinForms), y eso también incluye que la cantidad de parámetros relacionados con el aspecto y el comportamiento de un control (léase: sus propiedades) sea mucho más amplio en comparación con WinForms. Además en WPF se pueden usar plantillas (templates) para modificar sencillamente el aspecto de un elemento, pero en WinForms también se puede modificar el aspecto de los controles... solo que para hacer grandes cambios en la mayoría de ocasiones se requieren metodologías más tediosas (léase: Platform Invoke).

De todas formas, la respuesta a "¿que tecnología es mejor o más completa?" no debería ser un factor decisivo, me refiero, sin saber que es lo que realmente quieres lograr con la programación, para hacer cosas simples WinForms te servirá perfectamente y te resultará más sencillo. La sofisticación o el perfeccionismo de WPF implica un nivel bastante más elevado de dificultad al programar en comparación con WinForms (empezando por el simple hecho de que tienes que compaginar dos lenguajes al mismo tiempo C#\VB.NET + Xaml ), ten eso presente en tu decisión. Por otro lado, ir a por la tecnología más reciente y sofisticada (WPF) siempre será una buena decisión para todo.

Saludos.








OscarCadenas_91

muchas gracias por responder, despejaste mi duda
Empezare a aprender Xaml


saludos