Автор оригинала: Ebi Igweze.
Вступление
Начать как разработчик Android было довольно сложно, в то время не было Android studio, именно eclipse была основной средой разработки, и платформа Android была сложной сама по себе в сочетании со сложным процессом разработки с Eclipse, поэтому я отказался.
Затем вышла Android studio, и я снова заинтересовался разработкой Android, но опять же кривая обучения была довольно крутой, поэтому на это ушло больше времени, чем ожидалось, и это было довольно медленно.
Сейчас, когда я писал приложения для Android, я понял, что медлительность в моем темпе была вызвана тем фактом, что в Android слишком много движущихся частей, назначение которых необходимо понять, и мне нужно было целостное приложение, которое могло бы выделить основные функции. В большинстве случаев, как новичок, чтобы понять, как работает компонент, вам нужно увидеть, где он применяется.
Цель
Цель этой статьи-познакомить вас с некоторыми основными принципами платформы Android, определив набор задач, предназначенных для каждого этапа разработки, от начального до продвинутого.
По завершении задач здесь вы познакомитесь с основными передовыми концепциями разработки Android, а также с процессами, инструментами и библиотеками, которые используются в большинстве передовых проектов Android.
Прежде чем мы начнем
N. B: Вы не можете стать экспертом за одну ночь, или за неделю, или за месяц. Требуется время, даже годы, чтобы овладеть чем-либо.
Таким образом, цель здесь состоит не в том, чтобы заставить вас стать экспертом, а скорее в том, чтобы заставить вас решать задачи, которые придадут вам уверенности в решении еще более сложных задач Android. Чем больше проблем вы преодолеваете, тем увереннее вы решаете новые.
Что вы будете строить (больше)
Вы можете назвать приложение как угодно, но я бы назвал его “Бингер”. Binger-это приложение, которое позволяет пользователям просматривать свои любимые телешоу и новые, оно уведомляет пользователя о выходе новых эпизодов шоу, которые их интересуют, а также дает пользователю возможность фильтровать/искать другие телешоу.
Вы бы использовали Общедоступный api Imdb для решения этих задач и все, что вам нужно сделать, это создать учетную запись и получить api-ключ.
Приступая к работе
Вам понадобится пара вещей, чтобы начать:
- Среда разработки Android Studio
- Учетная запись пользователя TMDB
- Ключ API TMDB
- Документы API для телешоу
Предстоящие функции определяют задачи на разных уровнях квалификации, и на каждом этапе они обозначают то, что вам нужно будет сделать, чтобы завершить этот конкретный этап и перейти к следующему. Я буду перечислять вещи, на которые следует обратить внимание, пока вы учитесь, а также материалы для чтения, которые могли бы помочь и помочь вам в выполнении задач.
Начинающий
Особенности : Вот список вещей, которые вам нужно выполнить:
- Просмотр телепередач (Показать список всех телепередач, которые в данный момент транслируются)
- Просмотр телепередач, выходящих в эфир сегодня (Показать список всех телепередач, выходящих в эфир в текущий день, т. е. сегодня)
- Просмотр сведений о телешоу (Показать сведения о выбранном телешоу)
Примечания : Будучи выше уровня мастерства новичка или новичка, это может быть легким делом, но для абсолютного новичка это может быть не так просто. Вот пара вещей, которым можно было бы научиться:
- XML-макеты
- Виды деятельности (и навигация по видам деятельности)
- Интернет и пакеты
- RecyclerView (очень распространенная библиотека)
- Управление библиотеками (с помощью gradle)
Материалы: Вот список материалов, которые могли бы вам помочь.
XML-макеты
Деятельность
- Создание Активности
- Понимание жизненного цикла деятельности
- Навигация между видами деятельности
Намерение
RecyclerView
Переоборудование
Промежуточный
Особенности и задачи : Вот список вещей, которые вам нужно выполнить:
- “Нравится” или “Любимое” телешоу (позволяет пользователям добавлять в свой список избранных, понравившись или “выбрав” телешоу)
- Сохраните список “любимых” телепередач пользователя в локальной базе данных (сохраните информацию о понравившихся телепередачах в локальной базе данных телефона).
- Просмотр и управление всеми понравившимися телешоу (разрешить пользователям просматривать список понравившихся телешоу и удалять одно или все из списка)
- Просмотр списков обоих телешоу в одном и том же действии (используя таблицу, покажите оба списка телешоу, которые транслируются сегодня, и текущий эфир)
- Поиск телешоу с текстом и фильтрами (позволяет пользователям искать телешоу по названию и фильтрам, таким как жанр, год выпуска, возвращение или окончание и т.д.)
- Используйте привязку данных для настройки и обновления компонентов пользовательского интерфейса
- Уведомление о следующем эпизоде (уведомить пользователя, когда выйдет следующий эпизод любимого телешоу)
Примечания Некоторые из публикуемых материалов намекают на решения, но не расположены в каком-либо определенном порядке, поэтому сначала посмотрите на проблему и подумайте о способе ее решения, прежде чем искать материалы, которые могли бы этого достичь, или вы можете оценить их оба одновременно. особенности, которые необходимо изучить:
- Навигация с вкладками
- Фрагменты
- Инфляция меню
- Фоновые задачи
- Уведомления
- Поисковый
- Привязка данных
- Сохраняемость с локальной базой данных
Материалы
Расположение вкладок
Меню
Поиск
Привязка данных
Упорство
Уведомления
Фоновые задачи
Передовой
Вот несколько дополнительных функций, которые нужно добавить, и несколько вещей, которые нужно изменить:
- Непрерывная интеграция (Настройка непрерывной интеграции с app-центром)
- Аутентификация пользователей с помощью Firebase (Включите регистрацию пользователей и вход в систему с помощью firebase, используя электронную почту и пароль)
- Смотреть трейлеры (Разрешить пользователям смотреть трейлеры выбранного телешоу)
- Синхронизация локальной базы данных с базой данных firebase (позволяет пользователям хранить свои любимые телепередачи в базе данных firebase)
- Регистрируйте сбои приложений (добавьте ведение журнала для сбоев приложений)
- Внедрение зависимостей (Добавление внедрения зависимостей для служб приложений и компонентов просмотра)
- Реактивное программирование с помощью RxJava/Live Data (настройка реактивного программирования с расширением reactive)
- Светлая и темная тема ((настройте две темы для приложения светлая и темная)
- Настройки (настройте представление настроек, в котором пользователи могут выбирать предпочтительный макет темы: светлый или темный)
- Набор тестов (написать набор тестов для служб и компонентов пользовательского интерфейса)
Примечания В этом разделе представлены некоторые продвинутые темы, и это может быть немного утомительно, поэтому потратьте время на понимание того, как каждая часть подходит для вашего приложения и процесса разработки.Цель здесь-помочь вам найти решения для сложных идей и незнакомых инструментов. Есть вещи, которым нужно научиться:
- Непрерывная Интеграция
- Идентификация
- Темы для Android
- Внедрение Зависимостей
- Потоковая передача мультимедиа
- Общие рекомендации
- База данных Firebase
- Регистрация
- Реактивное программирование
- Модульное тестирование
Материалы
Модульное тестирование
Непрерывная Интеграция
Внедрение Зависимостей
Проверка подлинности Firebase
База данных Firebase
Общие рекомендации
Регистрация
Реактивное программирование
Темы для Android
Потоковая передача мультимедиа
Вывод
Разработка Android охватывает множество вещей, и, в зависимости от требований, требуется время, чтобы ознакомиться с определенными компонентами. Несмотря на все, что вложено в этот проект, в нем все еще отсутствуют некоторые ключевые компоненты системы Android, такие как Поставщики контента и Получатели вещания , Я думаю, что это приключение, которое я оставлю вам, чтобы вы могли заняться им самостоятельно.
Завершив этот проект, вы затронули бы множество продвинутых тем, затронутых в разработке Android. Но даже при этом платформа Android постоянно развивается, и процесс разработки постоянно упрощается с помощью новых инструментов и библиотек. Поэтому ваша следующая задача-быть в курсе этой постоянно развивающейся организации.
Единственный способ быть в курсе событий-это активно участвовать в сообществе Android, вот несколько каналов и публикаций, на которые вы можете подписаться и получать обновления о новых событиях, происходящих в экосистеме Android.
- Youtube: Разработчики Android
- Подкаст: Разработчики Android за кулисами
- Среда: Androidpub
- Средний: Разработчики Google
- Среда: Профессиональный разработчик Android
Вот и все, и все, что осталось, – это ваше приключение, счастливое кодирование.
Оригинал: “https://www.codementor.io/@ebiigweze/android-development-beginner-to-advanced-m3i1ve6y7”