Actualmente, Esri ofrece 3 API web diferentes que se pueden descargar libremente.
¿Son todos iguales?
Si no, ¿cuáles son las fortalezas / debilidades relativas de cada una de estas API?
Actualmente, Esri ofrece 3 API web diferentes que se pueden descargar libremente.
¿Son todos iguales?
Si no, ¿cuáles son las fortalezas / debilidades relativas de cada una de estas API?
Respuestas:
Desde una perspectiva de gestión totalmente abstracta, las tres API son iguales. Representan código que se ejecuta en un navegador web, cuyo propósito es mostrar datos de mapas a un usuario a través de Internet. Puede crear una aplicación de mapeo exitosa y significativa con cualquiera de las API.
Además, el impacto de cada fortaleza / debilidad (diferencia) en cada API variará dependiendo de la audiencia. Los programadores estarán muy interesados en las características o inconvenientes del idioma, su gente de la red querrá conocer los requisitos de ancho de banda y los requisitos previos del servidor, la gente de GIS estará profundamente preocupada de que el mapa que se muestra esté realmente renderizado, y sus usuarios finales podrían preocuparse menos por todo eso y solo quiero hacer lo que sea que comenzaron a hacer.
Aquí hay algunos elementos clave sobre las tres API:
Manejo de recursos entre dominios : Silverlight y Flex pueden usar un archivo de "política de dominio cruzado" que existe en el servidor TARGET. Por lo tanto, los editores de mapas de terceros pueden otorgarle acceso a ellos. Con la API de Javascript, las solicitudes entre dominios generalmente se manejan mediante la implementación de una "página de proxy" utilizando el lenguaje del lado del servidor de su elección (PHP, JSP, ASP, etc.). Este "requisito flexible" no es un gran problema para la mayoría de los servidores, pero agrega otra capa de complejidad. Tenga en cuenta que no hay nada que le impida utilizar la misma página de proxy con las API de complementos, en caso de que su recurso deseado NO exponga los archivos necesarios entre dominios.
Gráficos : Silverlight y Flex le permiten pintar fácilmente píxeles arbitrarios en la interfaz de usuario. Javascript también permite esto, pero puede sobrecargar rápidamente la capacidad del navegador sin algún código y preparación cuidadosos. Del mismo modo, operar directamente con formatos binarios o tráfico de red solo se puede hacer en Javascript con la ayuda de servicios web.
Entorno del desarrollador : estoy sesgado aquí. Silverlight es mi favorito para el desarrollo. El entorno de Visual Studio es maduro, rápido y tiene un depurador de primer nivel. Javascript viene en segundo lugar; las herramientas disponibles ahora son mejores que nunca y siempre mejoran, pero parece que nunca podemos escapar de la maldición de "debes probar en todos los navegadores compatibles, y luego arreglar esas cosas raras que suceden". El entorno Flex parece anticuado e hinchado, y básicamente dificulta el desarrollo.
Silverlight / WPF Contras
Silverlight / WPF Pros
Supongo que todas estas respuestas son buenas pero un poco anticuadas. Flex y Silverlight eran sin duda muy popular en comparación con Javascript y algunos podrían argumentar que la construcción de aplicaciones utilizando estas API fue muy fácil, pero el mayor déficit que Flex y Silverlight tienen es que son PLUGINS . Y esa es la causa de su aniquilación.
Con el inicio de HTML5 y Javascript como la parte integral del desarrollo de aplicaciones web, el futuro es la API de Javascript. Con Adobe abandonando Flash y Silverlight 5 como la última actualización de Microsoft, Flex y Silverlight ahora son tecnologías redundantes.
Entonces, si está comenzando el desarrollo de aplicaciones Web GIS utilizando las API de ESRI, comience a aprender la API de Javascript, ya que ese es el único futuro en el futuro cercano.
Las API Silverlight y Flex son, con mucho, las API ArcGIS más populares y tienen la ventaja de ser complementos del navegador que proporcionan una experiencia de usuario mucho más rica y consistente, que a menudo es bastante importante con las aplicaciones web SIG. Silverlight es probablemente la mejor opción si favorece el desarrollo de .NET y Flex sería mejor para los desarrolladores que prefieren el entorno de Adobe. Flex también tiene la ventaja de una adopción más amplia como complemento de navegador que Silverlight.
La API de Javascript tiene la ventaja de un mayor alcance multiplataforma, ya que no se necesitan los complementos del navegador, por lo que se puede usar en dispositivos iOS como el iPhone y el iPad. La desventaja es que a menudo puede ver diferencias en el comportamiento de las aplicaciones en los distintos navegadores, como IE, Chrome, Firebox, Safari, etc.
En cuanto a sus características, realmente son muy similares, que es lo que esri siempre ha intentado hacer con ellas y parece comprometido a continuar manteniendo una fuerte paridad de características entre ellas en el futuro. Así que creo que realmente se reduce a la fortaleza de Flex y Silverlight como clientes ricos y alcance multiplataforma de Javascripts.
Hay un ArcGIS Viewer para Flex .
Hay un ArcGIS Viewer para Silverlight .
Pero actualmente no hay ArcGIS Viewer para Esri compatible con Esri, ni hay uno planeado .
Ver pregunta relacionada .
"Visor" es un término que Esri usa para las aplicaciones web que permiten al usuario crear aplicaciones web de mapeo sin escribir ningún código. Por lo general, estas aplicaciones de mapeo web creadas serán visores, pero con los complementos (o widgets) apropiados es posible crear visores con capacidades de edición.
Ninguno de ellos admite estándares abiertos, por lo que sufre el bloqueo del proveedor y el riesgo de perder su inversión si ESRI decide que 3 es 1 o 2 demasiado.