Textastic — можно ли на iPad программировать

Приложение Swift Playgrounds научит легко и увлекательно программировать

Новое приложение для iPad обучает программированию и вдохновляет на творческие эксперименты

САН-ФРАНЦИСКО - 13 июня 2016 г. - Сегодня компания Apple представила Swift Playgrounds, инновационное приложение для iPad, c которым все желающие смогут легко научиться программировать. Интерактивный интерфейс Swift Playgrounds помогает начинающим изучить Swift - простой в освоении язык программирования Apple, на котором профессиональные разработчики создают приложения мирового уровня. Swift Playgrounds включает в себя созданные Apple уроки программирования, где учащиеся пишут код, чтобы проводить экранных героев по увлекательному графическому миру, решая загадки, выполняя задания и осваивая важнейшие навыки программирования. Встроенные в приложение шаблоны помогают учащимся воплощать свои творческие замыслы и создавать реальные программы, которые можно отправлять друзьям через Почту и Сообщения или даже публиковать в интернете.

«Я жалею, что у меня не было Swift Playgrounds, когда я впервые учился программировать, - сказал Крейг Федериги, старший вице-президент Apple по программному обеспечению. - Приложение Swift Playgrounds уникально в своём роде: оно очень лёгкое для освоения, но достаточно мощное для написания настоящего кода. Оно объединяет программирование с реальной жизнью и помогает новому поколению освоить навыки, необходимые для самовыражения».

«Новое приложение Apple Swift Playgrounds - одно из самых мощных и доступных образовательных приложений, которое я когда-либо видела. Нам не терпится включить его в новую учебную программу, - говорит Джин МакДоналд, основатель учебного лагеря для девочек App Camp. - Оно даёт нашим учащимся лёгкий и увлекательный способ изучить основные принципы программирования на iPad, а также освоить язык Swift. Эти знания пригодятся им независимо от выбранной специальности».

Благодаря урокам программирования, созданным Apple, учащиеся смогут изучить такие основные понятия, как запуск команд, создание функций, выполнение циклов, применение условных выражений и переменных. Это поможет им постепенно развить свои навыки и обрести уверенность. Apple будет регулярно выпускать новые задания, чтобы учащиеся могли оттачивать свои умения по мере роста навыков и расширения интересов. Преподаватели и разработчики могут также создавать собственные задания, используя Xcode.

В дополнение к урокам, Swift Playgrounds включает ряд встроенных шаблонов, которые помогут амбициозным разработчикам выразить себя. На основе этих шаблонов учащиеся и разработчики могут создавать собственный код, добавляя графику и элементы управления. Swift Playgrounds даёт практически безграничные возможности для создания интерактивных программ на основе Swift и платформ iOS. Вы можете начать с пустого документа Playground или с одного из встроенных шаблонов. Постепенно осваивая графику и интерфейс, учащиеся придут к созданию мощных приложений, реагирующих на касания, задействующих акселерометр и устройства Bluetooth. А поскольку в Swift Playgrounds используется реальный код Swift, проекты можно экспортировать напрямую в Xcode, чтобы создавать программы для iOS и macOS, а затем превращать их в полноценные приложения.

Приложение Swift Playgrounds с самого начала создавалось для интерфейса Multi-Touch на iPad, поэтому вы можете составлять программы всего несколькими касаниями. На новой клавиатуре для программирования можно легко вводить символы, часто применяемые в Swift, используя жесты смахивания по клавишам. Панель вкладок показывает наиболее вероятные дальнейшие команды в зависимости от контекста. На всплывающей клавиатуре можно просто коснуться цифры, чтобы её отредактировать, коснуться цвета, чтобы показать панель выбора цветов, и даже перетащить границы цикла или функции, чтобы встроить их в существующий код. Можно также перетаскивать фрагменты кода из библиотеки, чтобы создавать новый мощный код почти без ввода команд. Ваши программы великолепно выглядят при запуске на большом дисплее Retina на iPad, а жесты Multi-Touch и датчик ускорения делают управление ещё более увлекательным.

Доступность
Предварительная версия Swift Playgrounds уже сегодня доступна участникам программы Apple Developer Program в составе предварительной версии iOS 10 для разработчиков, а в июле станет доступна в составе общедоступной бета-версии iOS 10. Окончательная версия Swift Playgrounds станет бесплатно доступна в App Store этой осенью. Swift Playgrounds работает на iPad Air и iPad Pro, а также iPad mini 2 и новее под управлением iOS 10. Подробная информация, видеоролики, изображения и демонстрации доступны на сайте .

Компания Apple произвела революцию в мире персональных устройств, представив в 1984 году Macintosh. Сегодня Apple является мировым лидером в области инноваций, выпуская iPhone, iPad, Mac, Apple Watch и Apple TV. Четыре программных платформы Apple - iOS, macOS, watchOS и tvOS - обеспечивают идеально слаженную работу всех устройств Apple и предоставляют пользователям уникальные сервисы, включая App Store, Apple Music, Apple Pay и iCloud. 100 000 сотрудников Apple полностью посвящают себя созданию лучших продуктов на Земле и помогают сделать мир лучше, чем он был до нас.

Контакты для прессы:
Сергей Исаков
Apple

+7 495 961 24 54

    © Apple Inc., 2016 г. Все права защищены. Apple, логотип Apple, Swift Playgrounds, iPad, Swift, Xcode, macOS, Multi-Touch, Retina, App Store, iPad Air, iPad Pro и iPad mini являются товарными знаками Apple. Другие названия компаний и продуктов могут являться товарными знаками соответствующих владельцев.

Как известно, Apple всячески препятствует появлению возможности запускать на своих мобильных устройствах сторонние приложения. Программы для невзломанных iPhone, iPod touch и iPad можно покупать лишь через магазин Apple App Store, а за право тестировать приложения на своих устройствах разработчикам приходится платить 99 долларов в год. К сожалению, такая политика препятствует появлению средств разработки приложений на самих устройствах. Однако создателю программы Codify , дающей возможность использовать iPad для написания программ (в первую очередь – игр) на языке Lua, удалось добиться одобрения в App Store.

В июне 2011 года в Apple несколько пересмотрели правила публикации приложений в App Store и теперь разрешают включать в программы средства интерпретации различных скриптовых языков. В первую очередь это необходимо разработчикам игр, так как зачастую для реализации игровой логики они используют высокоуровневые языки. Чего в Apple делать не разрешают, так это скачивать произвольный код из внешних источников. Появись где-нибудь такая возможность, это бы грозило зарождением альтернативного App Store, чего в Apple очень не хотят.

Автору Codify пришлось пойти на серьёзные ограничения, чтобы средство программирования таки одобрили в App Store. На данный момент есть лишь один способ добавить код в редактор Codify – написать всё вручную. С экспортом те же проблемы. Чтобы выдрать написанное в Codify, придётся выделять весь код, копировать и отправлять себе по почте. Впрочем, такой способ подойдёт разве что для создания резервной копии или же отправки исходников кому-нибудь из друзей. Перенести приложение на настольный компьютер всё равно без лишнего труда не получится – окружения Codify, вроде прилагаемых к среде разработки графических библиотек, автор скачать не предлагает. А жаль. Если бы он опубликовал шаблонный проект Xcode со всеми библиотеками, то вытянутые из Codify исходники можно было бы сразу превратить в самостоятельное приложение.

У Codify есть и другие ограничения. В создаваемых там играх пока что можно использовать лишь спрайты из стандартного набора; выбрать собственную картинку не получится. Однако у приложения есть и плюсы – например, добавленные к экранной клавиатуре кнопки, позволяющие быстро перемещаться по тексту программы, или диалоги выбора цвета или спрайта, подставляющие значения прямо в список параметров соответствующих функций. Также к Codify прилагается хорошая справка по всем доступным функциям (графика, звук, математические функции, внешние параметры, работа с тачскрином и акселерометром).

Codify стоит восемь долларов США и доступен в российском App Store. Будем надеяться, что эта инициатива не заглохнет и не станет очередной жертвой переменчивого настроения модераторов App Store. Хотелось бы видеть такие же среды разработки для других языков и с другими библиотеками, к примеру Python или Processing. Если же допуск Codify до пользовательских айпадов не случайность, а начало плавной смены стратегии, то не исключено, что в Apple и сами думают над тем, как сделать iPad пригодным для программирования. А это было бы просто великолепной новостью.

Российский разработчик Дмитрий Ковба выпустил серию приложений, которую могут оценить не только начинающие девелоперы, осваивающие новые для себя языки программирования, но и гики, желающие осуществлять сложные математические вычисления на своем iOS-устройстве.

Дмитрий представил три универсальных приложения для iPhone и iPad, каждое из которых предназначено для одного из языков программирования, использующихся для разработки ПО: C++, Basic и Pascal.

C++ - компилируемый статически типизированный язык программирования общего назначения, который поддерживает разные парадигмы написания кода. Он сочетает свойства как высокоуровневых, так инизкоуровневых языков. Область применения C++ включает создание операционных систем, разнообразных прикладных программ, драйверов устройств, приложений для встраиваемых систем, высокопроизводительных серверов, а также развлекательных приложений.

Basic был разработан в 1963 году профессорами Дартмутского колледжа Томасом Курцем и Джоном Кемени. Язык предназначался для обучения программированию и получил широкое распространение в виде различных диалектов, прежде всего как язык для домашних компьютеров. Интересно, что бейсик подвергается жесткой критике за то, что его простота и бесструктурность поощряют порочные методики и привычки программирования, которые могут быть уместны при создании малых программ, но способны привести к краху крупных проектов.

Pascal – один из наиболее известных языков программирования общего назначения, который, широко применялся в промышленном программировании, обучении программированию в высшей школе. Язык назван в честь выдающегося французского математика, физика, литератора и философа Блеза Паскаля, который создал первую в мире механическую машину, складывающую два числа.

С помощью C++, Basic и Pascal для iOS-устройств вы можете искать численные решения интегралов и уравнений, решать специализированные учебные и научные задачи или просто писать код для развлечения.

В настоящее время разработчики работают над улучшением процесса компиляции. В будущих версиях C++, Basic и Pascal будет добавлен файловый менеджер, а также шаблоны и примеры различных программ. Скачать C++, Basic и Pascal стоимостью $2.99 вы можете из App Store по ссылкам далее.

Разработчик предоставил нам 15 промокодов – по 5 к каждому из приложений. Коды будут разыграны среди посетителей, оставивших комментарий к статье. Не забудьте заполнить форму E-mail и укажите желаемую программу. Удачи!

Конкурс проведен , победителями стали следующие пользователи: Max, Vladimir, Born2kill, Shoker, apels1nko72p, RioDezz, znm, Sxebang, AntonBordov, AlexForwarder, Greenbint, Itoxa17, Ильюшка, Alexey и mixail. Благодарим за участие!

Программирование - процесс творческий и часто желание написать кусок кода или сиюминутно исправить ошибку становится просто невыносимым. Иногда написания кода требуют внешние обстоятельства, как то критичная ошибка в коде, которая валит проект. Для сотрудников, занимающих руководящие позиции в команде, нужна возможность провести code review и поправить проблемные участки кода.

Хорошо когда в пределах досягаемости есть стационарный компьютер или ноутбук на котором развернута привычная среда разработки. Но что делать если вы находитесь за пределами рабочего места? Таскать с собой постоянно ноутбук? Но во первых большой 13-15 дюймовый ноутбук не везде развернешь (например общественный транспорт), а во вторых таскать его постоянно с собой - еще то занятие. Можно конечно купить 11 дюймовый MacBook Air (или его аналог), но все равно он будет не настолько компактен и не так часто используем, чтобы оправдать покупку.

Чтож, обратим свой взор на устройства, которые сейчас практически всегда с нами - это телефон и планшет. Телефон - это конечно вариант экстремальный, хотя сейчас, с появлением 6 - 6,5 дюймовых моделей, грань между телефоном и планшетом стирается. У меня есть опыт успешного восстановления удаленного сервера по ssh с телефона iPhone 4s с 3.5 дюймовым экраном. Но мы все таки говорим о процессе полноценной работы с кодом, поэтому, на мой взгляд, минимальным является планшет с диагональю от 7 дюймов, экран которого вмещает сопоставимое с экраном большого компьютера, информации. Я покажу на примере iPad Mini возможные варианты его использования для решения повседневных задач разработчика.

Если вас заинтересовала тема - читаем дальше (осторожно, большое количество картинок).

Условно, есть три направления, по способу взаимодействия с кодом:

Использование текстового терминала, удаленного SSH-соединения и консольного редактора типа Vim, настроенного на сервере. Яркие представители - это Prompt (от известной компании Panic) и vSSH
- использование нативных iOS приложений-текстовых редакторов: Textastic, Coda, GoCoEdit
- использование средств удаленного доступа на основную машину: RDP, VNC, TeamViewer, Parallels Access

Каждый из этих способов имеет свои достоинства и недостатки, которые мы рассмотрим ниже.

Использование текстового терминала

Предположим, у вас есть удаленный сервер и на нем настроен Vim. Vim по своей природе предполагает работу только с клавиатурой, поэтому идеально ложится на паттерн использования внешней клавиатуры. Про гибкость настройки Vim можно найти тысячи статей в интернете - скажу лишь, что немного допиленный Vim по удобству не уступает редакторам от JetBrains, продуктами которой я так же активно пользуюсь. Если Вы разрабатываете только backend приложения и тестирование результатов можете проводить из консоли - я советую остановиться на этом варианте (еще желательно настроить Tmux).

В качестве терминала можно либо использовать навороченный vSSH , в котором можно настроить вообще все, либо более хипстерский Prompt . У Prompt плохо то, что у него часть экрана отдана под разные вспомогательные элементы, что уменьшает рабочую область, зато более приятная цветовая гамма и разные «фишечки».

Prompt:

Настройки vSSH

У настроенного VIM есть автокомплит как по ключевым словам

так и по проекту в целом (названия функций в классах)

а также навигация по проекту

Prompt - 7.99$
vSSH - 279 руб.

Нативные iOS приложения

Если суммировать способы работы с файлами (зависит от редактора):

SFTP
- WebDAV
- iCloud
- Dropbox
- встроенный web-сервер
- синхронизация через iTunes
- интеграция через GitHub / Bitbucket
- интеграция с Amazon S3, DreamObjects

Все редакторы позволяют работать с несколькими одновременно открытыми файлами.

У всех редакторов очень ограничена поддержка горячих клавиш при работе с клавиатурой. В интервью создатель GoCoEdit говорил что сама Apple сильно ограничивает разработчиков в этих вопросах. Т.е. забудьте о биндингах на каждое действие - в лучшем случае это Cmd-C / Cmd-V

Ни у одного редактора нет встроенной поддержки git, но есть возможность интеграции со сторонними приложениями, реализующими эту функциональность.

Coda

Все эти приложения позволяют подключать как самостоятельные git-репозитории, так и интегрироваться с GitHub и BitBucket. Поддерживают ветки, просмотр коммитов, diff-ов и т.д. Как правило все эти программы имеют бесплатную функциональность на работу с репозиториями в режиме просмотра. Если вы хотите комитить свои изменения - придется выложить от 7 до 10 долларов.

Добавляем репозиторий

Окно работы с репозиторием

Просмотр файла

Как я писал выше - есть полноценная интеграция с редактором Textastic.

Стоимость - бесплатно, но для полноценной работы необходимо разблокировать функции.

GoCoEdit

Видно, что редактор GoCoEdit писал программист для программистов. Дизайн приложения довольно своеобразный, зато есть ряд фич, отсутствующих в других редакторах.

Общий вид редактора. Обратите внимание на дополнительную строку с символами в верхней части клавиатуры. Принцип работы как у Textastic, описанного выше. Отличие в том, что если у Textastic кнопка пятипозиционная, то здесь только трех: центр, право, лево.

Окно работы с файлами

Есть поиск как по словарю

так и по функциям в классе. Подчеркну, что поиск идет только по текущему файлу, а не по всему проекту, что сильно сужает области применения и полезность.

Поиск

Есть специальный командный режим. Поскольку, как я говорил выше, нормальные горячие клавиши в iOS не реализуемы (или плохо реализуемы) - здесь используется следующий хак: при нажатии на кнопку CMD появляется окно ввода, куда можно ввести сочетания клавиш, реализующих то или иное действие. Сами сочетания очень напоминают сочетания клавиш из VIM.

Во встроенном броузере есть возможность подключить FireBug Lite.

Стоит 349 рублей в российском AppStore.

Использование удаленного доступа к стационарному компьютеру / ноутбуку.

Я пробовал TeamViewer и какой-то из VNC клиентов с пробросом VPN в домашнюю сеть. В целом мне показалось, что они не особо учитывают реали того, что работа идет под iPad и, как следствие, удобство работы оставляет желать лучшего.

Когда несколько лет назад вышел Parallels Access - у меня оказалась в руках бесплатная годовая лицензия, которая шла в комплекте с Parallels Desktop. Из того что я пробовал - это наиболее вменяемый продукт, но который тоже не лишен недостатков. Самый большой недостаток - это переодические сообщения «Slow internet connection» и «залипания» интерфейса, хотя и iPad и ноутбук находятся в сети 70 Мбит/с. К счастью происходит это не так часто и с этим можно жить. Сейчас годовая подписка стоит 649 руб / год.

PHPStorm, запущенный на ноутбуке

Лаунчер приложений

Google Chrome с открытой консолью

В целом, можно сказать что это рабочий вариант, при условии что вы сидите на быстром интернет-канале. Из плюсов - полное рабочее окружение на iPad.

Заключение

iPad можно использовать для полноценной разработки. Я использую внешнюю клавиатуру, если есть возможность ее куда-то поставить и экранную клавиатуру если надо сделать что-то на бегу. Экранная клавиатура не увеличивает габариты устройства и позволяет использовать его на ходу, но закрывает половину и так маленького экрана. Кроме того - набор текста с большим количества спецсимволов, расположенных на разных «экранах» клавиатуры, делает ввод текста медленным. Внешняя клавиатура требует размещения, зато оставляет свободным экран и позволяет набирать со скоростью настольного компьютера.



Если вы разрабатываете только backend-приложение, не требующее тестирования в броузере - я бы рекомендовал связку SSH-клиент + VIM + tmux на сервере.

Если вы разрабатываете что-то на frontend и у вас достаточный интернет-канал - рекомендую связку Parallels Access + редактор + полноценный Google Chrome с консолью.

Нативные редакторы находятся в довольно зачаточном состоянии. До прихода серьезных игроков на этот рынок и шагов со стороны Apple по более продвинутому использованию внешней клавиатуры - это не более чем резервный вариант на случай если у вас нет интернета. Все редакторы заточены на работу с одним файлов, а не проектом целиком. Надеюсь, что с появлением iPad Pro ситуация улучшится и мы получим полноценные редакторы. Если совсем фантазировать - хотелось чтобы Apple разрешила подключать MagicPad и показывать курсор на экране, чтобы не приходилось постоянно «тыкать» в экран.

habrahabr.ru

При всей моей любви к iPad, я долгое время считал, что это в первую очередь гаджет для потребления контента, и для моей основной работы, программирования, он не очень-то и подходит. Но последнее время в App Store стали появляться приложения, опровергающие мое мнение. Одной из первых ласточек стал программистский редактор Textastic, о котором я и расскажу.

Вообще, идея похожих приложений уже давно витала в воздухе: разнообразные редакторы с поддержкой появились уже давно. Добавить в редактор подсветку синтаксиса и дополнительные плюшки - было уже просто вопросом времени. Что же полезного предлагает Textastic?

В первую очередь, написанный с нуля текстовый редактор с подсветкой синтаксиса 80 разных языков и автодополнением для HTML и CSS. Поскольку автор подошел к написанию с умом - редактор получился быстрый, даже при работе с большими файлами.

Имеется в наличии работа с проектами: группой файлов и папок, содержащих все ваши исходные коды. Поддерживаются и изображения, так как сложно себе представить веб-сайт (а Textastic в первую очередь именно web-редактор) без них.

Как и в настольных редакторах, есть функции поиска и замены (с поддержкой регулярных выражений), управления табуляцией, переносами и кодировкой, поддерживается внешняя клавиатура. Есть много тем оформления и выбор разных шрифтов и их размеров. Хотя, разумеется, для полноценной работы с кодом на планшете этого мало. Давайте посмотрим, как разработчик обходит основные проблемы планшета.

В первую очередь полноценному программированию на планшете мешает малое количество клавиш на встроенной клавиатуре: для полноценного кодинга хочется иметь под рукой цифры и ряд символов, для доступа к которым на iPad нужно переключать клавиатуру, зачастую даже не один раз. Это очень мешает полноценной работе. Во многих редакторах разработчики добавляют дополнительный ряд клавиш над основной клавиатурой, но для девелоперских целей - их тоже мало. Эту проблему можно решить использованием внешней клавиатуры, но это явно снижает мобильность пользователя. Разработчики Textastic решили эту проблему необычно: дополнительный ряд кнопок в этом приложении также присутствует, но они все - пятипозиционные и служат для ввода одного из пяти символов. Простое нажатие вводит тот символ, что написан в центре, для ввода одного из четырех символов по краям необходимо сдвинуть палец в его сторону и отпустить. После привыкания к такой системе «росчерков» ввод становится очень быстрым и весьма удобным.

Вторая проблема в разработке на iPad - не самая удобная система выделения текста и управления курсором. В Textastic для решения этой проблемы есть специальный блок навигации и выделения текста, для активации которого нужно тапнуть по экрану двумя пальцами одновременно. Этот блок можно двигать по экрану, выбирая место, где он не мешает работе.

Третья проблема - изолированность iOS и невозможность работы с файловой системой. Для преодоления этой трудности в Textastic есть поддержка WebDAV, FTP и даже Dropbox. Поддерживается работа с сайтами по FTP с одновременным просмотром результатов как локально, так и на сервере. Для управления локальными и удаленными файлами есть удобный встроенный файл-менеджер. Кроме того, можно синхронизировать файлы по iTunes и e-mail, а также подключаться к планшету по WebDAV, используя встроенный в программу сервер.

В качестве приятного бонуса - Textastic умеет работать с Markdown файлами, поэтому его можно использовать в качестве инструмента для заметок или ведения блога с использованием сервиса типа http://calepin.co/. Еще одна приятная мелочь - в программе имеется поддержка русского языка.

P.S. Продолжение о других программах для программирования на iPad - следует.