![](https://habrastorage.org/web/b4a/e3d/317/b4ae3d3174924da79cbe41c2af418f37.png)
Что такое Swift Playgrounds?
Как пишет сама компания Apple: «Swift Playgrounds is a revolutionary app for iPad that makes it fun to learn and experiment with code.» И действительно, на простых интерактивных примерах, понятных даже детям, объясняются основы программирования с использованием языка Swift.
Пользователь работает в так называемой «песочнице» — playground, отсюда и название.
Как выглядит Swift Playgrounds?
В новой версии был произведён редизайн приложения. Теперь при запуске вы попадаете в главное меню. Оно оформлено, как многие Apple-приложения в виде «книжной полки».
При нажатии на элемент «Get PlayGround» — мы попадаем в небольшой магазин различных песочниц. Что важно — все они бесплатные. Все песочницы — делятся на несколько типов:
- «Learn to Code» — Простые уроки для полных новичков
- «Challenges» — Различные задачи, уже полноценные проекты
- «Accessories» — Появились только в этой версии, рассматривается работа с внешними устройствами (Sphero, LegoMindstorms, Dash и тд)
- «Starting Points» — Пустые шаблоны для обучения.
В данный момент все песочницы используют Swift версии 3.1.
Accessories — основная новинка
Нужно сказать, что и до этого обновления в интернете можно было найти песочницы для взаимодействия с внешними устройствами. И действительно, если Apple позиционирует это приложение для обучения детей, то нет ничего лучше наглядного применения. Но все эти песочницы оставляли желать лучшего. Были сложности с их загрузкой и подключением внешних устройств. Посмотрим, что же нам предложит Apple, на примере работы с роботом Sphero.
Sphero & Swift
Для Sphero доступны две песочницы — «Sphero Arcade» и «Sphero Template». Начнём с первой.
Всё очень просто, при первом запуске рассказывается, чему нас научит этот курс, а дальше запускаются обычные уроки.
Рассказывается как подключить, описываются простейшие команды, предлагаются задачки.
Рассматриваются следующие функции:
- roll — движение с заданной скоростью и с заданым направлением
- wait — пауза заданное количество секунд
- stopRoll — остановка
- onCollision — метод для обработки столкновений
После этого предлагается создать Ping-Pong, где в качестве мяча используется Sphero.
Что же касается Sphero Template — это просто шаблон, где определены все функции для работы с роботом. Кроме этого, в отдельной части экрана отображаются реальные характеристики робота в данный момент: скорость, угол, показания акселерометра и гироскопа.
С учётом того, что теперь можно взаимодействовать с:
Swift Playgrounds становится по-настоящему интересной и может использоваться для проведения различных интерактивных занятий и мастер-классов. Небольшим, но ощутимым недостатком можно назвать отсутствие русской локализации.