Что такое программирование под android

Как начать программировать под Android? Пошаговый план

В этой статье мы рассмотрим, как начать программировать под Android. Пошаговый план с ссылками на ресурсы, курсы и книги и типичные вопросы, которые задают на собеседованиях на позицию junior Android-разработчика. Ну а если вы хотите быстро за 12 занятий вникнуть в азы Android — то приглашаю на практический онлайн-интенсив где вы с наставником разработаете собственный проект.

Итак, вы решили начать программировать под операционную систему Android. Для начала, вам нужно изучить язык программирования. В мире Android на момент написания статьи (март 2020) года используются как Java, так и Kotlin, однако второй официально рекомендован компанией Google и набирает всё большую популярность, так что, если вы не знаете ни одного языка программирования — то можете изучать Kotlin, если же вы уже знаете какой-либо объектно-ориентированный язык программирования, то изучить Java или Kotlin для вас не составит труда. На рынке тренд идет в сторону Kotlin.

Изучаем язык

Kotlin

Чтобы освоить Kotlin, вам могут пригодиться, следующие ресурсы:

  • Try Kotlin — набор примеров и заданий по Kotlin cразу с консолью, в которой можно ввести код и проверить
  • Kotlin Bootcamp for Programmers — туториал от Google
  • Android Kotlin Fundamentals Course — набор мини-курсов для быстрого старта в Android — разработке
  • Книга «Kotlin. Программирование для профессионалов» — Книга Джоша Скина и Дэвида Гринхола основана на популярном курсе Kotlin Essentials от Big Nerd Ranch. Яркие и полезные примеры, четкие объяснения ключевых концепций и основополагающих API не только знакомят с языком Kotlin, но и учат эффективно использовать его возможности
  • Kotlin Bootcamp for Programmers — хороший видеокурс, объясняющий основы программирования на Kotlin

Чтобы освоить Java, вам могут пригодиться, следующие ресурсы:

  • Изучаем Java Сьерра Кэти, Бэйтс Берт — эта книга не только научит вас теории языка Java и объектно-ориентированного программирования, она сделает вас программистом. В ее основу положен уникальный метод обучения на практике. В отличие от классических учебников информация дается не в текстовом, а в визуальном представлении.
  • Become a Java Developer — курс от Udacity, который поможет вам изучить Java
  • Джошуа Блох: Java. Эффективное программирование — эта книга является классикой для Java-программистов. Для новичков может быть несколько сложновата, но постарайтесь прочитать ее хотя бы половину и вернитесь к ней через годик, все сразу станет на свои места. Кстати, многие вопросы на собеседовании по Java взяты именно отсюда, так что не ленитесь, почитайте.
  • Java. Библиотека профессионала. Том 1. Основы | Хорстманн Кей С. — Эта книга давно уже признана авторитетным, исчерпывающим руководством и практическим справочным пособием для опытных программистов, стремящихся писать на Java надежный код для реальных приложений. Быстро освоить основной синтаксис Java, опираясь на имеющийся опыт и знания в программировании.

Изучаем Android SDK

Как только вы освоили базовый синтаксис и поняли базовые концепции, переходите к изучению Android SDK, параллельно читая перечисленные выше книги. Изучение Android SDK вы можете начать с таких ресурсов как:

  • Android Kotlin Fundamentals — набор туториалов для начинающих Android-разработчиков от Google на языке программирования Kotlin. Из курса вы узнаете об основных компонентах Android SDK, таких как Activity, Intent, BroadcastReceiver и других.
  • Become an Android Developer — курс на Udacity, где за 6 месяцев вам расскажут от том как разрабатывать мобильные приложения под Android
  • Школа мобильной разработки — набор лекций об устройстве Android от Яндекс. Часть материала немного устарела, но даже сейчас будет очень полезна как начинающим, так и уже более-менее опытным разработчикам.
  • Android Programming: The Big Nerd Ranch Guide — достаточно понятная книга для новичков, чтобы понять программирование под Android OS
  • The Busy Coder’s Guide to Android Development — книга, которая уже, наверное стала классикой для Android — программистов, один из самых полных источников знаний по Android OS
Читайте также:  Живые обои с собаками для андроид

Это далеко не полный список, материалов огромное количество, но изучив вышеперечисленные ресурсы, вам с запасом хватит знаний для программирования под Android. Главное — не забывайте ежедневно практиковаться, общаться с наставником или ментором чтобы быстрее понимать свои ошибки и учиться на них.

Изучаем популярные библиотеки

Итак, вы неплохо знаете синтаксис языка, понимаете ООП, умеете применять наследование там где оно нужно и ваши приложения более-менее работают. Возможно, еще без применения архитектуры (MVP/MVVM/VIPER/RIBs) и без навороченных библиотек или фрэймворков. Самое время изучить и их.

В этом разделе я приведу список наиболее популярных библиотек, который используются в большинстве Android — проектов. Изучив их, вы смело сможете претендовать на звание junior или даже middle — разработчика.

Для многопоточного программирования

  • RxJava 2 — видеокурс введение в RxJava на Stepic или бесплатный базовый курс по RxJava
  • Kotlin Coroutines — набор туториалов и документация по корутинам от Jet Brains
  • Основы работы с WorkManager— туториал по работе с WorkManager
  • Advanced Coroutines with Kotlin Flow and LiveData — туториал от Google как рабоать с корутинами и LiveData

Библиотеки для Dependency injection

Библиотеки для сетевого взаимодействия

  • Retrofit — пошаговый туториал, где вы создадите приложение для поиска фильмов

Библиотеки для обработки изображений

Библиотеки для работы с Json

Библиотеки для хранения данных

  • Room — мини-курс, который поможет понять основы Room + LiveData
  • Realm

Изучив, материалы из этого списка вы уверенно сможете претендовать на роль джуниор-разработчика, а в следующем посте мы рассмотрим наиболее часто задаваемые вопросы на собеседованиях. А прямо сейчас приглашаю вас на онлайн-интенсив по разработке

Источник

Как создать приложение для Android с нуля

С чего начать разработку Андроид приложения?

Как происходит процесс создания программы под андроид? Обратим внимание на несколько пунктов:

  • Java файлы – в них расписывается логика приложения — функции, которые вы ожидаете от программы.
  • XML файлы – в них создаются макеты — видимый интерфейс.
  • Когда программа будет написана, ее нужно собрать в один файл (.apk), именно его заливают в Google Play или сразу запускают на устройстве. Для сборки, компиляции существуют специальные технические инструменты.
  • Все утилиты и файлы, помогающие создать и контролировать программу собраны в IDE (Интегрированная среда разработки). Через эту программу редактируется код, происходит компиляция и запуск.

Примечательно: Раньше типовой IDE разработчиков являлась Eclipse. На сегодня самой востребованной средой разработки является продукт от Google – Android Studio. Она разработана на основе IntelliJ IDEA (производство JetBrains).

Конечно, существуют более углублённые операции, на каждой из описанных стадий. Продвинутых пользователей может заинтересовать роль виртуальной машины Dalvik. В этой статье расписаны ссылки на ресурсы для разработчиков, которые следует знать. В первую очередь это официальная документация от Google.

Пока, идём дальше.

Содержание:

  • Загрузка и установка актуальной IDE;
  • Создание простого мобильного приложения — “Hello World”;
  • Запуск. Последующее тестирование приложения на мобильных устройствах, эмуляторах;
  • Редактирование разрабатываего проекта;
  • Итог разработки;
  • Полезные знания от компании InfoShell для начинающих разработчиков:
    • Перспективность программирования под Android;
    • Структура Android команды.

Установка среды разработки Android Studio

Сразу углубиться в документацию и сесть за код, чтоб понять что может платформа правда заманчиво. Уже скоро мы этим займёмся! Однако перед стартом работы с андроид нужно настроить IDE.

Начинающим в программинге Android стоит не спешить, а систематически следовать инструкции. Даже если всё выполняется правильно, возможно будет необходимо исправить небольшую проблему по наладке IDE в зависимости от ОС или версии ресурса. В этом вам помогут поисковые сервисы. Хочется выделить очень полезный ресурс StackOverflow.

Важно не позволить, подводным камням, помешать достижению главной цели — научиться Android программированию. Иногда и профессионалы сталкиваются с трудностями при наладке рабочего окружения. Тогда выручает умение пользоваться командной строкой. Если вы желаете подробнее ознакомиться с данным инструментом, есть полезный вводный туториал.

Помимо упражнений в синтаксисе, необходимо обучаться мышлению программиста. Такому, которое не посчитает слова file X not found концом света. Такой склад мышления развивается когда вы не сдаётесь, а ищете решение проблемы.

Зайдите на сайт Android Studio. Теперь найдите кнопку скачивания новейшей версии для вашей ОС.

Читайте также:  Как перепрошить смартфон андроид через компьютер

Кликните по кнопке «download», вас попросят прочитать условия и правила использования программы. После тщательного изучения материала (в лучших традициях скачивания чего угодно) и принятия, стартует загрузка. Обычно это занимает несколько минут. Далее — этап установки, аналогичный всем другим приложениям. На стартовой странице скачивания находится руководство по установке на Windows и Mac.

Теперь запускаем Android Studio. Вас спросят, желаете ли вы сделать импорт своих настроек. Так как вы тут впервые, выбирайте второй пункт и идите дальше.

Далее по плану — любование экраном загрузки стиля Material Design.

Пройдя этап загрузки, вы попадаете на страницу приветствия.

Чтобы в будущем не возникло проблем с версиями, лучше сразу проверить установили ли вы последнюю. Даже если вы скачали её только что, не гарантирует, что она самая новая. Кликните «Check for updates now», и если у вас не новейшая версия вы это поймёте. Если сообщают, что надо обновить, следуйте всем инструкциям Studio. Иногда программа автоматически, через push-уведомления информирует о наличии обновления. Выглядит это примерно так:

В такой ситуации смело нажимайте «Update and Restart». Прекрасно! Миссия выполнена, вы успешно установили Android Studio.

Создание первого Android проекта

Настал час следующего этапа — создания андроид-приложения. Чтоб почувствовать себя настоящим программистом надо назвать своё творение «Hello World». Начнём с этой классики, а после внесём несколько правок, чтоб программа использовала для приветствия ваше имя. Результат можно установить на смартфон и похвастаться знакомым.

Android Studio пошаговый инструмент, предоставляющий инструкции при создании мобильного продукта. На стартовом экране выбираем «New Project»:

Потом откроется такое окно:

Заполните его аналогично. Замена слова «example» в названии пакета, убирает красное предупреждение внизу. Тут можно выбрать адрес проекта, выбрав любую папку на вашем жёстком диске.

Раскрывая версии SDK прочитайте «Описание» внизу окна. Там объясняются, функции каждой настройки.

Выберите минимальный требуемый SDK (выделенная строчка на скрине). Вы выбрали минимальную андроид-версию, требуемую для запуска вашей программы . Выбор версии обуславливается — вопросом балансировки желаемых возможностей SDK и поддерживаемых устройств.

Для создания своей первой android программы рекомендую выбрать API 14, Android 4.0 IceCreamSandwich. У каждого приложения есть свои условия, вы можете выбирать и какие-то другие, в зависимости от пожеланий.

Чтобы узнать больше про версии API («Application Programming Interface») на сайте девелоперов android есть спец страница Dashboards.

После выбора версии, вы выбираете стартовый шаблон, на открывшемся экране. Например, можно создать приложение, отображающее карту, взаимодействуя с api гугл карт. Для нашего тестового приложения берём Empty Activity и переходим по кнопке «Next».

Теперь мы на последнем этапе создания программы. Обратите внимание на несколько моментов прежде чем кликнуть по «Finish». Здесь пользователь сталкивается с упоминанием о главных компонентах вашего приложения.

  • Activity Name — первый раз встречается слово Activity, впоследствии увидим его ещё не раз. В теме android под ним понимается «экран» вашего приложения. Очень гибкий элемент. При создании класса MainActivity, AndroidStudio наследует его из пакета Android SDK от класса Activity. Эта концепция ясна для тех кто разбирается в объектно-ориентированном программировании. Для начинающих это значит, что MainActivity является настраиваемой версией Activity.

  • Layout Name — макет видимого пользователю интерфейса, прописан в спец виде Android XML. Уже скоро вы сможете читать и править эти файлы.

Кликаем «Finish». Какое-то время займут обработка, сохранение и процесс загрузки проекта. Хотя, пока проект пустой, но уже содержит всё что нужно для запуска на эмуляторе или устройстве android.

Когда загрузка закончилась вы можете просмотреть файл макета в XML. Перед тем как начать программировать на android, давайте разберёмся «Как потом запустить своё приложение?». Теперь пора сказать «Hello world!».

Запуск приложения на эмуляторе

Сейчас нужно немного рассказать об эмуляторе. Android Studio содержит программное обеспечение, которое может эмулировать смартфон для запуска программ, отладки, просмотра сайтов и много другого.

Это возможно благодаря AVD (Android Virtual Device) Manager. Вы можете настроить даже несколько эмуляторов, подобрав под каждый желаемый размер экрана, версию системы. Это очень полезный функционал, потому как избавляет девелоперов от покупки нескольких смартфонов для тестов приложения.

Кликните по кнопке Run (зелёная кнопка play).

Надо подождать пока эмулятор загружается, после вы увидите примерно такое:

Поздравляю! Вы создали своё первое приложение для android.

Читайте также:  Android как отменить загрузку

Итак… Почему и как оно работает?

Прежде чем вносить правки, добавлять другие функции, надо иметь понимание того, что происходит за сценой. Посмотрите на проектный раздел Android Studio с папками и файлами слева на экране. Вероятно, вам потребуется кликнуть по маленькой вкладке с краю (смотри ниже), если проектный проводник к этому времени не отображается.

За несколько минут изучите структуру папок. Кликните дважды по файлам, чтоб ознакомиться с их содержимым.

Как внести изменения в проект?

Дважды кликните по res/values/strings.xml, когда он откроется вы увидите в XML 2 строковых ресурса. Их используют в разных местах, но иметь весь текст, который используется в программе, в одном файле очень удобно. Если потребуется перевести его, если коллега по маркетингу просит убрать все лишние ссылки, то тут будет просто внести правки.

Поменяйте строку hello_world, отброжаемую программой на экране. Поменяйте её текст на что-то более личное, для примера на вообще имя. Выйдет что-то такое:

Matt is learning Android!

Нажмите Run. Мобильное приложение должно перезапуститься и появится персональное сообщение:

Подводим итоги…

Вы создали ваше первое приложение на android. Это уникальный опыт, вы поняли как редактировать исходный код, получили ответы на базовые вопросы. Вы сделали первый шаг на непростом, но безумно интересном пути android-программировании. Желаем успехов в будущем!

Если вам нужно сложное приложение, вы можете заказать создание приложения на Android, у специалистов Infoshell. На сайте вы можете рассчитать стоимость создания приложения и оставить заявку, чтобы с вами связался менеджер.

Перспективность и преимущества Android разработки

Платформа андроид одна из двух наиболее распространённых платформ. На ней работают 40% всех устройств мировой аудитории.

Android превосходит iOs по использовании на смартфонах — 70% и 29% соответственно. Кстати на все остальные ОС приходится всего 1%.

По планшетам лидирует iOs, однако и тут android имеет внушительную долю — 60% и 40% соответственно.

Плюсы:

  • для разработки на android подойдёт любой компьютер (а вот для iOs нужна система только MacOS);
  • обширное сообщество разработчиков AMD (Android Mobile Developers);
  • разработка происходит на Java;
  • на android, помимо смартфонов и планшетов работают Smart-Watch, Smart-TV и AR/VR устройства;
  • IDE способна анализировать код и формировать его готовые части;
  • наличие хороших фреймворков, облегчающих создание программ под разные задачи;
  • исходный код ОС полностью открыт. Google и прочие разработчики публикуют данные на этом ресурсе;
  • быстрое размещение в Google Play, без модератора;
  • регистрация аккаунта разработчика стоит 25$, последующих оплат не требуется (для сравнения – регистрация в App Store стоит 99$, за каждый последующий год, нужно платить столько же).

Минусы:

  • большое разнообразие android устройств, в частности их экранов, мешает хорошей оптимизации, есть риск появления багов и разного поведения утилит (решение – качественная UI/UX аналитика, потребность в ней появляется после выявления багов);
  • система не нова, и опыт расписанный девелоперами, во многом не актуален, из-за чего нужно регулярно повышать качество знаний;
  • аккаунт или приложение могут быть забанены без объяснения причин. При подаче жалобы отвечает Bot.

Структура Android-проекта: Команда

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

Часть кода, отвечающая за логику программы. Код находится в основной проектной папке, а точнее – в каталоге src\main\java. Чтобы изучить java, можно для начала прочитать книгу «Философия Java», Брюса Эккеля.

Приложение мало просто собрать, оно должно выглядеть стильно. Приложение не привлечёт к себе внимание потенциальных клиентов, если сольётся с серой массой остальных программ. Чтобы выделить своё приложение важно продумать макеты, наполнить его картинками и значками, наладить комфортную анимацию.

При инициализации в папке хранятся следующие подпапки:

  • drawable, в ней содержатся иконки. На данный момент там только стандартная иконка программы;
  • layout с XML файлами, представляющими собой экранные дизайны;
  • menu с XML файлами списков элементов, отображающихся в панели действий;
  • values с XML файлами, которые содержат цвета, стили, размеры и строковые константы.

XML-файл информирующий ОС о запросах к программному обеспечению и оборудованию, содержит название версии и значок. Ещё манифест хранит данные про всё Activity в программе. Если вам необходима работа, которую выполняет ваше приложение, поговорите с начальником.

Источник

Оцените статью