Codea
Codea появилась в 2021-ом году, как первое приложение в App Store, на котором можно было писать приложения для iOS. И по сей день программу обновляют. В Codea используется язык программирования Lua, который был придуман в Бразилии, и больше всего по идеалогии походит на JavaScript.
Codea создана, чтобы упростить программирование для iOS. То есть цель разработчиков была визуализировать процесс и сделать его за счёт этого более удобным.
Hopscotch: make games
Ещё одно приложение для создания игр. Внутри удобные (показываются в маленьком окошке) обучающие видео, которые на английском языке помогут создать первые игры.
В приложении можно выбирать объекты и придумывать им действия. В итоге получаются несложные аркадные игрушки. Я попробовал несколько, созданных людьми. Не особо впечатлился, но нужно сделать скидку на любительский уровень пользователей.
Всем хороша программа, но подписка 5000 рублей в год – это за гранью добра и зла. Поэтому единственная программа в этом топ-10, которую я включил по принципу: “Круто! Надо, чтобы посмотрели читатели”. Рекомендовать её с таким ценником не могу.
Human resource machine
Ну и топ-10 был бы не полным без этой игры. Да-да, именно эту игру я рекомендую всем программистам или новичкам в программировании, чтобы размять свой мозг.
Игра предлагает ряд заданий, в которых нужно много думать и составлять алгоритмы на выдуманном языке программирования. Human Recource Machine прекрасно кипятит мозги и заставляет игрока выдумывать оптимальные решения. В 2021-ом году она стала лауреатом нашей премии Лучших игр в номинации “Необычная игра”.
Обзор
Купить
Всем хороших задач и изящных решений! 🙂
pythonista 3
Pythonista is a complete scripting environment for Python, running directly on your iPad or iPhone. It includes support for both Python 3.6 and 2.7, so you can use all the language improvements in Python 3, while still having 2.7 available for backwards compatibility.
In true Python fashion, batteries are included – from popular third-party modules like requests, numpy, matplotlib, and many more, to modules that are tailor-made for iOS. You can write scripts that access sensor and location data, your photo library, contacts, reminders, the clipboard, and much more.
You can also use Pythonista to build interactive multi-touch experiences, custom user interfaces, animations, and 2D games.
Apart from learning and practicing Python, you can also use Pythonista to automate parts of iOS with app extensions, e.g. to invoke scripts directly from the standard share sheet in almost any app.
Features:
>>> Powerful code editor with syntax highlighting, code completion, scripting support, and more
>>> Interactive prompt with code completion, command history, and support for showing images in the console output
>>> Integrated visual debugger and object inspector
>>> Integrated PEP 8 style checker with issues highlighted directly in the editor
>>> Complete offline documentation with quick lookup directly from the editor
>>> Various beautiful light and dark color themes, and a theme editor to make your own
>>> UI editor for quick prototyping
>>> Includes most of the Python standard library and additional modules for graphics, sound, and iOS system services (e.g. clipboard, contacts, reminders, twitter, UI…)
>>> Matplotlib and NumPy for scientific visualizations
>>> Lots of other popular third-party modules, e.g. requests, BeautifulSoup, Flask, bottle, SymPy, and more are included.
>>> Lots of included examples to get started
>>> Universal app for iPad and iPhone
>>> Share sheet app extension for running scripts from almost any app
>>> Custom scriptable keyboard to use Python in any app that edits text
The name «Pythonista» is used with kind permission of the Python Software Foundation.
Please note that Pythonista is not designed to enable the installation or download of additional native modules, and it does *not* include the SciPy stack (just parts of it).
Pythonista 3
Pythonista это Python IDE на iOS. После покупки Pythonista (749 рублей) установите StaSh — скрипт, который создает настраиваемую виртуальную консоль. Она эмулирует некоторые классические команды терминала, вроде cat, rm, git, ssh, scp. Расширение поддерживает исполнение скриптов в фоновом режиме до тех пор, пока приложение «висит» в оперативной памяти.
В Pythonista встроены популярные пакеты, как bs4 и requests. Остальные можно установить через pip в StaSh. Я однажды столкнулся с проблемой, что StaSh установил расширение для Python 2 или старую версию для Python 3, из-за чего у меня не получилось исполнить скрипт.
В интерактивной консоли работает визуализация графиков, созданных через matplotlib. Редактор кода автоматически дополняет код на Питоне, переносит строки и заменяет табы пробелами. Линтера нет, все ошибки появляются при рантайме — текст некоторых из них не полностью помещается в окно, поэтому для отладки приходится запускать приложение через StaSh.
К сожалению, в Pythonista нет тесной синхронизации с Working Copy, как в Textastic. Однако, пользователи написали инструкцию, как переносить файлы из одного приложения в другое.
Разработчик Pythonista сделал большой акцент на UI-программирование. Приложение поддерживает файлы .pyui и предоставляет библиотеки для программирования специфичной функциональности iOS. Я никогда не пользовался этими возможностями приложения.
Как бонус, Pythonista работает и на iPhone. Пару раз мне это пригодилось — написал консольную утилиту, которая считает цены покупки и продажи криптовалюты.
Termius
Termius это приложение для доступа к удаленным серверам через SSH или Telnet. Через него я удаленно выполняю те действия, которые не может сделать iPad — например, исполняю shell-скрипты.
Textastic
В Textastic я пишу программы на Python и веб-сайты на HTML, CSS и JS. Редактор работает с проектами в памяти устройства и в приложении «Файлов». Это удобно, так как Working Copy интегрирован в «Файлы» — импортирую репозитории прямо из него. Все изменения появляются в Git-клиенте в реальном времени.
В первую очередь, Textastic адаптирован под веб-программирование. В редакторе есть автоподстройка и автодополнение HTML и CSS кода — Textastic создает файл с пустым шаблоном, подсказывает имена тегов и вставляет обязательные атрибуты. Также приложение поддерживает расширения Emmet для ускорения написания кода.
Для отладки тут есть встроенный браузер, возможности показа страницы в Safari и быстрой отправки результата в виде письма.
В редакторе есть перенос строк и замена табов пробелами. Его цветовая гамма и шрифты меняются в настройках. Код JS и других языков программирования подсвечивается, но линтера нет. «Кривая» подсветка показывает, когда в код закрадывается типографическая ошибка.
В Textastic встроен файловый менеджер, который распаковывает ZIP-архивы, поддерживает навигацию по директориям и импорт изображений с указанием имени конечного файла (эта функция бы пригодилась в Working Copy).
Textastic code editor 6
В App Store два приличных редактора текста для кода. Textastic при своей цене в 749 рублей (в американском App Store 10 долларов) является бюджетным вариантом.
Textastic поддерживает синтаксис около 80 языков программирования. Программа служит для красивого отображения и редактирования текстов. Это не компилятор – обратите внимание. Приложение работает так – вы скачиваете код, редактируете его и заливаете затем назад.
Программа поддерживается автором и оперативно обновляется.
Старый обзор приложения. Сейчас оно выглядит гораздо современней.
Купить в App Store
Working copy
Working Copy — продвинутый Git-клиент для iOS. Мне он нравится понятным интерфейсом и обилием действий, для запуска которых не нужно обращаться к командной строке.
Для удобства работы добавьте в Working Copy учетные записи и хосты, на которых хранятся репозитории. Приложение поддерживает «из коробки» GitHub, GitLab, BitBucket и GitBook — а если у вас свой Git-сервер, то вы можете указать его в настройках.
Чтобы клонировать и обновлять репозитории, добавьте на хост SSH-ключ, который сгенерирует приложение. Так Working Copy получит список репозиториев, из которых вы сможете выбрать те, которые вам нужны на iPad — я сохраняю на устройстве все, с которыми активно работаю.
В Working Copy есть встроенный редактор кода и текста — в нем подтормаживает подсветка синтаксиса и русские/английские символы отображаются разным шрифтом. Тем не менее, он подходит для быстрого исправления ошибок или написания коротких программ. Для более серьезных задач я использую редактор Textastic.
Приложение показывает изменения, которые вы сделали с последнего коммита, и предлагает просмотреть их в совмещенном режиме или в раздельном (эквивалент git diff). При коммите приложение откроет всплывающее окно и покажет поле для описания коммита вместе со списком измененных файлов. В нем есть счетчик символов — следую ему, чтобы сделать сообщения максимально информативными.
Working Copy умеет исполнять команды fetch, fast-forward, pull и merge с удаленного сервера. При совмещении (merge) приложение покажет конфликты и предложит выбрать с помощью свайпов правильный вариант.
Для каждого репозитория программа строит графическое дерево коммитов. Тут же происходит работа с ветками (branch). К сожалению, в приложении нельзя создать «осиротевшие» ветви (orphan branch) — мне это нужно, когда начинаю работать над новыми версиями программ.
Working Copy доступна в App Store бесплатно. Однако за одноразовый платеж в 1150 рублей вы разблокируете темную тему и загрузку коммитов на удаленные серверы (git push). Премиум-версию приложения можно протестировать на протяжении десятидневного пробного периода.
Программы
На iOS сильно ограничено взаимодействие с файловой системой и нет доступа к терминалу, поэтому программировать сложно. Но возможно.
Для своих задач я использую четыре приложения:
Иронично, что на iPad особенно неудобно программировать приложения для iOS. Здесь нет линтера, рефакторинга, Interface Builder и компилятора. По причине отсутствия среды разработки на планшете, мобильный софт я пишу только на ноутбуке.
Рецепты кода
Наткнулся недавно на занятное приложение-справочник, который содержит примеры коды на 6 языках программирования: Swift, Java, C#, Python, C , Objective C. Суть его в том, чтобы человек мог быстро найти кусок кода на нужном ему языке. Например, программисту нужно быстро вспомнить как выглядит обработчик ошибок на C . Он глядит в программу и находит нужный фрагмент, который может применить в своей программе.
Разработчик приложения собрал примеры из этих 6 языков программирования и судя по обновлениям ещё и актуализирует их постоянно.
Программа условно-бесплатная, но полная версия стоит всего 2 доллара.
Серия “учим языки программирования” от sololearn
Недавно наткнулся на серию занимательных приложений от компании Sololearn, которые предлагают интерактивные уроки по изучению языков программирования. На русском языке доступны следующие языки: JavaScript, HTML, C , Python, Java, CSS, SQL, PHP, C#, JQuery, Ruby. Уроки по Swift на английском.
Я прошёл несколько уроков по JavaScript. Всё очень доступно и интересно. Даются мини-уроки с примерами, которые можно тут же запустить в эмуляторе. После этого обычно следует вопрос с вариантами ответа или возможностью вписать текстовый ответ. Очень наглядно и удобно для начинающих.
Есть примеры кода и возможность их запустить:
Все приложения бесплатные и без встроенных покупок.
Серия Учим в App Store
Устройство
У меня iPad Pro 9.7″ с дополнительной клавиатурой и Apple Pencil. Планшет, аксессуары и приложения обошлись в 45 тысяч рублей.
Клавиши на оригинальной клавиатуре Smart Keyboard для iPad 9.7″ маленькие, но я к ним привык и печатаю быстро. Apple интегрировала большинство комбинаций «горячих» клавиш с macOS, а некоторые приложения добавляют еще и свои — например, Textastic.
Apple Pencil работает неделю и заряжается за 30 минут. Недостаток — карандаш сделан из дешевого глянцевого пластика, который быстро загрязняется, а колпачок треснул через месяц после покупки.
Мой сценарий использования — программирование и просмотр видео. Дисплей яркий и четкий, аккумулятор держит три-четыре дня. Тачскрин прижился в рабочем процессе — на нем удобнее перетаскивать блоки текста, переключаться между приложениями в режимах разделённого экрана Split View и Slide Over.
Язык программирования “smart basic”
Приложение, которое предлагает пользователю программировать на продвинутой версии самого популярного языка для обучения – Basic. Именно с Basic началось моё знакомство с программированием лет 20 назад.
Несмотря на то, что многие продвинутые программисты Basic не воспринимают от слова совсем, я считаю, что это неплохой язык для начинающих. Он очень прост и в то же время в умелых руках может решить массу задач.
Наш читатель Александр – программист-любитель даже раньше создавал приложения на Smart Basic, которые публиковались в App Store.
Обзор Smart Basic, купить Smart Basic
Apple разработала язык программирования Swift для программистов на iOS и Mac OS. Apple задумала Swift как более лёгкий и читаемый язык для изучения, чем предшественник – Objective C. В 2021-ом году язык был внедрён в Xcode. А в 2021-ом году Google заявила, что Swift будет первым языком для Android.
Swift Playgrounds от самих Apple позволяет даже новичку погрузиться в мир языка. Изучить новые конструкции, изучить работу кода на живых примерах в игровой форме.