Вы находитесь на странице: 1из 3

ТЕМА 10.

КАК СОЗДАЮТСЯ ПРОГРАММЫ И ЧТО НУЖНО,


ЧТОБЫ ПОПАСТЬ В APP STORE ИЛИ GOOGLE PLAY?

10.3. Разработка мобильных приложений

Добрый день! В прошлой лекции мы обсуждали вопросы, связанные с проектированием


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

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

1. Нативная разработка — использование для создания мобильного приложения средств, которые


предлагают разработчики операционных систем:
• Среда разработки Xcode с языком программирования Swift под IOS
• Android SDK с языком программирования Java (или Kotlin) для Android

Преимущества использования нативных инструментов разработчика:


• Повышение качества за счет более глубокой интеграции
• Более быстрая загрузка
• Оптимизация ресурсов

Недостаток нативных инструментов разработчика:


• Необходимо больше разработчиков и ресурсов для запуска и поддержки каждой из
версий приложения

Если вы решите пойти по этому пути, то я бы рекомендовал вам обратить внимание на следующие
фреймворки:

Для IOS:
• Alamofire — позволяет упростить интеграцию Api для работы с сервером
• Realm — фреймворк для работы с локальной базой данных внутри клиентской части
приложения
• Foundation — фреймворк используют для осуществления доступа к базовым функциям
IOS
• CoreAnimation — фреймворк для работы с базовыми классами анимации
• PKHUD — библиотека для работы с эффектами
• SwiftValidator — используется для проверки правильности ввода информации в поля
• SwiftyJSON — фреймворк для удобной работы с Json

1
Для Android:
• Retrofit — HTTP- клиент, который используется для обработки взаимодействия клиент-
сервер.
• Dager 2 — фреймворк для внедрения зависимостей
• ButterKnife — библиотека для более быстрой работы с View
• Firebase — работа с push-уведомлениями и сбором статистики

2. Игровые движки, которые используются при создании мобильных приложений. Самый


очевидный вариант выбора этих движков — при создании игры или приложения, в котором важна
работа с 3D-графикой или физикой, например если вы создаете приложение с функционалом
дополненной реальности.

Среди игровых движков особо выделяются два, которые используют чаще всего: Unity 3d и Unreal
Engine.

Unity — межплатформенная среда разработки компьютерных игр, позволяющая создавать


приложения, работающие под различными операционными системами

Основные преимущества Unity:


• Визуальная среда разработки
• Межплатформенная поддержка
• Модульная система компонентов

К недостаткам относят:
• Сложности при работе с многокомпонентными схемами
• Затруднения при подключении внешних библиотек

На этом движке были созданы такие хиты, как Pokemon GO, серия игр Shadow Gun и всем известная
игра Subway Surfers.

Unreal Engine — игровой движок, разрабатываемый и поддерживаемый компанией Epic Games.


Применяется в играх самых различных жанров и для создания VR-проектов.

Основные преимущества Unreal Engine:


• Система визуального скриптования — Blueprint
• Быстрое прототипирование
• Хорошее качество графики

Оба движка Unreal Engine 4 и Unity3d имеют свой магазин ассетов: из них можно загрузить готовые
3D-модели персонажей и окружения, текстуры и даже такие вещи, как звуки и системы частиц.

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

2
3. Кроссплатформенные инструменты позволяют создать приложение сразу для нескольких
операционных систем.

В качестве примера можно привести следующие:

PhoneGap — бесплатный open-source фреймворк для создания мобильных приложений,


созданный Nitobi Software. Позволяет создать приложения для мобильных устройств, используя
JavaScript, HTML5 и CSS3.

React Native — JavaScript-библиотека с открытым исходным кодом для разработки


пользовательских интерфейсов.

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

Flutter — решение от Google для разработки кроссплатформенных высокопроизводительных


мобильных приложений.

Преимущества Flutter:
• «Горячая перезагрузка» — возможность сразу видеть изменения, которые внесли в
приложение
• Набор виджетов в стилях Material Design и Cupertino — большой набор встроенных
компонентов пользовательского интерфейса
• Темы для Android и iOS — различное отображение интерфейса приложений

Теперь давайте кратко обсудим основные правила работы приложения для того, чтобы оно прошло
проверку, и его можно было опубликовать в App Store и Google Play:
• Стабильная работа — приложение должно стабильно работать на различных
устройствах (не только на телефонах, но и на планшетах).
• Совместимость с большим количеством устройств
• Приложение не должно иметь скрытый функционал — приложение должно запрашивать
только те доступы, которые ему необходимы
• Приложение должно отвечать требованиям гайдлайнов для разработчиков — интерфейс
приложения должен подходить и под Android, и под iOS.
• Встроенные платежные системы App Store и Google Play при наличии платного
функционала в приложении

На этом мы закончим тему по разработке мобильных приложений. В следующей лекции мы более


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