Сайт о телевидении

Сайт о телевидении

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

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

Программирование - процесс творческий и часто желание написать кусок кода или сиюминутно исправить ошибку становится просто невыносимым. Иногда написания кода требуют внешние обстоятельства, как то критичная ошибка в коде, которая валит проект. Для сотрудников, занимающих руководящие позиции в команде, нужна возможность провести 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

Submitted by AtH on пн, 08/02/2016 - 04:17

Уже несколько лет я веду список самых интересных приложений для iPhone"ов и iPad"ов, а именно калькуляторов (включая эмуляторы советских и зарубежных ПМК) и средств программирования - от текстовых редакторов до компиляторов. Список включат также документацию, средства создания веб-сайтов и редактирования веб-страничек, электронные таблицы, математические пакеты и много других полезных инструментов.

На 16 мая 2018 года список набрал 7603 просмотров и содержит 276 лучших приложений. Это 31 веб-страница. Эмуляторы программируемых калькуляторов фирмы HP начинаются на 6-й странице , а советских ПМК на странице 11 . Веб-программирование идёт сейчас со страницы 19 , а более серьёзные языки начинаются со следующей страницы и страницы 23 . На странице 27 начинаются приложения, связанные с пакетом TeX. В список я включал только лучшее, в лучшей комплектации. Например, для мощного (и относительно совместимого с HP 50g) программируемого калькулятора ND1 стоимостью $2,99 есть бесплатная урезанная версия ND0 того же автора, отсутствующая в списке.

На 8 февраля 2016 года из этих приложений 46 бесплатных (могут содержать встроенные покупки), а все оставшиеся стоят $1083,67 USD - то есть дороже, чем стоит сам айфон. Впрочем, покупать их все необязательно. Функционально многие приложения дублируют или перекрывают возможности друг друга, причём для многих задач есть недорогие или даже бесплатные приложения. Из платных 75 приложений стоят по $0,99 и ещё 33 стоят по $1,99. 18 приложений стоят по $9,99 и только 15 приложений стоят дороже этого. Следующие четыре приложения стоят дороже $20 (цены на 8 февраля 2016 года):

  • $39,99 - математический пакет MathStudio (во время скидок можно приобрести за пол-цены). Онлайн-версия бесплатна по адресу mathstud.io
  • $29,99 - фирменный калькулятор TI-Nspire™ CAS (три года назад была распродажа за $4,99). «Железный» TI-Nspire CAS (англ.) на Амазоне стоит $118,88 плюс доставка.
  • $29,99 - AppCooker , средство для разработки прототипа приложения на iPad (бывают распродажи, вплоть до бесплатной раздачи)
  • $24,99 - i41CX+ , версия программируемого RPN-калькулятора HP-41CX (англ.) с лентой принтера и CAS (распродаж не было, осенью продавец повышал цену до $30,99). Есть версия i41CX за $7,99 плюс IAP, и отдельно iCAS за $14,99

Для программирования и прочей разработки нельзя не отметить следующие впечатляющие приложения (полный список, повторюсь, это 279 приложений):

  • Coda ($9,99) - профессиональная разработка и поддержка веб-сайтов. Редактор с подсветкой синтаксиса, загрузка по FTP и т.п., клиент SSH, предварительный просмотр и просмотр «по воздуху» на компьютере… Coda работает даже на айфоне.
  • Smart BASIC ($6,99; бывают распродажи вплоть до $0,99) - невероятно мощная версия Бейсика для программирования «на борту», на Маке возможна компиляция и создание полноценного приложения с помощью X-code. Написана нашей соотечественницей Еленой Колчиной. Подробней читай обзор на iPadStory .
  • Codea ($14,99) - такая же мощная среда разработки, но для языка Lua . Работает только на iPad"е. Чтобы на айфоне программировать на Lua, существуют другие приложения.
  • Pythonista ($9,99) - среда разработки для Питона . На веб-сайте немецкого приложения Pythonista (англ.) выложена англоязычная документация (англ.) и есть форум (англ.).
  • DraftCode PHP IDE ($6,99) - полноценная интегрированная среда разработки для PHP , со встроенным веб-сервером. Позволяет разрабатывать приложения на PHP в оффлайне.
  • Retro ($0,99) - активно развивающийся лаконичный язык программирования, вдохновлённый Фортом. Retro ушёл от Форта значительно дальше, чем моя . Автор посвятил Retro свой веб-сайт (англ.).
  • TeX Writer ($9,99) - полноценная среда для TeX /LaTeX с компиляцией в PDF. Тоже работает в оффлайн.
  • MyScript MathPad (бесплатно, но полная версия $2,99 как IAP) - рисуешь на экране формулу, приложение переводит её в код TeX. Я её иногда использую при работе над

Уважаемые господа, данной статьей я открываю новую рубрику, посвященную программированию под iPhone, где будем затрагивать вопросы, интересные как новичкам и не посвященным, так и гуру от ObjC, которые, как мы надеемся, не преминут поправить наши ошибки своими комментариями. Сегодняшний урок носит ознакомительный характер.

Цели урока

1.С чего начать программирование для iPhone.
2.Джентльменский набор разработчика.
3.Домашнее задание.

Введение

Все мы видим бешеный успех AppStore, разделы приложений растут, как грибы после дождя. Редакторы всех информационных порталов об айфонах сбились с ног и, не смыкая глаз, пишут, пишут и пишут обзоры. А программы все появляются, появляются и появляются. Пора бы уже и нам включиться в этот процесс и оторвать свой кусочек от праздничного пирога.

С чего начать? Вопрос скорее риторический. Конечно, если вы, дорогой читатель, юрист или, скажем, строитель – вам будет очень сложно начать и скорее всего не стоит этого делать всерьёз, потому, как мне кажется, лучше делать хорошо одно дело, чем несколько и плохо. Однако, не будем исключать и тот момент, что вам хочется программировать для души, что это ваше новое хобби. Тогда в добрый час. Однако, если вы, мой дорогой друг, уже имеете опыт разработки приложений, неважно на каком языке – Си, Паскале, Ассемблере, Делфи или наконец Бейсике или даже Лого (в моем учебнике по информатике в начале 90х был и такой), то вам непременно надо попробовать себя на ниве приложений для айфона.

Вот мы и подошли к ответу на главный вопрос, с чего начать. Начните с основ, для этого далеко ходить не надо, я приведу вам всего несколько ссылок, которые вас в итоге «до Киева» доведут:

1.Для людей вообще незнакомых с языком Си – начните с этого

2.При программировании под айфон вам потребуется знание ООП (объектно ориентированного программирования). Это не так сложно, как может показаться из названия, на самом деле ООП базируется на нескольких фундаментальных принципах, уяснив которые для себя, вы с легкостью сможете делать шедевры. Читайте об ООП .

3.Если вы знаете основы Си, да и ООП не вызывает у вас затруднений, вам все же рекомендуется почитать отличие Objective-C применяемого в MacOS (и айфоне соответственно) от традиционных С и С++. Весьма неплохо это описано .

4.Также ответы на многие вопросы вы найдете на нашем форуме в .

Джентльменский набор программиста для iPhone, как и несессер путешественника, довольно небогат и, в принципе, на начальном этапе не требует чего-то сверх естественного и дорогого. Вот все, что нам потребуется для старта:

б) Операционная система MacOS Leopard версии 10.5.5.

в) Инструментарий с сайта Apple, так называемый SDK, пакет разработчика. Данный пакет содержит в себе все необходимое для разработки. Скачать его можно тут: http://developer.apple.com/iphone , предварительно пройдя регистрацию.
г) А еще нам очень потребуется терпение и усидчивость. Без этого, увы, никак.

У многих после пункта А могут сразу опуститься руки. Я вам скажу честно, до знакомства с айфоном я вообще никак и никогда не пересекался с Апплом, да и свою первую программу под айфон я написал вообще не имея макбука. Я заядлый виндусятник, начавший свою сознательную жизнь с Windows 3.1 и доживший до Windows Vista, я был покорен удобством MacOS и ни сколько не жалею о таком приобретении, хотя до сих пор львиную долю времени провожу за компьютерами с ОС от Билла Гейтса.

Для тех, кого и эти слова не убедили, все равно есть выход. С момента перехода компьютеров от Apple на платформу с процессором Intel – появилась возможность (естественно не без танцев и бубнов) устанавливать MacOS на обычный РС компьютер, сознаюсь – я и сам так делал. В миру такая ОС известна под разными названиями Kaliway, Hackint0sh и т.п. На всех файлообменниках вы без труда найдете нужный образ и качнув его, сможете поставить на свой компьютер Макось. И даже при желании запускать потом ее в окне ВМвари (VMWare). Как это все это сделать я описывать не буду, не к лицу пропагандировать методы обхода лицензии на Маки, но возьму на себя труд предупредить вас от некоторых ошибок, избежав которые вы, возможно, не потеряете интерес к программированию еще на начальном этапе подготовки инструментария:

1. При установке ВСЕГДА используйте отдельный винчестер подключенный как мастер на нулевую шину IDE или SATA.
2. Не пытайтесь установить Леопарда из под VMWare – проверял много раз – это невозможно, хотя в сети есть люди которые утверждают что делали это.

3. После того как установите Макось можете попробовать запустить ее из под Виндов в ВМВаре, если хватит ресурсов. Также, отдельная проблема, это драйвера. Сетевая скорее всего схватится у вас сама, видео будет 800х600 – тупо VGA. А вот как быть с вашей 8800GTX картой, вайфай адаптером и голубым зубом, то тут как повезет (чаще не везет).

4. Сколько образов мне не попадалось – на всех была версия 10.5.1 или 10.5.2, нам же для работы потребуется не ниже 10.5.5. Свой мак я обновляю через интернет, а вот с хакинтошем при обновлении на 10.5.5 такой фокус не пройдет – словите яблоко, тоже проверено много раз. В сети есть алгоритм как обновить хакина до 10.5.5 сохранив работоспособность системы – ищете ибо обрящете.

И так, инструментарий описан, переходим к домашнему заданию.

Домашнее задание у нас будет простое, но очень важное, не выполнив его, все остальные уроки станут для вас бесполезным HTML текстом, а мой труд не будет стоить и выеденного яйца. И так, дорогие программисты айфонщики, пока я пишу Урок №2, вы должны:

А) Раздобыть Мак или установить хакинтош (исключительно в ознакомительных целях)

Б) Обновить его до версии 10.5.5.

В) Скачать и установить SDK от Apple. Накачать кучу примеров из сети, попробовать их все откомпилировать. В общем приступить к изучению методом тыка (наиболее распространенный в нашей стране метод, поражающий своей эффективностью).

Пишите отзывы.
Рашид (aka rashn).

сайт Уважаемые господа, данной статьей я открываю новую рубрику, посвященную программированию под iPhone, где будем затрагивать вопросы, интересные как новичкам и не посвященным, так и гуру от ObjC, которые, как мы надеемся, не преминут поправить наши ошибки своими комментариями. Сегодняшний урок носит ознакомительный характер. Цели урока 1.С чего начать программирование для iPhone. 2.Джентльменский набор разработчика. 3.Домашнее...

Вероятно, еще после покупки своего первого мобильного гаджета от Apple ты задавался вопросом, как выжать из него нечто большее, чем прослушивание музыки и чтение книг. Да, здесь тонны софта на все случаи жизни, но как насчет того, чтобы сделать чекаут своего приложения из GitHub, внести в него правки и затем залить на сервер по SSH? А ведь это вполне возможно сделать, если знать как.

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

Редакторы кода

Самый простой инструмент программиста - редактор кода. Таких программ десятки для очень многих платформ, не является исключением и iOS. Общие требования к подобной утилите - лаконичность, поддержка большого количества языков, интеграция с облачными сервисами. В iOS важным становится еще один параметр - поскольку клавиатура не приспособлена для набора кода, необходима либо другая клавиатура, либо возможность интегрировать в существующую дополнительные кнопки с наиболее часто употребляемыми спецсимволами. Рассмотрим самые популярные редакторы кода, которые удовлетворяют этим требованиям, а также обладают своими уникальными возможностями.

Современное общество мобильно, легко адаптируется к динамично меняющейся окружающей среде. Мы на связи с глобальной сетью повсюду: в машине, в поезде, в метро, даже в туалете!
По-моему термин On-The-Go! наиболее точно характеризует современного человека.

Сейчас планшетник уже перестал быть роскошью и гаджетом, который есть только у президента. Уже пол года, как я стал счастливым обладателем iPad. В основном я использовал его для серфинга в Интернете, презентаций видеоработ заказчикам, и чтения технической литературы (как это ни странно прозвучит, но художественную мне удобнее читать с iPhone"а). Но с момента покупки меня ниразу не покидала мысль «А можно ли полноценно разрабатывать веб-приложения на iPad? Так, чтобы компьютер был не нужен вообще?». И сегодня я могу сказать - ДА - на iPad можно вести полноценную веб-разработку. Сегодня в AppStore уже есть ряд программ, которые очень сильно помогут при разработке приложений на iPad.

У меня процесс разработки обычно состоит из следующих этапов:

  1. Рисую идею с помощью ментальных карт.
  2. В Evernote пишу текст, который более подробно описывает функционал программы. В это время в голове более четко формируется представление об интерфейсе.
  3. Рисую прототипы интерфейсов программы. Уточняю и согласовываю их с заказчиком.
  4. Разрабатываю БД.
  5. Программирую.

Теперь попробуем повторить этот процесс на iPad.
Примечание: разработку веб-приложений на iPad я веду в связке PHP+MySQL+Сервер в облаке Selectel .

1. Нарисовать идею с помощью ментальных карт

Я посмотрел около 7 программ для рисования ментальных карт и остановился на Idea Sketch .

Плюсы
Она бесплатна.
Может сохранять ментальные карты в виде изображений и отправлять по электронной почте или публиковать в Facebook.
Минусы
Всего несколько цветов для цветового кодирования блоков.

2. Разработать техническое задание в Evernote .

Тут всё просто. Я уверен, что про этот продукт уже давно все знают и пользуются. Ну а кто не пользуется - настоятельно рекомендую. Если кратко: Это ваш блокнот, который доступен с любых устройств.

Плюсы
Бесплатен.
Доступен с любых устройств.
Есть возможность отправлять заметки по email.
Минусы
Не поддерживает форматирование в режиме редактирования. На самом деле непонятно, почему эту функцию до сих пор не реализовали.

3. Нарисовать прототипы интерфейсов.

Для рисования интерфейсов на iPad в AppStore есть замечательная программа iMockups .

Плюсы
Хорошо подходит для рисования простых интерфейсов.
Уже есть готовый набор контролов для обычных веб-приложений и iPhone/iPad-приложений.
Можно обмениваться с коллегами по email в формате iMockups или в виде изображений.
Минусы
Пока не заметил.

4. Разработать БД.

Специализированных клиентов для MySQL в AppStore я не нашел. Поэтому работа с базой данных осуществляется через Safari в phpMyAdmin.

И теперь я подхожу к 5-ому, самому интересному пункту - программированию:)

5. Программировать программировать и еще раз программировать!

Долгое время для кодирования я использовал Textastic . Но некоторое время назад вышло приложение Koder , увидев которое, я сразу же влюбился.
Если быть объективным, функционал обеих программ примерно одинаков, но интерфейс Koder ИМХО симпатичнее. Поэтому в сегодняшнем обзоре речь пойдет именно о Koder .

6. Администрирование сервера.

Ну и на последок 6-ой бонусный пункт.
Очень удобно администрировать сервер с помощью программы iSSH .
Как пишут в интернетах «одно из лучших SSH-приложений для iOS». Пожалуй я с ними соглашусь.

Еще я не упомянул о программе CSS3Machine . Программа для создания CSS3-стилей и анимации. Её не юзал, поэтому ничего сказать не могу.

На этом я заканчиваю свой обзор программ для разработки веб-приложений на iPad. Если я что-то упустил из виду, софт или важные моменты, пишите об этом в каментах.

UPD: Конечно же данный способ не может полностью исключить разработку на ПК. И в период, когда ПК под рукой я предпочту ПК. Но чаще интересные мысли посещают тогда, когда я всё же On-The-Go!

Продуктивного вам коддинга везде и в любое время!