Интуит. Разработка приложений для iOS. Лекция 1. Знакомство.

895
-1

Published on

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
895
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
11
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Интуит. Разработка приложений для iOS. Лекция 1. Знакомство.

  1. 1. Разработка приложений для iOS Лекция 1 Знакомство Глеб Тарасов gleb34@gmail.com
  2. 2. Презентации на slideshare http://www.slideshare.net/gtarasov Примеры кода по почте gleb34@gmail.com
  3. 3. http://www.slideshare.net/gtarasov/ss-12299478
  4. 4. Чему будем учиться?
  5. 5. Интерфейс
  6. 6. Функционал: • Загрузка данных из интернета, • Работа с серверами • Работа с файлами • Внутренняя база данных • Воспроизведение аудио, видео • Отображение фото • Редактирование фото • Работа с геолокацией, компасом • Работа с акселерометром
  7. 7. Как будут проходить занятия? • 12 лекций • 12 домашних заданий • у каждого свой проект Первое задание • установить дома Mac OS и Xсode • запустить «Hello world» в iPhone-симуляторе • выбрать себе проект
  8. 8. Мобильная разработка, что изменилось?
  9. 9. Особенности • Высокие ожидания пользователей • Другие паттерны использования • Маленький экран • Слабый процессор, мало памяти • Медленный интернет • Управление жестами
  10. 10. Почему iOS?
  11. 11. Разработка под iOS
  12. 12. XCode
  13. 13. Mac OS 10.9 Mavericks
  14. 14. Как запустить Mac OS?
  15. 15. Компьютер Mac
  16. 16. Hackintosh • http://hackintosh.ru • http://applelife.ru • http://vk.com/osx86pc • http://rutracker.org/forum/viewforum.php?f=1383
  17. 17. Виртуалки • VMWare • VirtualBox http://rutracker.org/forum/viewforum.php?f=1383
  18. 18. Как поставить Xcode? • Если Mac OS Mavericks : через AppStore • Если более старая: https://developer.apple.com/downloads
  19. 19. Objective-C
  20. 20. История 1981 — Object-Oriented Pre-Compiler (OOPC). Компания StepStone. Tom Love & Brad Cox 1986 — Objective-C. «Object-Oriented Programming, An Evolutionary Approach» (Brad Cox). 1988 — NeXT лицензирует Objective-C 1996 — Apple покупает NeXT. Objective-C — основной язык для Mac OS. + 2007 — Objective-C — основной язык для iPhone OS
  21. 21. Основные особенности • объектно-ориентированный • компилируется в машинный код • полностью совместим с Си • слабо-типизированный • управление памятью основано на счетчике ссылок
  22. 22. Запуск «Hello, World»
  23. 23. Теперь немного ООП http://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование
  24. 24. Класс - описание внутреннего состояния + методов изменения этого состояния Объект - экземпляр класса Поля - состояние объекта Методы - изменение состояния объекта
  25. 25. Класс «Работник» Поля: - имя – строка - возраст – целое - пол – м/ж - время_поступления_на_работу – дата - время_увольнения – дата - подчиненные – массив работников - руководитель – работник Методы: - уволить() - добавить подчиненного(работник)
  26. 26. Наследование Описание новых классов на основе существующих базовых классов Инкапсуляция Ограничение доступа к составляющим объект компонентам Полиморфизм Единообразная обработка разнотипных данных
  27. 27. Наследование Класс «Руководитель» (наследуется от «Работник») Поля: - подчиненные (массив работников) Методы: - добавить подчиненного(работник)
  28. 28. Класс «Работник» Поля: - имя – строка - возраст – целое - пол – м/ж - время_поступления_на_работу – дата - время_увольнения – дата - руководитель – руководитель Методы: - уволить()
  29. 29. Класс «Руководитель» Поля: - имя - возраст - пол - время_поступления_на_работу - время_увольнения - подчиненные – массив работников - руководитель – руководитель Методы: - уволить() - добавить подчиненного(работник)
  30. 30. Инкапсуляция Поля: - время_поступления_на_работу – дата - время_увольнения – дата Методы: - устроился_на_работу_сегодня() - уволить() - работает_ли_сейчас()
  31. 31. Полиморфизм Класс «Фигура»: - стороны – массив объектов Сторона Класс «Сторона»: - длина – число Класс «Вычислитель_периметра»: - вычислить_периметр(фигура)
  32. 32. MVC Controller View Model
  33. 33. Модель Модель предоставляет знания: данные и методы работы с этими данными, реагирует на запросы, изменяя своё состояние. Не содержит информации, как эти знания можно визуализировать.
  34. 34. Представление Отвечает за отображение информации (визуализацию). Часто в качестве представления выступает форма (окно) с графическими элементами.
  35. 35. Контроллер Обеспечивает связь между пользователем и системой: контролирует ввод данных пользователем и использует модель и представление для реализации необходимой реакции.
  36. 36. Космические бои • космические корабли • умеют стрелять разным оружием • у них есть броня • разные уровни •…
  37. 37. Про выбор проекта • аудиокнига • викторина • справочник • новостное приложение • карточная или логическая игра • мобильная версия какого-то сайта •…
  38. 38. Домашнее задание • выбрать проект • установить дома Mac OS • установить Xcode • создать и запустить проект Single View Application
  39. 39. Всё! Глеб Тарасов gleb34@gmail.com twitter.com/pilot34
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×