iOS 7 + Objective-C

Демонстрационные примеры адаптированы к iOS 9 & iOS 10 и Xcode 9
Screen Shot 2015-03-22 at 7.49.36 PMScreen Shot 2015-03-22 at 7.44.49 PM

Курс  «Developing iOS 8 Apps with Swift»  преподается на Swift,  но многие программируют на Objective-C, да и действующих приложений, написанных на Objective-C, — очень очень много.

Долговременное будущее принадлежит Swift, но Objective-C все еще здесь и будет находится здесь еще значительное время. Компания Apple приложила огромные усилия для комфортного совместного использования  Objective-C и Swift при разработки приложений на iOS. Поэтому тем, кто интересуется языком Objective-C  для программирования iOS приложений, можно порекомендовать предыдущий курс профессора  Paul Hegarty Developing iOS  7 Apps for iPhone and iPad, неавторизованные конспекты лекций которого в русскоязычном варианте размещены на этом сайте. Это курс оказался последний стэнфордским курсом на Objective-C и он содержит самые сложные демонстрационные примеры и Задания.

Читает его профессор Paul Hegarty.  Он читает курс таким образом, чтобы вы прежде всего знали как идеологически подойти к проектированию приложений в iOS, а потом уже как это реализовать на Objective-C. Именно поэтому его курсы фактически не стареют, и даже если изменился язык программирования с Objective-C на Swift, то вы все равно найдете очень много полезных идей. Он многократно сократит ваш путь изучения программирования на iOS  и Objective-C.

Однако требуются некоторые дополнения, связанные с тем, что в iOS 9 по сравнению с iOS 7 появились новые возможности и изменились API некоторых классов, появилась такая новая концепция, как адаптивный интерфейс. Поэтому неавторизованный конспект лекций на русском языке дополнен примечаниями относительно того, как та или иная вещь функционируют в iOS 9.

Для того, чтобы воспользоваться этим контентом, вам нужно иметь только Mac — Macbook Pro, MacBook Air, iMac.

Конспект лекций хронометрирован через каждые 5 минут, и если вы параллельно включите английскую версию видео курса, то даже не владея английским в совершенстве, вы поймете все нюансы, о которых говорит профессор Paul Hegarty. А тем, кто владеет беглым английским, наличие текстового конспекта, который всегда под рукой, позволит освоить материал на более высоком уровне.

Stanford CS 193P iOS 7 Начало.

Лекция 1 CS 193P iOS 7  — iOS, MVC, Objective-C.

Лекция 2 CS 193P iOS 7  — Xcode.

Лекция 2 CS 193P iOS 7  — Демонстрационный пример (пошаговая инструкция).

Лекция 3 CS 193P iOS 7 — Objective-C.

Лекция 4 CS 193P iOS 7  — Фреймворк Foundation, строки с атрибутами Attributed Strings.

Лекция 5 CS 193P iOS 7  — «Жизненный цикл» View Controller.

Лекция 6 CS 193P iOS 7  — Полиморфизм с Controller и множественные MVC в приложениях, UINavigation, UITabBar.

Лекция 7 CS 193P iOS 7  — Views и жесты (Gestures).

Лекция 8 CS 193P iOS 7  — Протоколы, Блоки и Анимация.

Лекция 9 CS 193P iOS 7  — Анимация и Autolayout (авторазметка).

Лекция 10 CS 193P iOS 7  — Блоки, многопоточность и Scroll View.

Лекция 11 CS 193P iOS 7  —  UITableView и iPad (UISplitViewController, Popover)

Лекция 12 CS 193P iOS 7  —  Documents и Core Data

Лекция 13 CS 193P iOS 7  —  Core Data и Table View ( + iOS 8)

Лекция 14 CS 193P iOS 7  —  UIApplication, Network Activity Indicator и Maps ( + iOS 8 и iOS 9)

Лекции 14 CS 193P iOS 7. Дополнение  — Адаптивные SplitViewController и Popover в приложении Photomania для iOS 9.

Лекция 15 CS 193P iOS 7  —  MapKit и Embed Segue (+iOS 9)

Лекция 16 CS 193P iOS 7  —  Modal Segues, Text Fields, Alerts и Action Sheets (+iOS 9)

Лекция 17 CS 193P iOS 7 —  фотокамера, датчики движения и Core Motion, «жизненный цикл» приложения (+iOS 9)

Дополнение к Лекциям 15, 16 и 17 Stanford CS 193P iOS 7. Адаптивный интерфейс с двумя storyboards для iOS 9.

Демонстрационные примеры к лекциям находятся на сайте Stanford.

Особый прорыв в изучении программирования в операционной системе iOS удается  достичь при выполнении Заданий, которые дополняют этот замечательный курс. Я перевела Задания на русский язык и представила варианты решения этих заданий.

Задание 1 CS 193P iOS 7  2014  — Matchismo (карточная игра) показано выполнение всех пунктов.

Задание 2 CS 193P iOS 7  2014  — Matchismo 2 (карточная игра) показано выполнение всех пунктов.

Задание 3 CS 193P iOS 7 2014 — Set (карточная игра) 

Задание 4 CS 193P iOS 7 2014 — Графическая игра Set (Objective-C)

Задание 5. Top Places (Objective-C + iOS 9). CS 193P iOS 7 2014. Обязательные пункты 1 -5.

Задание 5. Top Places (Objective-C + iOS 9). CS 193P iOS 7 2014. Адаптивный UI. Обязательные пункты 6 -12.

Продолжение следует….

В курсе обычно бывает 6 Домашних Заданий. Они, как правило, очень интересные, и вы несомненно получите от этого удовольствие.

Процесс выполнения заданий на Mac в  Xcode 7 — очень увлекательный: хорошая информационная поддержка, результат отображается на симуляторах iPhone и iPad  или на реальных устройствах, визуализация процесса отладки.

Самое интересное заключается в том, что из Xcode 7 вы можете запустить демонстрационные примеры на своем устройстве (или поделится с друзьями) совершенно бесплатно — для этого не нужно иметь сертификат разработчика Developer Account,  стоимостью 99 $/год. Начиная с Xcode 7 политика Apple по отношению к разработчикам изменилась. Они хотят привлекать к разработке приложений более молодых программистов.

После выполнения очередного задания вы другими глазами посмотрите на ту же самую лекцию, которую слушали перед выполнением задания,  она будет для вас абсолютно понятной и логичной, и вы сможете сосредоточиться на важных нюансах, которых в лекциях Пола Хeгэрти очень много.

iTunes U работает на Macs и iOS устройствах. На iPad в программе iTunes U все материалы размещаются в очень удобной форме для просмотра и чтения. Демонстрационные примеры нужны именно на Mac.

Лекции курса iOS 7 на английском языке можно посмотреть также на youtube.

Адаптированные к iOS 9 варианты решений Заданий Assignment 1, Assignment 2, Assignment 3, Assignment 4, Assignment 5  и  демонстрационные примеры доступны на Github.

iOS 7 + Objective-C: 16 комментариев

    • Очень хочу опубликовать остальные задания, потому что они реально очень интересные. Сейчас закончила курс iOS 8, попробую найти время. Но если вас интересуют выполненные задания без объяснений, то можно пойти на Github, где я выполняла эти задания в 2013 — 2014 годах. Посмотрите, там есть и другие задания — 4, 5, 6.

  1. Очень хорошо было бы увидеть продолжение, ибо obj-c сейчас намного более актуален в плане промышленной разработки. Свифт на данный момент воспринимается лишь как язык для баловства.

    • Насчет Swift не согласна. Уже — не баловство. Да и язык очень приятный и логичный. Сейчас уже можно писать полноценные приложения и библиотек на Swift — куча. Над продолжением перевода Objc работаем.

  2. Отличная работа. Очень хотелось бы увидеть разбор остального домашнего задания по это курсу.
    Спасибо огромное за Вашу работу.

    • Продолжение будет. Но хотелось бы сделать оставшиеся два задания более современными и использовать адаптивный UI, принятый в iOS 9. Сейчас этим и занимаюсь.

  3. Ребята всем привет. Автору огромное спасибо за проделанную работу. Если кто-нибудь захочет совместно со мной по стенфордским курсам пройти обучение добавляйтесь в скайп progmev либо аська 689618670. Буду рад совместному изучению.

Добавить комментарий для tatiana.kornilova@gmail.com Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *