SlideShare a Scribd company logo
akireev@codemastersintl.com
1976   1984
iPad     iPod    iPhone
       (touch)
iOS – мобильная операционная система
iOS 5.1
          iPhone 4S, iPhone 4
          iPhone 3GS, iPad 1,2,3




          iPhone 3G, iPad 1,2


iOS 3.1

           iPhone, iPad            14 апреля 2012
Все приложения здесь

600 тысяч приложений iPhone
200 тысяч приложений iPad
25 миллиардов скачиваний            AppStore
200 миллионов пользователей
Средняя цена $0.99 до $9.99
Самое дорогое приложение $999.99,
купило 8 человек
Основы "мобильной" разработки на примере платформы iOs (iPhone)
Основы "мобильной" разработки на примере платформы iOs (iPhone)
1   2
    XCode
Основы "мобильной" разработки на примере платформы iOs (iPhone)
UIKit Framework
Game Kit Framework
Event Kit UI Framework
iAd Framework
Address Book UI Framework
Message UI Framework
Map Kit Framework
Twitter Framework
Assets Library Framework

AV Foundation Framework

Core Audio
                           Core MIDI Framework
Core Graphics Framework    GLKit Framework

Core Text Framework        OpenAL Framework

Core Image Framework       Image I/O Framework

                           Quartz Core Framework
Core Video Framework
Accounts Framework

Address Book Framework

Core Location Framework

CFNetwork Framework

Core Telephony Framework

Core Data Framework

Store Kit Framework

Foundation Framework

System Configuration Framework
Accelerate Framework

Core Bluetooth

External Accessory Framework

Security Framework

Generic Security Services Framework

System
С                  Objective-C
Smalltalk
Создан в начале 1980x
Бредом Коксом

Компилируемый, объектно-ориентированный
язык с строгой типизацией

Основной язык программирования
компании Apple

Message-oriented
Все классы наследуются от NSObject
Создание объектов
              С#

              С#
id – ссылка на любой объект
              С#

Посылка сообщений / Вызов методов
              С#

              С#


              С#
Основные типы




Коллекции
INTERVAL
Хочу такой класс:   startIndex   0
                    length       6
                    endIndex     6

                      INTERVAL
                    startIndex   4
                    length       6
                    endIndex     10

                      INTERVAL
                    startIndex   4
                    length       1
                    endIndex     5
Имплементация класса
Протоколы
Особенности и Фичи
Любой код на C компилируется
Механизм подсчета ссылок
ARC (Automatic Reference Counting)
Autorelease Pool
Метапрограммирование (Key-Value Coding)
Grand Central Dispatch (iOS feature)
KVC – key/value coding
KVC – key/value coding
Уходим от Thread
              Основная
Очередь       Параллельная
              Последовательная

Исполняем блоки (код) в очередях:
Основная очередь:


Параллельные очереди (4 системных):



Последовательные очереди:
Пример из жизни
MVC
(Model-View-Controller)




 Delegation
Модель:
БД, файлы, веб-сервисы,
бизнес логика

Вид:
Элементы управления:
кнопки, окна, картинки

 Контроллер:
Обеспечивает взаимодействие между
пользователем, видом и моделью
Экран 1   Экран 2




  MVC       MVC
Экран 1                                   Экран 2
             (стартовый)                               (фотография)
              MyViewController                     UIImagePickerController
      <UIImagePickerControllerDelegate>            delegate = MyViewController




                                                        Фотография получена


imagePickerController:didFinishPickingMediaWithInfo:
Основы "мобильной" разработки на примере платформы iOs (iPhone)
Основы "мобильной" разработки на примере платформы iOs (iPhone)
Код для кнопки   :
Код для кнопки   :
Основы "мобильной" разработки на примере платформы iOs (iPhone)
$99    Разработка для AppStore



$299   Корпоративные приложения



$0     Лицензий для студентов
Альтернативное IDE

HTML5 + JS

HTML5 + JS

C#, Silverlight

HTML, JavaScript,
ActionScript®, Flex,
http://developer.apple.com

http://wikipedia.org

http://habrahabr.ru

http://stackoverflow.com

http://apple.com/itunes
akireev@codemastersintl.com

More Related Content

PDF
Flutter: No more boring apps! - UA Mobile 2019
PPTX
Site forclick
 
PDF
"IntelliJ IDEA и Android Studio для Android-разработчиков". Филипп Торчинский...
PPTX
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
PPTX
ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...
PPTX
SIGNALR - ОБМЕН СООБЩЕНИЯМИ В РЕАЛЬНОМ ВРЕМЕНИ
PPTX
Введение в Knockout
PPTX
Sql azure federations
Flutter: No more boring apps! - UA Mobile 2019
Site forclick
 
"IntelliJ IDEA и Android Studio для Android-разработчиков". Филипп Торчинский...
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...
SIGNALR - ОБМЕН СООБЩЕНИЯМИ В РЕАЛЬНОМ ВРЕМЕНИ
Введение в Knockout
Sql azure federations

Viewers also liked (20)

PPTX
KNOCKOUTJS КАК РЕАЛИЗАЦИЯ MVVM
PPTX
Thinking in parallel ab tuladev
PPTX
RESPONSIVE WEB DESIGN
PPTX
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
PPTX
СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++
PPT
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
PPTX
Unit tests
PDF
Domain-Driven Design: Модель вместо требований
PPTX
TDD (Test-driven Development) как стиль разработки.
PPTX
PaaS и SaaS
PPTX
Автоматизированное тестирование UI на C# + Selenium WebDriver
PPTX
Реализация REST и SOAP сервисов с помощью WCF
PPT
Лекция Android
PPTX
Ruby - или зачем мне еще один язык программирования?
PPTX
Domain Driven Design
PDF
DDD Workshop
PPTX
СОЗДАЙ РОБОТА С НУЛЯ
PPTX
CONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITY
PPTX
Как писать красивый код или основы SOLID
PPTX
МАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCV
KNOCKOUTJS КАК РЕАЛИЗАЦИЯ MVVM
Thinking in parallel ab tuladev
RESPONSIVE WEB DESIGN
РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
СИ++ УМЕР. ДА ЗДРАВСТВУЕТ СИ++
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
Unit tests
Domain-Driven Design: Модель вместо требований
TDD (Test-driven Development) как стиль разработки.
PaaS и SaaS
Автоматизированное тестирование UI на C# + Selenium WebDriver
Реализация REST и SOAP сервисов с помощью WCF
Лекция Android
Ruby - или зачем мне еще один язык программирования?
Domain Driven Design
DDD Workshop
СОЗДАЙ РОБОТА С НУЛЯ
CONTINUOUS INTEGRATION ДЛЯ ЧАЙНИКОВ ВМЕСТЕ С TEAMCITY
Как писать красивый код или основы SOLID
МАШИННОЕ ЗРЕНИЕ С ИСПОЛЬЗОВАНИЕ OPENCV
Ad

Similar to Основы "мобильной" разработки на примере платформы iOs (iPhone) (20)

PPTX
2014.12.06 01 Александр Чернышев — Нафига Козе Баян или нужен ли вам swift, и...
PDF
Xe4 launch мобильная разработка всеволод_леонов
PDF
основы ооп на языке C#. часть 1. введение в программирование
PDF
Александр Сычев "Статика и динамика. Как фреймворки помогут прокачать ваше пр...
PDF
Desktop app based on node js and html5
PDF
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
PPTX
Читабельные отчеты для автоматизации на C# / Gallio / BDDfy
PDF
Юрий Василевский «Автоматизация в XCode»
PDF
Юрий Василевский "Автоматизация в XCode"
PDF
Избавляемся от старья и переходим на SwiftUI / Руслан Кавецкий (Agora)
PDF
Введение в разработку для iOS
PDF
Александр Бабаев — Работа с ускорением app code.
PPTX
METRO. Дизайн для Windows Phone
PDF
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
PPTX
Микросервисы в .NET Core
PDF
Что нового в ASP.NET 5
PDF
Экскурс в мир WEB разработки
PDF
Описание VivaVisualCode
PDF
Rad studio 10 seatlle обзор продукта
PDF
Кроссплатформенная разработка
2014.12.06 01 Александр Чернышев — Нафига Козе Баян или нужен ли вам swift, и...
Xe4 launch мобильная разработка всеволод_леонов
основы ооп на языке C#. часть 1. введение в программирование
Александр Сычев "Статика и динамика. Как фреймворки помогут прокачать ваше пр...
Desktop app based on node js and html5
SECON'2017, Мухаметов Андрей, XCTest. UI и Unit тестирование для iOS.
Читабельные отчеты для автоматизации на C# / Gallio / BDDfy
Юрий Василевский «Автоматизация в XCode»
Юрий Василевский "Автоматизация в XCode"
Избавляемся от старья и переходим на SwiftUI / Руслан Кавецкий (Agora)
Введение в разработку для iOS
Александр Бабаев — Работа с ускорением app code.
METRO. Дизайн для Windows Phone
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Микросервисы в .NET Core
Что нового в ASP.NET 5
Экскурс в мир WEB разработки
Описание VivaVisualCode
Rad studio 10 seatlle обзор продукта
Кроссплатформенная разработка
Ad

More from Pavel Tsukanov (7)

PPT
ВВЕДЕНИЕ В NODE.JS
PPTX
АНИМАЦИЯ В FLASH И HTML5
PPT
ХАКЕРЫ И АНТИХАКЕРЫ
PPTX
ЗАРАБОТОК В ИНТЕРНЕТЕ.
PPT
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
PPTX
Статический анализ кода
PPTX
Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
ВВЕДЕНИЕ В NODE.JS
АНИМАЦИЯ В FLASH И HTML5
ХАКЕРЫ И АНТИХАКЕРЫ
ЗАРАБОТОК В ИНТЕРНЕТЕ.
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
Статический анализ кода
Применение нейронных сетей и генетических алгоритмов при торговле на бирже.

Основы "мобильной" разработки на примере платформы iOs (iPhone)

Editor's Notes

  • #39: Доклад легкий. Совсем немного программирования