Текст Домашнего задания на английском языке доступен на iTunes в пункте “Developing iOS 8 app: Programming: Project 2″. Текст Домашнего задания на русском языке доступен на Задание 2 iOS 8_new.pdf
Задание 2 — очень трудное, но выполнимое. Если вам удастся выполнить его так, как планировал Пол Хэгерти, то есть в соответствии с логикой Swift, а не логикой того языка программирования (C++, C#, Java, Python и т.д.), с которого вы пришли, то можете считать себя «гуру» в Swift и представлять, что вы стоите на «Эвересте» и «снисходительно» смотрите на остальных. Что я имею ввиду под логикой Swift, которую так изобретательно использует Пол Хэгерти? Если вы смотрели предыдущий его курс по iOS 7, то там он в буквальном смысле «жонглирует» nil, чтобы ваш код из одной строчки выполнял кучу работы. То же самое здесь, он будет также хитроумно использовать Optionals. Почти в каждом пункте Задания 2 он призывает рассмотреть вариант решения, состоящий из одной — двух строк. Помимо этого, Задание 2 содержит множество подсказок, которые помогут вам почувствовать «дух» Swift.
Могу сказать по собственному опыту это ключевое задание на получение высочайшего уровня технических навыков программирования на Swift. Но чтобы это получилось, нужно выполнить и все дополнительные задания.
Результаты выполнения заданий можно посылать на форум Swift[ru] для обсуждения. Выкладывайте решения в Github или давайте ссылку на Dropbox или используйте другие системы управления версиями. Xcode работает напрямую с Github. Если у кого-то есть затруднения с этим — обращайтесь на форум, проведем ускоренный курс по выкладывание кода на Github. Если состоится обсуждение ( пока этого на форуме почти нет совсем) — будет интересно.
Специально привела возможное решение Задания 1 ( у вас может быть лучше), чтобы каждый, кто даже «застрял» по какой-то причине, мог «приступить к выполнению Задания 2.