none
Que me conviene a futuro ? RRS feed

  • Pregunta

  • Hola, me gustaría que me den una opinión acerca de las ventajas que tiene el WPF a comparación de una aplicación de windows forms. Hablo en entorno de aplicaciones de escritorio. Me conviene utilizar mas WPF que windows forms? Lo único que sé, es que se puede utilizar el Expression Blend 4 para el WPF para cambiar el aspecto de las aplicaciones.. y puedo utilizar xaml que trabaja como XML.. es correcto esto? Muchas Gracias
    lunes, 29 de octubre de 2012 3:36

Respuestas

  • Me conviene utilizar mas WPF que windows forms?

    en realidad depende de la aplicacion, si esta va a ser algo simples, quizas un part de textbox algun grid o combos daria lo mismo con cual lo realizaras ambos winforms o wpf cumplen a la perfeccion als espectativas

    ahora si vas a usar foms cambiantes respecto a los datos que pudieran requerir templates, aplciar estilos, etc, en ese caso ve por WPF, la parte grafica esta muy mejorado ya no deberas pelearte con GDI para realizar cosas de diseño asombrosas

    igualmente recomendaria que incursiones un poco mas en WPF antes de decidir si usarlo o no, porque el jugo de este se lo obtiene cuando se une a patrones como se MVVM (Model View ViewModel)

    Windows Presentation Foundation

    http://windowsclient.net/learn/

     

    Introduction to WPF

    puedo utilizar xaml que trabaja como XML.. es correcto esto?

    excacto WPF hace uso de xml para su notacion se la denomina XAML, es como programar con html para la web

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta WFgo lunes, 29 de octubre de 2012 14:24
    lunes, 29 de octubre de 2012 4:05
  • Windows Forms es la forma clásica de programar aplicaciones de Windows.  Siguen el modelo tradicional de una ventana por control y replican fielmente cómo trabaja el sistema operativo desde tiempos inmemoriales (~1990, jeje).

    WPF, por otra parte, es una forma totalmente nueva de conceptualizar una aplicación.  En WPF no existe tal cosa como ventanas hijas, sino que el formulario completo (que deja de llamarse formulario) es el escenario para una animación muy compleja que simula los distintos controles hijo.  Digo "simula" porque en realidad ningún control tiene su ventana propia.  Todos los controles son dibujados por la ventana padre directamente en la ventana padre.  Esto permite efectos y animaciones sorprendentes que nunca podrían realizarse en Windows Forms sin escribir unas 80.000 líneas de código adicionales.

    WPF utiliza DirectX para dibujar, así que en principio es rápido y eficiente.  Sin embargo en Windows XP no lo es si se utiliza transparencia (muchos efectos incluyen transparencia).  Sombras y otros deben ser suprimidos para Windows XP porque en XP estos no utilizan aceleración gráfica y más bien consumen CPU.

    En general, WPF es el futuro y Windows Forms el pasado.  Si va a aprender alguno de los dos, mejor que sea WPF.  Windows 8 es WPF y XAML.


    Jose R. MCP
    Code Samples

    • Marcado como respuesta WFgo lunes, 29 de octubre de 2012 14:24
    lunes, 29 de octubre de 2012 4:08
  • Hola WFgo.

    Yo pienso que no se trata de lo que te conviene a futuro ¿de que futuro hablamos?, las tecnologias van y vienen de modo que el futuro es incierto, si te dedicas al desarrollo de aplicaciones vas a tener que aprender ambas (si es que programas en windows), en cierto modo un programador siempre tiene que estar aprendiendo y cuanta mas base se tenga, mas facil y rapido se puede aprender.

    De modo que quitando esto, deberias enfocarlo a lo que necesites desarrollar, por ejemplo si te enfocas en web no vas a necesitar ni uno ni otro, si quieres que te sirva tambien para distribuiciones linux Winforms es lo correcto, si quieres aplicaciones para Windows 7 y 8 WPF es lo mas optimizado, ya que por algun motivo se ha degradado el rendimiento del GDI+ en estos sistemas. Antes de meterte a desarrollar algo relativamente amplio, no pienses en lo que te va a costar aprender (ya que vas a tener que aprender en todo), decidete por el destino y los recursos de la aplicacion final.

    Hazte la idea de que si usas .net la mayor parte del framework es comun para todo ASPNET, Winforms y WPF/Silverlight, incluso una buena parte para WinRT, ademas se puede combinar WPF y Winforms si es que te hace falta.


    Saludos
    David González
    MCP, MCTS
    Visita mi Blog en: http://www.dgzornoza.com/


    • Marcado como respuesta WFgo lunes, 29 de octubre de 2012 14:24
    • Editado David_González lunes, 29 de octubre de 2012 16:16
    lunes, 29 de octubre de 2012 13:11

Todas las respuestas

  • Me conviene utilizar mas WPF que windows forms?

    en realidad depende de la aplicacion, si esta va a ser algo simples, quizas un part de textbox algun grid o combos daria lo mismo con cual lo realizaras ambos winforms o wpf cumplen a la perfeccion als espectativas

    ahora si vas a usar foms cambiantes respecto a los datos que pudieran requerir templates, aplciar estilos, etc, en ese caso ve por WPF, la parte grafica esta muy mejorado ya no deberas pelearte con GDI para realizar cosas de diseño asombrosas

    igualmente recomendaria que incursiones un poco mas en WPF antes de decidir si usarlo o no, porque el jugo de este se lo obtiene cuando se une a patrones como se MVVM (Model View ViewModel)

    Windows Presentation Foundation

    http://windowsclient.net/learn/

     

    Introduction to WPF

    puedo utilizar xaml que trabaja como XML.. es correcto esto?

    excacto WPF hace uso de xml para su notacion se la denomina XAML, es como programar con html para la web

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta WFgo lunes, 29 de octubre de 2012 14:24
    lunes, 29 de octubre de 2012 4:05
  • Windows Forms es la forma clásica de programar aplicaciones de Windows.  Siguen el modelo tradicional de una ventana por control y replican fielmente cómo trabaja el sistema operativo desde tiempos inmemoriales (~1990, jeje).

    WPF, por otra parte, es una forma totalmente nueva de conceptualizar una aplicación.  En WPF no existe tal cosa como ventanas hijas, sino que el formulario completo (que deja de llamarse formulario) es el escenario para una animación muy compleja que simula los distintos controles hijo.  Digo "simula" porque en realidad ningún control tiene su ventana propia.  Todos los controles son dibujados por la ventana padre directamente en la ventana padre.  Esto permite efectos y animaciones sorprendentes que nunca podrían realizarse en Windows Forms sin escribir unas 80.000 líneas de código adicionales.

    WPF utiliza DirectX para dibujar, así que en principio es rápido y eficiente.  Sin embargo en Windows XP no lo es si se utiliza transparencia (muchos efectos incluyen transparencia).  Sombras y otros deben ser suprimidos para Windows XP porque en XP estos no utilizan aceleración gráfica y más bien consumen CPU.

    En general, WPF es el futuro y Windows Forms el pasado.  Si va a aprender alguno de los dos, mejor que sea WPF.  Windows 8 es WPF y XAML.


    Jose R. MCP
    Code Samples

    • Marcado como respuesta WFgo lunes, 29 de octubre de 2012 14:24
    lunes, 29 de octubre de 2012 4:08
  • Windows 8 es WPF y XAML.

    porque dices esto ?

    en Win 8 tambien se podria desarrolla con winforms, salvo que apuntes a las aplicaciones Metro, pero bueno si vamos al caso tambien seria html y javascript

    yo no lo analizaria por el pasado o futuro, sino por el costo beneficio de la aplicacion a desarrollar, la curva de aprendizaje de WPF no es minima, lleva su tiempo aprender de forma correcta WPF, mas aun si se aplican patrones como MVVM, o sea tiene que haber un beneficio en la aplicacion si es que se necesita aprender todo esto, no es algo para despreciar, si ninguna de las dos plataformas se conoce es logico que winforms se aprenda mucho mas rapido que WPF si la aplicacion requiere cosas basicas

    porque si es asi tendriamos que decir lo mismo de la instruccion goto y aun esta presente en el lenguaje, creo que nos vamos a jubilar y las aplicaciones winforms un seguran como parte de la plataforma

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    lunes, 29 de octubre de 2012 4:50
  • Correcto, por Metro.

    Jose R. MCP
    Code Samples

    lunes, 29 de octubre de 2012 5:39
  • Hola WFgo.

    Yo pienso que no se trata de lo que te conviene a futuro ¿de que futuro hablamos?, las tecnologias van y vienen de modo que el futuro es incierto, si te dedicas al desarrollo de aplicaciones vas a tener que aprender ambas (si es que programas en windows), en cierto modo un programador siempre tiene que estar aprendiendo y cuanta mas base se tenga, mas facil y rapido se puede aprender.

    De modo que quitando esto, deberias enfocarlo a lo que necesites desarrollar, por ejemplo si te enfocas en web no vas a necesitar ni uno ni otro, si quieres que te sirva tambien para distribuiciones linux Winforms es lo correcto, si quieres aplicaciones para Windows 7 y 8 WPF es lo mas optimizado, ya que por algun motivo se ha degradado el rendimiento del GDI+ en estos sistemas. Antes de meterte a desarrollar algo relativamente amplio, no pienses en lo que te va a costar aprender (ya que vas a tener que aprender en todo), decidete por el destino y los recursos de la aplicacion final.

    Hazte la idea de que si usas .net la mayor parte del framework es comun para todo ASPNET, Winforms y WPF/Silverlight, incluso una buena parte para WinRT, ademas se puede combinar WPF y Winforms si es que te hace falta.


    Saludos
    David González
    MCP, MCTS
    Visita mi Blog en: http://www.dgzornoza.com/


    • Marcado como respuesta WFgo lunes, 29 de octubre de 2012 14:24
    • Editado David_González lunes, 29 de octubre de 2012 16:16
    lunes, 29 de octubre de 2012 13:11
  • Muchas Gracias a los 3, cada uno en sus comentarios me ayudaron aclarar ciertas cosas.  Lo ideal, seria que me enfoque de lleno a los windows forms en su totalidad (experiencia tengo, pero no la necesaria como para migrar de lleno a WPF) Ademas en WPF hay controles que no se utilizan como normalmente los utilizo en los windows forms. Gracias!
    lunes, 29 de octubre de 2012 14:33