Почему XML используется для создания макетов пользовательского интерфейса в Android?

Я хотел бы знать, почему мы используем XML для создания макетов пользовательского интерфейса в Android . Я знаю, что он отделяет логику логики от дизайна, но каково значение XML, кроме этого?

Также я хотел бы знать значение автогенерированного файла R.java в этом. Все, что я знаю, что оно создается в соответствии с изменениями в ресурсах и помогает нам получать доступ к виджетам и ресурсам через их идентификаторы.

Было бы здорово, если бы кто-то мог дать четкое представление об этих двух аспектах.

В отличие от того, что все говорили о том, что xml является простым и эффективным. Вот что я читал из Hello Android от Ed Brunnette, который имел смысл.

Android оптимизирован для мобильных устройств с ограниченной памятью и мощностью, поэтому вам может показаться странным, что он широко использует XML. В конце концов, XML – это подробный, удобочитаемый для человека формат, не известный своей краткостью или эффективностью, верно?

Несмотря на то, что вы видите XML при написании своей программы, подключаемый модуль Eclipse вызывает компилятор ресурсов Android aapt для предварительной обработки XML в сжатый двоичный формат. ** Этот формат, а не оригинальный текст XML, хранится на устройство.

Это был тот ответ, который я искал. (Извините, если мой вопрос означал иначе).

Причина, по которой был выбран XML, объясняется главным образом его знакомством и количеством инструментов IDE, которые его поддерживают. Разработчики могли бы выбрать JSON, например, и все еще скомпилировали это для двоичного файла. Автогенерированный файл R.java является помощником для IDE, так что вы можете получить преимущество автозаполнения, когда хотите получить доступ к ресурсу.

XML легко анализировать и манипулировать программно, это в основном древовидная структура, и большинство инструментов создания пользовательского интерфейса уже используют его. Это действительно не имеет ничего общего с развязкой бизнес-логики, потому что вы можете определить Java-код на Android, используя шаблон Model-View-Controller.

Автогенерированный файл R.java является помощником для IDE, так что вы можете получить преимущество автозаполнения, когда хотите получить доступ к ресурсу. Это также мешает вам делать глупые ошибки, поскольку компилятор будет жаловаться, если вы попытаетесь получить доступ к ресурсу, который вы не определили. Если вы использовали простой файл свойств, который не знал бы до тех пор, пока не будет использован «ключ», который вы используете, отсутствует.

То же, что и для Silverlight с xml, ответ простой xml дает возможность интеграции и масштабируемости. R.java – для индексации, когда организованные вещи никогда не плохи. Извините мой английский

Одна из возможных причин заключается в том, что вам не нужно иметь какую-либо рабочую java внизу, чтобы иметь возможность увидеть визуальный макет интерфейса, над которым вы работаете. Элемент / страница xml ui – это, по сути, документ, который вы можете анализировать и отображать. Если бы это был исходный файл, вам нужно либо тщательно разобрать его, либо скомпилировать и запустить (все это сложнее, чем синтаксический анализ xml)

Xml как сам по себе хорошо читается как человеком, так и машиной. Кроме того, он масштабируется и прост в разработке. Кроме того, вы уже упоминали о развязке.

Что касается R.java – это просто способ доступа к виджетам. Решение довольно хорошее, поскольку вместо использования строки вместо использования меньше памяти и в то же время предоставляет хорошо читаемые имена для простоты разработки.

  • Как создать classы Java из файла WSDL
  • Преобразование формата даты в Android
  • Как установить -source 1.7 в Android Studio и Gradle
  • Заменить все вхождения строки с помощью StringBuilder?
  • Ошибка: java: javacTask: исходный выпуск 8 требует целевого релиза 1.8
  • Создание каталога не работает в Marshmallow Android
  • Как получить данные Android Market при отсутствии API?
  • Исходный код исходного кода Java
  • Как проверить, работает ли приложение на Android?
  • Как я могу избежать задержек сбора мусора в Java-играх? (Лучшие практики)
  • Как выйти из приложения Android с помощью кода?
  • Давайте будем гением компьютера.