72
Владислав Алексеев Разработчик Мобильных Яндекс-Карт под iOS Twitter: @beefon Как начать разработку под iOS

Влад Алексеев "Как начать разработку под iOS"

  • Upload
    yandex

  • View
    13.379

  • Download
    1

Embed Size (px)

DESCRIPTION

В своем докладе Влад Алексеев рассказал про основы разработки приложений для iOS. Где брать инструментарий и документацию? Какие ограничения вводит операционная система на работу приложений? Какова структура приложения? Кроме того, были кратко затронуты имеющиеся инструменты для отладки и профилирования, доступные системные фреймворки, а также iPhone Developer Program и возможности iTunes Connect.

Citation preview

Page 1: Влад Алексеев "Как начать разработку под iOS"

Владислав АлексеевРазработчик Мобильных Яндекс-Карт под iOS

Twitter: @beefon

Как начать разработку под iOS

Page 2: Влад Алексеев "Как начать разработку под iOS"
Page 3: Влад Алексеев "Как начать разработку под iOS"

План доклада•iOS

•Структура iOS-приложения

•Xcode

•Отладка и профилирование

•iPhone Developer Program

•iTunes Connect

3

Page 4: Влад Алексеев "Как начать разработку под iOS"

iOS

4

Page 5: Влад Алексеев "Как начать разработку под iOS"

iOS

4

Page 6: Влад Алексеев "Как начать разработку под iOS"

5

Page 7: Влад Алексеев "Как начать разработку под iOS"

6

Page 8: Влад Алексеев "Как начать разработку под iOS"
Page 9: Влад Алексеев "Как начать разработку под iOS"

8

Unix

Mac OS X

iOS

Page 10: Влад Алексеев "Как начать разработку под iOS"

9

Unix API

SharedFrameworks

iOSFrameworks

Unix

Mac OS X

iOS

Page 11: Влад Алексеев "Как начать разработку под iOS"

10

Some.app

Page 12: Влад Алексеев "Как начать разработку под iOS"

10

Some.app

LibraryCaches

• • •

Document

Page 13: Влад Алексеев "Как начать разработку под iOS"

10

Some.app

LibraryCaches

• • •

Document

Document

Document

Document

Document

Document

Page 14: Влад Алексеев "Как начать разработку под iOS"

11

LibraryCaches

• • •

Document

Document

Document

Document

Document

Document

Page 15: Влад Алексеев "Как начать разработку под iOS"

11

LibraryCaches

• • •

Document

Document

Document

Document

Document

Document

Page 16: Влад Алексеев "Как начать разработку под iOS"

12

LibraryCaches

• • •

Some.app

Document

Document

Document

Document

Document

Document

Page 17: Влад Алексеев "Как начать разработку под iOS"

12

LibraryCaches

• • •

Some.app

DocumentDocumentDocumentDocumentDocumentDocumentSome.app

Page 18: Влад Алексеев "Как начать разработку под iOS"
Page 19: Влад Алексеев "Как начать разработку под iOS"

14

Page 20: Влад Алексеев "Как начать разработку под iOS"

Песочница

15

• •

SomeSome.app

Page 21: Влад Алексеев "Как начать разработку под iOS"

Песочница

15

iTunes File Sharing

• •

SomeSome.app

Page 22: Влад Алексеев "Как начать разработку под iOS"

Foundation UIKit

Address Book

Core Data

AVFoundation

Core Location

Core Image

Core Audio

EventKit

CFNetwork

Core Animation

Core Graphics

ImageIO

MapKitQuartz

Twitter

System Configuration

OpenGL ES

QuickLook

StoreKit

Accessibility

16

Some.app

Page 23: Влад Алексеев "Как начать разработку под iOS"

Многозадачность

17

Page 24: Влад Алексеев "Как начать разработку под iOS"

Многозадачность•VoIP

•Геолокация•Аудио

18

Page 25: Влад Алексеев "Как начать разработку под iOS"

Многозадачность•VoIP

•Геолокация•Аудио

19

•Push-уведомления

•Локальные нотификации•Task Completion

Page 26: Влад Алексеев "Как начать разработку под iOS"

Objective-C

20

[myObj performMethod:someArg];

Page 27: Влад Алексеев "Как начать разработку под iOS"

Структура UI

21

Page 28: Влад Алексеев "Как начать разработку под iOS"

Структура UI

22

Page 29: Влад Алексеев "Как начать разработку под iOS"

Структура UI•Navigation Controller

•Tab Bar Controller

•Page View Controller

•Split View Controller

•Modal View Controller

23

Page 30: Влад Алексеев "Как начать разработку под iOS"

Navigation Controller

24

Page 31: Влад Алексеев "Как начать разработку под iOS"

Navigation Controller

24

Page 32: Влад Алексеев "Как начать разработку под iOS"

Tab Bar Controller

25

Page 33: Влад Алексеев "Как начать разработку под iOS"

Tab Bar Controller

26

Page 34: Влад Алексеев "Как начать разработку под iOS"

Tab Bar Controller

27

Page 35: Влад Алексеев "Как начать разработку под iOS"

Tab Bar Controller

28

Page 36: Влад Алексеев "Как начать разработку под iOS"

Page View Controller

29

Page 37: Влад Алексеев "Как начать разработку под iOS"

Split View Controller

30

Page 38: Влад Алексеев "Как начать разработку под iOS"

Modal View Controller

31

Page 39: Влад Алексеев "Как начать разработку под iOS"

Modal View Controller

31

Page 40: Влад Алексеев "Как начать разработку под iOS"

Xcode32

Page 41: Влад Алексеев "Как начать разработку под iOS"

Xcode

FREE

33

Page 42: Влад Алексеев "Как начать разработку под iOS"

Xcode•IDE

•Проектирование UI

•Отладка и профилирование

•Публикация в App Store

34

Page 43: Влад Алексеев "Как начать разработку под iOS"

35

Page 44: Влад Алексеев "Как начать разработку под iOS"

36

Page 45: Влад Алексеев "Как начать разработку под iOS"

36

Storyboard iOS 5 only

Page 46: Влад Алексеев "Как начать разработку под iOS"

Xcode•Документация встроена в Xcode

•Доступна онлайн: developer.apple.com/ios

37

Page 47: Влад Алексеев "Как начать разработку под iOS"

Отладка•Симулятор iOS

i386, x86-64

•На устройствеarmv6, armv7

38

Page 48: Влад Алексеев "Как начать разработку под iOS"

Instruments39

Page 49: Влад Алексеев "Как начать разработку под iOS"

Instruments•Использование CPU, RAM

•Потоки, GCD

•GPU и FPS

•Сеть•Потребление энергии•...

40

Page 50: Влад Алексеев "Как начать разработку под iOS"

Instruments

41

Page 51: Влад Алексеев "Как начать разработку под iOS"

Instruments

42

Page 52: Влад Алексеев "Как начать разработку под iOS"

iPhone Developer Program

•Публикация в App Store

•Отладка и профилирование на устройствах

•Бета-версии продуктов

•Вывод revenue на счет в банке

43

Page 53: Влад Алексеев "Как начать разработку под iOS"

iPhone Developer Program

44

Физ. лица и компании Enterprise University

$99 $299 Free

Page 54: Влад Алексеев "Как начать разработку под iOS"

45

In-House

Enterprise

Page 55: Влад Алексеев "Как начать разработку под iOS"

45

In-House

Enterprise

Page 56: Влад Алексеев "Как начать разработку под iOS"

45

In-House

Enterprise

Page 57: Влад Алексеев "Как начать разработку под iOS"

45

In-House

Enterprise

Page 58: Влад Алексеев "Как начать разработку под iOS"

45

In-House

Enterprise

Page 59: Влад Алексеев "Как начать разработку под iOS"

45

X

In-House

Enterprise

Page 60: Влад Алексеев "Как начать разработку под iOS"

App Store

Page 61: Влад Алексеев "Как начать разработку под iOS"

App Store

Page 62: Влад Алексеев "Как начать разработку под iOS"

App Store

Page 63: Влад Алексеев "Как начать разработку под iOS"

App Store

Page 64: Влад Алексеев "Как начать разработку под iOS"

App Store

Ready for Sale

Rejected

Page 65: Влад Алексеев "Как начать разработку под iOS"

iTunes Connect

47

Page 66: Влад Алексеев "Как начать разработку под iOS"

Sales & Trends

48

Page 67: Влад Алексеев "Как начать разработку под iOS"

Выплаты•БИК•Имя владельца (in english)

•Номер счета

•Валюта счета

49

Page 68: Влад Алексеев "Как начать разработку под iOS"

Выплаты•Отчеты о выплатах по регионам

•Число проданных копий

•Курс конвертации валют

•Дата следующей выплаты

•История ежемесячных выплат

•Минимальная выплата — $150

50

Page 69: Влад Алексеев "Как начать разработку под iOS"

ВыплатыAmericas Mexico

Australia New Zealand

Canada Norway

Euro-zone Switzeland

Japan United Kingdom

China Rest of the World

51

Page 70: Влад Алексеев "Как начать разработку под iOS"

ВыплатыAmericas Mexico

Australia New Zealand

Canada Norway

Euro-zone Switzeland

Japan United Kingdom

China Rest of the World Russia

51

Page 71: Влад Алексеев "Как начать разработку под iOS"

Что дальше?• Start Developing iOS Apps today

http://bit.ly/wc2lkj

• Stanford - iPad and iPhone App Developmenthttp://bit.ly/zlOPDX

• Getting Started Documentshttp://bit.ly/Ax00dz

• iOS Human Interface Guidelineshttp://bit.ly/z6rWRa

52

Page 72: Влад Алексеев "Как начать разработку под iOS"

Cпасибо!

Владислав АлексеевTwitter: @beefon