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

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

Embed Size (px)

Citation preview

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

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

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

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

https://vk.com/crosspl

2

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

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

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

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

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

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

• Qt

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

4

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

Отчетность

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

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

5

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

Шаг 1. Идея

6

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

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

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

7

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

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

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

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

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

8

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

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

программы

9

Пол

Возраст

Доход

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

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

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

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

10

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

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

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

11

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

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

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

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

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

12

Android

iOS

Windows Phone

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

13

Android – 85%

iOS – 7%

Windows Phone - 8%

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

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

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

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

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

15

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

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

16USA

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

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

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

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

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

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

вариант

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

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

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

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

• Сайт

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

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

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

19

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

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

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

20

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

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

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

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

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

21

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

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

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

Unity 3d

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

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

23

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

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

в 3D

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

Xamarian

Язык: C#

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

Native User Interfaces, Native API

Access

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

Windows

24

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

Qt

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

Phone, iOS, Android

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

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

проектов

26

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

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

Sencha Touch

The Appcelerator Platform

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

27

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

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

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

React Native

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

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

29

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

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

30

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

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

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

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

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

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

Apache Cordova

32