Структура проекта


В предидущем уроке мы создали наш первый проект и увидели что Android Studio начала синхронизацию. После завершения синхронизации проекта, Android Studio готова к работе.

В этом уроке мы ознакомимся со структурой проекта. Узнаем где и зачем расположены файлы и папки. Для более удобной навигации по файлам и папкам нам необходимо переключить вид сруктуры наших папок на Project, как показнно в пункте 1 на скриншоте снизу:

Структура проекта

 

Вы переключили вид структуры проекта на Project как показнно в пункте 1 и видите следующие файлы и папки

  1. Меню с переключателями для отображения структуры проекта
  2. MyApplication2 [My Application] - Это название папки (в конце серым видно полный путь) и название приложения. Это те данные, которые Вы ввели при создании проекта.
  3. app - Это папка / модуль в которой лежит исходный код нашего приложения. Это стандартный модуль для приложения. Его можно переименовать в настройках сборщика проекта. Модуль может быть как библиотекой, так и главным отдельным приложением. 
  4. gradle - папка, которая содержит в себе сборщик проект. Android использует сборщик Gradle.  Также в этой папке лежит файл libs.versions.toml со списком всех библиотек, которые используются в проекте.
  5. build.gradle.kts - Главный файл сборки проекта. По сколько сборщик Gradle умеет собирать разные проекты на разных языках.  То именно в этом файле мы указываем что это проект именно Android. В этом же файле указываются плагины для сборщика. Этими плагинами мы можем изменить или добавить функционал сборщика.
  6. gradle.properties  - Файл в котором указываются разные переменные для сборщика. В этом файле мы можем указать количество оперативной памяти. Пути к Android SDK. Данные для авторизации плагинов (если используем платные плагины) и т. д.
  7. gradlew / gradlew.bat - это исполняющие файлы запуска сборщика. Для Linux/Unix и для Windows. В основном эти файлы используются для сборки готового продукта если вы хотите передать кому-то ваше готовое приложение то скорее всего вам в терминале выполнить команду -  ./gradlew assembleRelease или ./gradlew assembleDebug
  8. settings.gradle.kts - В этом файле настраиваются модули приложения и их зависимости. То есть тут мы настраиваем, где сборщику искать плагины и библиотеки. Да, в пункте 4 мы указываем какой плагин использовать, а в пункте 7 указываем, где этот плагин скачать.

Давайте теперь ознакомимся с папками и файлами внутри папки “app”. Это самая главная папка нашего проекта.  Давайте ознакомимся, где и как расположен исходный код - на скриншоте ниже:

Структура проекта

и так по списку:

  1. libs - это папка в которую мы кладем готовые скомпилированные файлы / библиотеки. Это могут быть как .jar(Java / Kotlin) так и  .aar (Android)
  2. src - папка, содержащая исходный код для приложения и тестов.
  3. androidTest внутри папки src - это папка где находятся файлы для юнит тестов которые выполняются на эмуляторе и настоящем устройстве
  4. main - главная папка, где находится исходный код написанный на Java / Kotlin / C / C++ и ресурсы приложения.
  5. test внутри папки src - это папка где находятся файлы для юнит тестов которые выполняются на эмуляторе и настоящем устройстве
  6. build.gradle.kts - Это файл настройки сборщика для нашего модуля. Да. Есть такой же файл для всего проекта. Но этот файл в пункте 6 отвечает только за сборку текущего модуля. А файл в корне всего проекта - за сборку всех модулей разом. 

Ну и последнее что нам осталось рассмотреть. Это что за папки и файлы расположены внутри main. Смотрим на скриншот и читаем:
 

Структура проекта

И так:

  1. java - Именно в этой папке хранится наш Kotlin / Java код. 
  2. res - Это папка содержащая разные ресурсы которые идут по списку ниже. 
  3. drawable - Это папка с нашими картинками. Картинки могут быть как png, так и вектор, описанный специальным стандартом для Android (Vector Drawable) при помощи XML
  4. layout - папка, содержащая разметку наших экранов. Тут описываются элементы и их расположение на экране. Опять же при помощи XML
  5. mipmap и ее модификации - в каждой папке хранится всего по 2 файла. Иконка квадратная и иконка круглая. Именно эти иконки отображаются на главном экране Android. Именно эта иконка является иконкой вашего приложения. А модификации — это то, что Вы видите через дефис “-”. То есть это могут быть разные размеры экранов, разная версия Android и даже просто разный язык устройства.  
  6. values и ее модификация - папка содержащая различного рода переменные. Это строки для нашего приложения, константы, разные цвета. Настройка темы приложения и т. д.
  7. xml  -  папка очень похожа на папку  values. Но тут хранятся не наши константы и переменные. А файлы конфигурации нашего приложения. А конкретно поведение для HTTP / HTTPS, можно ли и как именно делать бэкап нашей апп, настройки доступа к файлам нашего приложения и т. д.

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


Нужна помощь? Спросите в нашем Телеграмм канале - Start-Develop RU / Start-Develop EN