Разработка кросплатформенных приложений

Preview:

Citation preview

Дунаева А.В. https://vk.com/crosspl

Дунаева Александра Валерьевна

https://vk.com/crosspl

2

3https://play.google.com/store/apps/details?id=com.lilyapps.edoctor2

Программа курса

Создание кроссплатформенных приложений на основе:

• Веб-технологий, в том числе Apache Cordova

• Qt

Серверная часть

4

Отчетность

Цель спецкурса: создать приложение для пользователей одной из ОС

Оценка: экзамен, 4 з.е.

5

Шаг 1. Идея

6

Что нужно сделать после того как

появилась идея сделать приложение?

7

1. Проверить есть ли уже приложения которые

решают эту проблему

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

английском языке с помощью разных словосочетаний

8

2. Понять кто будет пользователем вашей

программы

9

Пол

Возраст

Доход

При каких обстоятельствах будут пользоваться вашим приложением? (Когда

скучно, в транспорте и т.д.)

3. Понять как вы будете зарабатывать

10

Разработка и поддержка приложения требует времени

4. Поделиться идей с друзьями / семьей

11

Или обсудить идею непосредственно с вашей целевой аудиторией.

Будут ли они пользоваться им?

Какие функции они хотели бы видеть?

5. Выбрать платформы

12

Android

iOS

Windows Phone

13

Android – 85%

iOS – 7%

Windows Phone - 8%

https://vc.ru/n/win-2nd

5. Выбрать платформы

14http://www.idc.com/prodserv/smartphone-os-market-share.jsp

15

5. Выбрать платформы

16USA

17Германияhttp://www.statista.com/statistics/261353/

smartphone-os-market-share-in-germany/

6. Выбрать на чем реализовывать

• Для каждой платформы отдельно – лучший и самый дорогостоящий

вариант

• Бизнес-логика на С++ интерфейс платформозависимый, так делают

крупные компании, например Dropbox

• Framework или библиотека для кроссплатформенной разработки

• Решение на основе веб-браузера, например Apache Cordova (Phonegap)

• Сайт

18https://github.com/dropbox/djinni

Шаг 2. Выбор библиотеки

19

Как выбрать библиотеку для

кроссплатформенной разработки?

20

• В первую очередь, необходимо посмотреть на реализованные с помощью

этой библиотеки приложения (установить на смартфон)

• Прочесть отзывы, например на habrahabr

• Сравнить возможности библиотек

21

Marmalade SDK

Язык: Lua / C++

Применение: игры

Платформы: iOS, Android, Windows Phone, Windows

Store, Windows 10, Windows Desktop, Mac OS X, Roku,

Tizen, BlackBerry and LG TV

https://www.madewithmarmalade.com/

22

Unity 3d

Лучшая платформа для 3D игр, есть и другие например, Unreal Engine

Язык: C# (Mono), JavaScript

23

Отлично подходит когда

нужно рисовать что-либо

в 3D

Xamarian

Язык: C#

Стоимость: $25 / month

Native User Interfaces, Native API

Access

Платформы: iOS, Android, Mac and

Windows

24

Qt

Платформы: Windows, Linux, OS X, Windows

Phone, iOS, Android

Язык: C++ или Qt Quick (JavaScript)

Стоимость: бесплатно для open-source

проектов

26

Библиотеки на JavaScript

Sencha Touch

The Appcelerator Platform

Недостатки: медленные

27

Apache Cordova

Язык: JavaScript

Цена: Free and open source

Access native device APIs

28

Battery Status

Camera

Contacts

Device Motion

(Accelerometer)

Dialogs

FileSystem

File Transfer

Geolocation

Globalization

InAppBrowser

Media Capture

Network Information

(Connection)

Vibration

React Native

Разработка Facebook, платформы: ios, android

Еще развивается, цель: создание нативных приложений на JavaScript

29

Шаг 3. Интерфейс

30

https://www.google.com/design/spec/material-design/introduction.html

https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual

/MobileHIG/

http://developer.android.com/intl/ru/guide/topics/ui/accessibility/apps.html

31

На следующей лекции:

Презентации проектов и команд

Разработка приложений с помощью веб-технологий

Apache Cordova

32

Recommended