Video: Desarrollo Movil Multiplataforma 2020 (Noviembre 2024)
En Microsoft Build de este año, la conferencia regular de desarrolladores de la compañía, lo que más me impresionó fue que la compañía parece haber resuelto la tensión entre las propias plataformas de Microsoft y necesita abrirse haciendo hincapié en la interoperabilidad y los esfuerzos multiplataforma.
Las sesiones múltiples se centraron en permitir que los desarrolladores elijan las partes de la pila de desarrolladores de Microsoft que desean usar: llevar aplicaciones Web, Android e iOS Objective-C a Windows; llamar a características y API de Azure desde aplicaciones que usan IDE e idiomas alternativos; o usando Visual Studio para construir aplicaciones multiplataforma.
Parece un gran cambio de énfasis.
"En el fondo, somos una compañía desarrolladora y una compañía de plataformas primero", dijo el CEO de Microsoft, Satya Nadella, al abrir la conferencia. Señaló que Microsoft fue fundada por dos desarrolladores, Paul Allen y Bill Gates, cuyo primer producto tenía como objetivo ayudar a otros desarrolladores.
Nadella dijo que la misión de Microsoft es "empoderar a cada persona y cada organización en el planeta para lograr más", y eso comienza con los desarrolladores. Dijo que la compañía se estaba centrando en tres "oportunidades de plataforma": la nube, Office y Windows.
Lo que más me impresionó, tanto en las nuevas funciones para Windows como para los productos en la nube de Azure, fue el énfasis en trabajar con otras plataformas y herramientas. Durante los últimos años, Microsoft se ha dado cuenta de que los desarrolladores ahora necesitan apuntar a plataformas más allá de Windows, particularmente plataformas móviles, pero lo que encontré interesante fue cuántas de las herramientas ahora están diseñadas para conectarse a otras tecnologías.
Scott Guthrie, vicepresidente ejecutivo del grupo Cloud and Enterprise, destacó que la característica Azure de la compañía es una solución de "espectro completo" que puede funcionar con aplicaciones nuevas y existentes, múltiples dispositivos, sistemas operativos y programación. idiomas, con herramientas que se ejecutan en la nube de Microsoft, en las instalaciones o en otras nubes.
Algo de esto no es nuevo. Por ejemplo, Microsoft lanzó anteriormente características para permitir que su plataforma Azure ejecute servidores Linux. Pero me impresionó la cantidad de sesiones que ahora hablan sobre no solo cómo tomar aplicaciones en diferentes sistemas operativos y llevarlas a Windows 10, sino también sobre cómo usar los servicios y herramientas de Microsoft para crear aplicaciones multiplataforma; y cuántos mostraron cómo puede usar los productos de Microsoft junto con otros idiomas y herramientas, particularmente aquellos de la comunidad de código abierto.
Cuando apareció el navegador por primera vez, Microsoft comenzó a hablar sobre una estrategia para "adoptar y extender" varios estándares web. Eso realmente no funcionó tan bien: Internet Explorer se atascó con los estándares de propiedad de Microsoft, como ActiveX, y no pudo moverse lo suficientemente rápido cuando comenzaron a aparecer nuevos estándares. De hecho, eso es algo que Microsoft finalmente está abordando con el nuevo navegador Edge que forma parte de Windows 10: es un navegador mucho más rápido y más basado en estándares.
Esta vez, Microsoft parece haber entendido realmente que muchos desarrolladores prefieren trabajar en herramientas de otras personas, particularmente de código abierto y basadas en la Web. En lugar de tratar de convencerlos realmente de que deberían pasar completamente a las herramientas de Microsoft, probablemente una batalla perdida, está trabajando duro para hacer que sus herramientas de desarrollador funcionen con las otras herramientas que existen, permitiendo que los desarrolladores mezclen y combinen los servicios que les gustan.
Entre los detalles había muchas cosas relacionadas con las plataformas de código abierto. Por ejemplo, Microsoft tuvo al CEO de Docker, Ben Golub, y al CTO de Azure, Mark Russinovich, en el escenario para mostrar cómo puede usar Docker estándar para tomar cualquier aplicación de Windows, "dockerizarla" y luego ejecutarla en cualquier servidor, incluido.NET que se ejecuta en Linux servidor.
Microsoft mostró emuladores de Windows y Android que se ejecutan en Visual Studio, aprovechando el Apache Cordova, un conjunto de API de dispositivos que los desarrolladores de aplicaciones móviles pueden usar para acceder a las funciones nativas del dispositivo.
La compañía anunció Visual Studio Code, un editor de código liviano gratuito que se ejecuta de forma nativa en Mac y Linux, y luego puede conectarse a los servicios de Visual Studio Online y Azure. (La compañía todavía empuja a Visual Studio 2015 como el IDE más completo, pero todavía está en Windows).
Gran parte del énfasis en estos días está en las aplicaciones de Software como Servicio, y más recientemente en "microservicios" más pequeños que otras aplicaciones pueden llamar. Microsoft demostró una amplia variedad de estos servicios y anunció Azure Service Fabric para vincular dichos servicios.
Hubo muchos servicios de datos nuevos diseñados para funcionar con algunos de los tipos más nuevos de aplicaciones. Estos incluyen un nuevo servicio de Almacenamiento de datos SQL (que competirá con cosas como AWS Redshift), que se demostró para mostrar cómo podría funcionar con el aprendizaje automático; y un nuevo servicio Data Lake que puede funcionar con el centro de eventos y los servicios de análisis de flujo para capturar información, y puede funcionar con las versiones de Hadoop de Cloudera y Hortonworks. Además, Azure SQL Database ahora incluye una opción de base de datos elástica y nuevas características de seguridad.
El discurso inaugural del segundo día incluyó más características de este tipo, con David Treadwell, vicepresidente corporativo del Grupo de Sistemas Operativos de Microsoft, y Kevin Gallo, director de Ecosistema y Plataforma de Desarrolladores, hablando sobre cómo Windows 10 tiene más de 2, 500 nuevas características de plataforma y 8, 000 nuevas funciones, con cosas nuevas que van desde la integración de Cortana hasta la transmisión de medios más rápida a DirectX 12, las nuevas API para juegos. (Una demostración de Square Enix fue realmente impresionante).
Mostraron cuán relativamente fácil es ahora crear aplicaciones "universales" que pueden escalar desde PC y teléfonos hasta Surface Hub de 84 pulgadas, el dispositivo Raspberry Pi 2 IoT y HoloLens. Pero nuevamente, también destacaron la facilidad de mover aplicaciones a Windows desde la Web, aplicaciones Win32 existentes, una aplicación Java o C ++ diseñada para Android y código Objective-C escrito para iOS de Apple. En todos estos casos, mostraron nuevamente cómo sería relativamente fácil para un desarrollador agregar funciones específicas de Windows, como Live Tiles o integración de Cortana, al código existente.
Más tarde, Steve Guggenheimer y John Shewchuk de Microsoft mostraron nuevas herramientas para construir aplicaciones multiplataforma, con algunas nuevas bibliotecas JavaScript y una versión empresarial de GitHub.
Quizás los ejemplos más interesantes vinieron de Joseph Sirosh, un vicepresidente corporativo que dirige el aprendizaje automático, que mostró una serie de aplicaciones sobre análisis predictivo, incluida una aplicación Fujitsu para "la vaca conectada" que usa la nube de Azure. (En esta aplicación, se usa un podómetro conectado a una pata de la vaca para recopilar datos sobre los pasos, que luego se usa para predecir cuándo las vacas están listas para la inseminación artificial, e incluso cómo optimizarlas para terneros machos o hembras).
También mostró el uso de las funciones de Machine Learning para crear sus propias API, que luego pueden ser llamadas por otras aplicaciones. También mostró cómo se puede usar el lenguaje R para crear API y demostró una aplicación que usaba su propio genoma para identificar posibles riesgos médicos. El aprendizaje automático es un tema candente en estos días, y Microsoft claramente está impulsando el concepto a sus desarrolladores.
En varias otras sesiones a las que asistí en los últimos días, me sorprendió el énfasis en el desarrollo multiplataforma y la cantidad de desarrolladores de Microsoft que realmente mostraban las herramientas de Microsoft trabajando con otras herramientas, como el código abierto Eclipse IDE para Java. Es un gran cambio de énfasis, que indica cuánto ha cambiado Microsoft en los últimos años.