Лекция 5 CS193P Fall 2017 — Рисование в iOS.

В начале Лекции 5 рассматриваются небольшие темы :

  • Обработка ошибок в Swift
  • Использование Any  в Swift
  • «Кастинг типа» с помощью оператора as?
  • Другие интересные классы: NSObject, NSNumber, Date, Data

Но основная тема Лекции 5 — это views. Профессор сразу вводит уточнения в терминологию.  Он использует слово «view«в двух контекстах. Один из них — это >MVC. Буква V предназначена для View. В этом контексте View означает множество обобщенных (generic) миньонов вашего Controller. Этот View с заглавной буквойV в слове “View”, содержит множество views. Это именно те views, которым посвящена большая часть Лекции 5 и которые являются subclasses класса UIView в iOS.

views — это прямоугольные области на экране, в которых мы рисуем и получаем от пользователя так называемые “жесты прикосновения” (touch gestures), как одинарные, так и множественные. Но на Лекции 4 ведется разговор только о рисовании, управление жестами перенесено в Лекцию 6. Никогда раньше в своих курсах Пол Хэгарти не уделял столько внимания рисованию Views. Возможно, это связано с тем, что компактность кода и богатство синтаксических конструкций Swift позволяют представить рисование как увлекательный и очень интеллектуальный процесс.

Читать далее

Лекция 4 CS193P Fall 2017 — Еще больше Swift.

Лекция 4 в основном теоретическая с небольшими демонстрационными примерами, рассеянными по всей Лекции и показывающими те или иные возможности Swift в действии. Это заключительная (дальше будет изучение iOS) и наиболее трудная Лекция, посвященная Swift. Но где еще вы можете увидеть такое концентрированное, логичное и понятное объяснение таких продвинутых возможностей Swift, как «множественное наследование» функциональности через протоколы protocols?

Читать далее

Задание 1 Stanford CS 193P Fall 2017. Игра Концентрация. Решение.

Содержание

Цель задания состоит в воспроизведении демонстрационного примера, представленного на Лекции, и в небольшом его усовершенствовании. Очень важно, чтобы вы понимали, что вы делаете на каждом шаге воспроизведения демонстрационного примера, тем самым подготовив себя к расширению возможностей игры Концентрация.

Текст Домашнего задания на английском языке доступен на  iTunes в пункте “Programming: Project 1: Concentration″. На русском языке вы можете прочитать текст Задания 1 здесь:, а скачать здесь:

Задание 1 Игра Концентрация iOS 11.pdf

Начинаем выполнять Задание 1 с кода, полученного в конце Лекции 2. Профессор настоятельно рекомендует не копировать код первых 2-х Лекций, а непосредственно печатать его в Xcode, так как это даст хороший опыт освоения среды разработки Xcode 9.

Читать далее

Лекция 3 CS193P Fall 2017 — Swift.

В Лекции 3 подробно рассказывается о возможностях Swift и не только.

Вот повестка дня Лекции 3 :

  • Autolayout тизер
  • Краткий обзор того, что мы изучили в Concentration
  • CountableRange чисел с плавающей точкой
  • Кортежи Tuples
  • Вычисляемые свойства (Computed Properties)
  • Управление доступом (access control)
  • assertions ( утверждения)
  • extensions ( расширения)
  • enum (перечисление)
  • Optionals— это enums
  • Обзор структур данных (включая управление памятью)

Читать далее