Добро пожаловать на курс Стэнфорда CS193P. Это курс “Разработка iOS 10 приложений на Swift 3” Winter 2017.
Лекция 1 и слайды на английском языке находятся на iTunes название “1. Introduction to iOS 10, Xcode 8, and Swift 3.”
На сайте представлен полный неавторизованный хронометрированный конспект Лекции 1 на русском языке.
Первая часть — 0 — 40 минута находится в этом посте,
Вторая часть — 40 — 85 минута — находится здесь.
Этот же конспект можно посмотреть в PDF файле:
Код демонстрационного примера для Лекции 1 находится на Github в папке Calculator I.
На Лекции 1 профессор Пол Хэгерти представляет этот курс, озвучивает каковы предварительные требования для его успешного прохождения и дает беглый обзор iOS 10. Затем полностью погружается в очень большой и продолжительный демонстрационный пример.
Темы демонстрационного примера:
- Создание проекта Project в Xcode 8
- Построение пользовательского интерфейса (UI)
- iOS симулятор
- print (вывод на консоль, используя \( ) нотацию)
- Определение класса в Swift, включая определение переменных экземпляра класса и методов
- Связывание свойств (переменных экземпляра класса) в Swift коде с элементами пользовательского интерфейса UI (Outlets)
- Привязка элементов UI к методам в коде Swift (Actions)
- Доступ к iOS документации из кода
- Optionals (?, неявное развертывание путем декларирования со знаком !, явное развертывание с помощью ! и if let)
- Вычисляемые свойства (computed property)
За этими сухими пунктами скрывается блестящее изложение основных синтаксических конструкций Swift, начиная от самых элементарных и заканчивая такими сложными и непривычными как Optional и неявно развернутое Optional (implicitly unwrapped Optional). Очень небольшое количество языков программирования имеет концепцию Optional. Это действительно крутая концепция, которую обязательно нужно понять, ибо в Swift она встречается повсюду, ей пронизаны всех iOS APIs. Но требуется некоторое время, чтобы к ней привыкнуть и эффективно ее использовать.
В заключении профессор показывает, как с помощью вычисляемой переменной (computed property) можно превратить неуклюжий традиционно написанный код в шедевр минималистического стиля.
Поэтому для начинающих изучать Swift (а не программирование как таковое) Лекции 1 и 2 являются must have. В Лекции 2 продолжится демонстрационный пример, начатый на этой Лекции.