¿Por qué Android e iOS basan la representación de sus vistas en XML?

No basan sus puntos de vista en XML

Utilizan XML como lenguaje intermedio para expresar el modelo de vista antes de ser interpretados por sus respectivos mecanismos de dibujo.

Además, Android e iOS difieren significativamente en su uso de XML. Por ejemplo, Android ofrece un sabor XML (legible) que se puede leer por humanos para facilitar que el programador diseñe su diseño. Por otro lado, iOS usa XML como formato de documento para la salida del generador de interfaz (XCode). Entonces, en el caso de iOS no es legible ni escribible.

Sin embargo, el uso de XML en ambos es opcional. Puede implementar las vistas directamente en Java y Objective-C / Swift.

¿Por qué XML de todos modos?

Ahora, si te refieres a por qué el uso de XML para realizar la tarea mencionada anteriormente, tal vez como otros han respondido. XML se ha utilizado durante muchos años para expresar modelos jerárquicos (HTML, listas, formatos de datos en servicios web, … etc.). Por lo tanto, es una opción razonable representar el modelo jerárquico, ese es el modelo de vista.

Es probablemente la forma más fácil y legible para los humanos de establecer las vistas. También XML y vistas se mapean uno a uno bastante bien. Si una vista está dentro de otra vista, crea un nodo XML hijo. Si una vista está al lado de otra vista, cree un nodo XML hermano. Otras cosas como el tamaño, el color, etc. de la vista serían los atributos del nodo.

También Windows tiene XAML, que es esencialmente el mismo.

XML, si se realiza correctamente, es altamente legible para los humanos, pero también lo suficientemente estricto como para ser analizado fácilmente por una computadora.

XAML y FXML son ejemplos de que se está haciendo muy bien.

More Interesting

Me di cuenta de que la mayoría de las principales compañías de software tienen equipos de crecimiento. ¿Qué tipo de trabajo está involucrado y cómo estos equipos difieren entre las compañías?

¿Cuál es el mejor software para transmitir entrevistas de usuarios?

¿Cuánto ha mejorado el software de escritura de artículos generado por computadora en los últimos años?

Me gustaría explorar una página de búsqueda en un sitio web y descargar automáticamente algunos archivos en las páginas que figuran en los resultados. ¿Hay un buen software para hacer esto?

¿Por qué no es común el descuento en las implementaciones de wiki?

¿Debo crear cuentas de Amazon separadas para cada una de mis aplicaciones?

¿Cuál es el mejor software de gestión de proyectos y tareas para mi OSFL?

¿Dónde puedo escribir código PHP en la PC para ejecutarlo con éxito? ¿Es suficiente el bloc de notas o tengo que descargar cargar algún otro software?

¿Qué debo hacer para optimizar las palabras clave de mi aplicación en la Tienda de Windows Phone? Encontré un montón de ASO para iOS de Android, ¿es lo mismo con un teléfono con Windows?

¿Cuánto puede costar desarrollar una aplicación como maps.me?

¿Por qué las computadoras pueden vencer a los grandes maestros del ajedrez pero no pueden traducir cosas simples de un idioma a otro?

¿Cuál es el mejor software para preparar un video gráfico animado para presentar una presentación a los inversores?

¿Qué software se usa para los juegos de píxeles?

¿Cuál es el término utilizado para el software anterior que generalmente se reemplaza por un sistema ERP?

¿Qué software debo usar para hacer videos de YouTube con voz en off?