2010-12-19 15 views
10

Recientemente he leído algunos artículos/blogs/comentarios sobre el desarrollo y la historia de WPF y Silverlight. En algunos foros, muchos desarrolladores y usuarios critican el rendimiento de las aplicaciones de WPF (por ejemplo, Visual Studio 2010). En realidad, la cuota de mercado de Silverlight en comparación con Flash no es muy alta. En el PDC 2010, Bob Muglia dijo algo así como "nuestra estrategia y enfoque de Silverlight ha cambiado ..." y Microsoft quiere impulsar HTML5 en el futuro.El futuro del desarrollo de aplicaciones de escritorio (Windows): el futuro de WPF y Silverlight

Comencé a aprender WPF y Silverlight hace algunos meses y ahora debo preguntarme si debería seguir invirtiendo tiempo aprendiendo y practicando estas (en mi opinión) tecnologías muy buenas y potentes? ¿Tienen un futuro? ¿Las aplicaciones de escritorio de (Windows) (cliente) tienen futuro? ¿Las llamadas "aplicaciones de Internet enriquecidas" tienen futuro? ¿O HTML5 se convertirá en la "verdad absoluta", la plataforma principal para el desarrollo de software?

¿Cuál es su opinión y qué opina?

+2

Mejor ajuste para http://programmers.stackexchange.com. –

+2

He hecho la misma pregunta en programmers.stackexchange.com:http://programmers.stackexchange.com/questions/28078/the-future-of-the-windows-desktop-application-development-the-future-of- wpf-an – Elmex

Respuesta

7

Tengo preguntas muy similares a las suyas.Dado que estas preguntas son subjetivas, las personas tienden a tener respuestas diferentes sobre el futuro de WPF y Silverlight. Para mí, HTML5 nunca reemplazará una tecnología como WPF. Dicen "nunca digas nunca", pero incluso si es para reemplazarlo, no sucederá pronto. HTML5 me parece como Silverlight y Flash. No necesitaremos instalar complementos (incluso este reclamo es subjetivo porque Silverlight y Flash están avanzando, ¿HTML5 realmente los alcanzará por completo?). Además, la última vez que revisé algunas muestras de HTML5, noté que una vez que actualizas tu página web, las animaciones comienzan desde el principio, algo por lo que Flash es (para mí) muy famoso.

WPF es una tecnología diferente. Yo no soy un desarrollador web, pero sinceramente, odiaría tener que tener un montón de herramientas en mi caja de herramientas como HTML, CSS, Javascript. Puede utilizar un único marco en su lugar y desarrollar lo que desee en WPF. Es una gran tecnología aún por descubrir por muchos desarrolladores. Por supuesto, eso nos lleva a la pregunta "¿Voy con el escritorio o la web?"

En cuanto al futuro del desarrollo de escritorio, no va a ir a ningún lado pronto. Veo una tendencia creciente a desarrollar aplicaciones web, pero debemos darnos cuenta de que tanto el desarrollo de escritorio como el desarrollo en la nube tienen sus pros y sus contras. En este momento, encuentro que las aplicaciones web son lentas y supongo que las aplicaciones web no son tan capaces como las aplicaciones de escritorio. El futuro del desarrollo de Windows depende de la cuota de mercado de Windows. Si Microsoft puede mantener su monopolio y su aplicación es útil e interesante, no creo que los usuarios lo ignoren. Creo que la diferencia entre el desarrollo de escritorio y el desarrollo web se está difuminando y, a medida que las máquinas físicas se vuelven más y más potentes, habrá menos usuarios quejándose de problemas de rendimiento y actualizaciones frecuentes. ¿Por qué nos molestamos en preguntarle a los usuarios si desean actualizar su software? Creo que tales indicaciones son molestas como el infierno. Debería ser más preferible instalar las actualizaciones de forma silenciosa y dejar que el usuario use la aplicación la próxima vez que la ejecute.

P.S. WPF será más popular que WinForms, y es de esperar que MS suspenda este último día. Por lo tanto, le da una puerta más abierta para invertir en ella.

Además, siempre he odiado la idea de que mi aplicación se ejecute dentro de un navegador. Supongo que eso me vuelve egoísta, pero no quiero preocuparme por la falla de los navegadores, las incompatibilidades del navegador, los navegadores que aún no admiten ciertas características de una tecnología, etc.

10

Esto es extremadamente especulativa, pero algunos puntos clave:

  1. Nunca será una sola "verdad absoluta" en el desarrollo de software. Diferentes herramientas se utilizan para diferentes propósitos para abordar diferentes problemas.
  2. ¿Le gusta escribir software en WPF y Silverlight? ¿Les parece que son herramientas útiles para crear software de calidad? ¿Eres bueno en eso? Si es así, ¿por qué parar?
  3. Concéntrese más en escribir software y menos en las herramientas que utiliza. La familiaridad con una amplia selección de herramientas es importante, pero no permita que las herramientas desvíen su atención de lo que está haciendo ... escribir software. Si la herramienta se convierte en una muleta, algo está mal. Si estás haciendo una carrera por estar familiarizado con una herramienta determinada, algo está mal. Es mejor ser un "desarrollador de software que conoce a Silverlight" que un "desarrollador de Silverlight".
3

La cita de Bob Muglia fue malentendida y revelada de forma desproporcionada. El enfoque de Microsoft no se ha modificado de Silverlight como tantas personas supusieron de su entrevista. Es solo que Silverlight ahora se usa de diferentes maneras (aplicaciones comerciales, aplicaciones para el teléfono, etc.) y su enfoque ha cambiado en consecuencia.

y luego comparar a Flash no es realmente justo como Flash ha tenido una enorme ventaja. Flash se introdujo en 1996 y ha tenido un largo tiempo para extenderse. Lo que he observado más es el crecimiento de Silverlight a lo largo de los años. RiaStats.com ahora muestra una tasa de adopción del 63% para Silverlight 4, que es bastante buena. Todavía hay momentos en que la tasa de adopción es un poco baja para una aplicación convencional. Pero el hecho de que continúe creciendo muestra una promesa para el futuro de Silverlight.

En una nota un poco más subjetiva, soy un fanático de la portabilidad de Silverlight. El hecho de que todavía es una descarga de ~ 5MB y se ejecuta dentro o fuera del navegador en una PC o Mac es muy agradable. Y luego, Silverlight también se está utilizando en WP7, y pronto también en XBOX. Solo al aprender Silverlight te abres para desarrollar para una variedad de computadoras y dispositivos.

2

HTML impone una capa significativa de abstracción entre el desarrollador y el modelo de objeto visual. La recompensa por esta abstracción es enorme. Pero la abstracción significa que siempre habrá una brecha sustancial entre lo que puede hacer en una aplicación HTML y lo que puede hacer con la tecnología diseñada para interoperar directamente con el sistema operativo.

Las aplicaciones WPF se ejecutan en Windows. También lo hacen las aplicaciones de navegador, pero la diferencia es que las aplicaciones de WPF lo saben. Puede crear una aplicación WPF que sepa qué recursos están disponibles para el usuario de Windows actualmente conectado. Puede compilar una aplicación WPF que pueda interoperar con el sistema de archivos, las bases de datos y las colas de mensajes. Gran parte de esto puede hacerse mediante aplicaciones HTML si interactúan con servicios web, pero eso introduce aún más capas de abstracción.

En un sentido muy real, la pregunta, "¿WPF tiene un futuro?" es realmente, "¿Windows tiene un futuro?" Después de todo, si no vas a utilizar aplicaciones de escritorio, ¿por qué necesitas un sistema operativo de escritorio? Si bien no creo que esta sea una pregunta cuya respuesta es necesariamente evidente, tal vez ChromeOS, es decir, Android, nos sorprenderá a todos, no estoy perdiendo mucho sueño por eso en este momento.

Cuestiones relacionadas