iOS Development on VSCode. Using an IDE other than Xcode for iOS… | by Foti Dim | The Startup | Medium

iOS Development on VSCode. Using an IDE other than Xcode for iOS… | by Foti Dim | The Startup | Medium Ipad

Что можно разрабатывать на ipad?

На iPad отсутствуют полноценные среды разработки для многих популярных языков программирования, что сильно ограничивает сферу его применения для разработчиков.

Например, если вы давно мечтаете научиться программировать на Swift и начать создавать свои приложения под iOS, iPad может стать для вас лучшим помощником в этом. Официальное обучающее приложение Swift Playgrounds шаг за шагом проведёт от самых азов до своего первого собственного приложения, даже если до этого вы никогда не имели дела с программированием.

Если ваш процесс разработки не требует визуального интерфейса, то iPad может вполне подойти для вашей задачи. К примеру, я перешёл на планшет во время работы над игрой Wasteland Wars, которая представляет собой онлайн игру в формате чат-бота. Для работы над моей игрой iPad подходит для такой разработки просто идеально:

  • главный процесс разработки таких текстовых игр заключается в написании и загрузке кода с графикой на сервер, где уже происходит вся машинная работа;
  • сам процесс разработки и отладки кода игры не предусматривает потребности работы с графической частью;
  • графику лично мне удобнее создавать с Apple Pencil.

Что удобнее в работе с ipad для программиста?

Первое, чем iPad удобнее ноутбука — это портативностью. Да, ноутбуки и сами по себе являются портативными компьютерами, однако планшет — это ещё более легкое, компактное, и нетребовательное к вашему рабочему пространству устройство.

Будучи часто в разъездах, мне приходилось постоянно таскать с собой ноутбук в рюкзаке. «Велика беда», можете иронично сказать вы, однако не забывайте про обязательный увесистый блок питания к ноутбукам. Тем более у модели MacBook Pro 13” mid 2021, которая постепенно уходит в историю. И чем больше вам нужно мощности ноутбука, тем массивнее блок питания с ним нужно будет возить.

Таким образом, если вы предпочитаете, путешествовать налегке и работать хоть с песчаного пляжа на Бали, то дополнительные ~3 кг будут создавать вам неудобства. С планшетом же всё куда проще: достаточно закинуть небольшой чехол с iPad и Apple Pencil в рюкзак.

Add “app” target support

So far we added iOS support but only for Swift packages. What if you want to work on a typical app target. Trying to open the root folder gives this error:

SourceKit-LSP is looking for a Swift package manifest file

What if you want to work on an iOS app and not on a Swift Package? SourceKit-LSP always looks for a package.json in root folder assuming that it always deals with a Swift package. An iOS app is not a Swift package and for that reason we need to trick SourceKit-LSP by adding a dummy Package.swift. Add this file to the root of your project (same level as .xcodeproj)

// swift-tools-version:5.2
import PackageDescription
let packageName = "PROJECT_NAME" // <-- Change this to yourslet package = Package(
name: "",
// platforms: [.iOS("9.0")],
products: [
.library(name: packageName, targets: [packageName])
],
targets: [
.target(
name: packageName,
path: packageName
)
]
)

Don’t forget to set packageName to your own one.

Double check the location of the file

Restart VSCode one last time and voila! Proper UIKit auto-completion

UIKit auto-completion is working 🎉

Add ios framework support

What is we achieved so far is to enable Swift development but VSCode has no idea about iOS frameworks. If you try to import UIKit you will get an error.

The UIKit framework is not recognized

Insert this JSON in settings.json. You might need to update the x86_64-apple-ios13.6-simulator line based on the current version that you have installed.

"sourcekit-lsp.serverArguments": ["-Xswiftc","-sdk","-Xswiftc","/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk","-Xswiftc","-target","-Xswiftc","x86_64-apple-ios13.6-simulator",],

This will work for Swift packages that reference iOS frameworks like UIKit.

Build the sourcekit-lsp extension

Now it is time to build the SourceKit-LSP extension. There is an unofficial SourceKit-LSP — Unofficial CI build but this did not work for me. Building it from source is not that hard. Just make sure you have node.js installed and then run:

Читайте также:  Как отключить пароль на iPhone и iPad при установке бесплатных приложений из App Store | Яблык

Configure the extension

You need to let the plugin know the location of the sourcekit-lsp executable. Open settings.json from VSCode using Cmd Shift P and enter “Preferences: Open Settings (JSON)”.

Insert this JSON as the last entry in the existing JSON. Remember to add a comma in the previous line.

"sourcekit-lsp.serverPath": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/sourcekit-lsp"

Enable swift language support

Make sure you have Xcode and VSCode installed. This is the easiest way to hit the ground running since sourcekit-lsp comes prebundled with Xcode. Open a terminal and run:

$ xcrun sourcekit-lsp

Assuming that you don’t see any output this is normal and means it works as expected. Hit Ctrl C to end the process.

Experimenting out in the open

Our new iOS Web Debugger is a public experiment and this means we are releasing it to the public to find out if integrated script debugging for iOS are valuable for developers, so please let us know what you think.

Getting started

To get started, open the Extensions view (⇧⌘X (Windows, Linux Ctrl Shift X)).

Git, github и mysql

Хотя iOS-устройства все же не могут считаться прекрасным инструментом для работы программиста или администратора, на них имеется клиент популярной системы контроля версий Git. Он называется Working Copy и располагает большими возможностями.

Программа позволяет найти требуемый репозиторий GitHub или BitBucket, клонировать его на устройство и изменить его файлы. Само изменение кода осуществляется через сторонние редакторы (те же Textastic или Koder). Данная возможность реализована благодаря появившейся в iOS 9 технологии Document Picker, позволяющей редактировать один и тот же файл при помощи различных программ от сторонних разработчиков. В самой программе тоже есть редактор, который вызывается через меню Action при свайпе вправо по объекту.

Утилита регистрирует изменения в файлах, их можно просмотреть. Это касается и текстовых документов, и изображений. После редактирования изменения можно запушить на сервер. Для каждого репозитория утилита создает интерактивный график изменений, где их можно отследить и затем рассмотреть более подробно.

Для iPhone и iPad есть и клиент GitHub — самого популярного сервиса для коллективной разработки проектов. Бесплатный iOctocat поддерживает некоторые функции ресурса. В основном, конечно, это просмотрщик и программа для общения разработчиков.

При помощи данной программы (в бесплатной версии, есть еще Basic и Pro) нельзя создать репозиторий или форк существующего проекта. Отсутствуют также функции скачивания всего проекта и многие другие. Вероятно, они есть в платной версии, равно как и доступ к приватным репозиториям, за открытие которого разработчики данной программы взимают дополнительную плату. Еще в Pro-версии доступны Push-уведомления для более удобной переписки.

Pro- и Basic-версии iOctocat
Pro- и Basic-версии iOctocat

В качестве альтернативы iOctocat есть и другой клиент — CodeHub. Он уже немного более функционален, здесь можно не только просматривать, но и редактировать и добавлять новые файлы. Важная функция — быстрый переход в веб-интерфейс из любого места программы. В остальном же возможности обоих клиентов идентичны.

Мобильные устройства Apple обладают возможностью работать и с базами данных MySQL. Для этого предназначены несколько программ, среди них QueryDB и Navicat. Navicat — продвинутое приложение для работы с БД. Его стоимость — 16 долларов, что совсем немало. Однако и возможности данной программы очень велики:

  • Создание и изменение различных баз данных. Совместная работа с БД с использованием сервиса Navicat Cloud.
  • Набор фильтров и поиск данных.
  • Неограниченное количество подключений с использованием SSH/SSL.
  • Инструменты для автоматизации создания баз данных.

Бесплатная утилита QueryDB — намного более простое решение. Это инструмент для создания и редактирования БД. Программа имеет платную версию с поддержкой SSH. Для того чтобы убрать рекламу, потребуется заплатить 3 доллара.

Koder

Один из ближайших конкурентов Textastic — менее дорогая, но практически не уступающая по функциональности утилита Koder. Здесь можно добавить кастомные клавиши на верхнюю панель клавиатуры, подключиться к SSH-серверу. Настройки оформления, передача данных по FTP, защита файлов паролем и поддержка не меньшего, чем в Textastic, количества языков программирования — все это также присутствует в данном приложении.

Еще есть клавиша в верхней панели для удобного перемещения по коду, облачная синхронизация, гибкий поисковый движок с возможностью замены, настройка прав доступа на серверах, превью HTML-файла в окне браузера и поддержка iTunes File Sharing. Из удобных особенностей — поддержка нескольких вкладок при редактировании файлов.

Читайте также:  ‎App Store: Film Movie Editor Movavi Clips
Интерфейс программы Koder
Интерфейс программы Koder

Существует еще множество других решений — клиент онлайн-сервиса codeanywhere, iEditor, Code Master и прочие. Однако они серьезно уступают по функциональности первым двум программам, являющимся, безусловно, лидерами данного сегмента утилит, потому рассматривать их отдельно не будем.

Ssh и ftp-клиенты

Перейдем к поиску лучших SSH-клиентов. Одно из наиболее известных решений — Prompt. Среди возможностей программы — неограниченное количество «закладок» с данными серверов, структурирование подключений при помощи папок, сохранение паролей, кастомизация интерфейса программы (темная и светлая темы, изменение размера шрифта).

Верхнюю панель клавиатуры также можно изменять. Данные серверов синхронизируются между всеми iOS-устройствами с использованием функции Panic Sync. Сохранение наиболее используемых команд (Clips) и защита при помощи Touch ID — приятные особенности утилиты.

Интерфейс программы Prompt
Интерфейс программы Prompt

Также есть и программа для работы с FTP/SFTP-серверами под названием Transmit. Это версия популярной Mac-утилиты для iOS-устройств. Возможности приложения таковы:

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

Стоимость программы — 8 долларов.

Supported features

In this release, we support the following features:

Update

The iOS Web debugger has been deprecated and we now recommend that you use the RemoteDebug iOS WebKit Adapter together with Visual Studio Code. To learn more, see this introductory guide to the RemoteDebug iOS WebKit Adapter.

‎visual codes

Make QR codes for sharing links, contact info, home WiFi networks and much more. Create a QR code using Visual Codes for others to scan.

Scanning a code is easy. Just point the Camera app on an iPhone or iPad running iOS 11. You can even scan a QR code within Visual Codes itself, and save them to your own library.

Tap Add Code and select from seven actions: Open Link, Search Web, Compose Email, Add Contact, Map Location, Call Phone Number and Connect to WiFi.

Codes are automatically saved to your library, so you can always find them later. Drag and drop to bring your most-used codes to the top of the list.

Share and print to send codes to friends. Print as Poster to fill the page with a large code, or use Grid mode to fit multiple codes per sheet.

Change up the color palette with four styles; Bright, Default, Subtle and Lilac.

Set a Pinned Code to access your favourite QR code without even launching Visual Codes, through Siri.

Visual Codes works great, looks great, and takes advantage of the latest iOS 11 technologies. Beautiful large headers. Drag and drop integration. Optimized for iPad with Split View and keyboard shortcuts. Rich VoiceOver and Smart Color Invert support. So much more.

Интерпретаторы и компиляторы

Мало просто написать код, его надо скомпилировать, запустить и отладить. Для этого также есть несколько решений для отдельных языков.

Программистам, использующим C и C , вероятно, пригодится лаконичная IDE CppCode. Здесь имеется небольшой менеджер файлов без поддержки вложенности, собственно редактор с подсветкой синтаксиса, простенький отладчик и компилятор. В верхней панели расположены шорткаты таким же образом, как это реализовано в Textastic, а еще здесь присутствует кнопка для быстрой навигации по коду.

Настройки CppCode расположены в нативном приложении
Настройки CppCode расположены в нативном приложении

У CppCode есть и платная Premium-версия (сама же утилита распространяется бесплатно). Однако и стандартных возможностей будет вполне достаточно для быстрого программирования. В общем, IDE достаточно простая, но стабильная и быстрая, а это важно для подобных утилит.

Свое решение есть и для Python. Точнее, интерпретаторов для него великое множество, они выпущены отдельно для каждой версии языка. Простая на вид программа содержит немало функций. В левом окне можно писать сам скрипт или вводить терминальные команды.

В правом окне будет отображаться результат исполнения скрипта. Клавиатура, как и в других редакторах, оснащена верхней панелью, правда не такой функциональной, зато немного более понятной по сравнению с тем же CppCode. Среди преимуществ серии прочих интерпретаторов — большой набор документации, которую можно загружать непосредственно в саму программу и использовать в режиме офлайн. Также имеется набор скриптов.

Читайте также:  ‎App Store: Камера Видеонаблюдение CCTV

Для iOS есть и интерпретатор JavaScript (а точнее, интерфейс к встроенному движку). Называется он JavaScript Anywhere. Организация рабочего пространства привычная: слева панель документов, справа — панель для редактирования кода. Собственно рабочая часть дисплея имеет три вкладки — HTML, CSS и JS. Предусмотрен менеджер загрузки изображений и интеграция с Dropbox. Однако панель спецсимволов отсутствует.

Последним рассмотрим компилятор для CoffeeScript под названием CoffeeScript At Once. В целом он мало чем отличается от утилиты для JS. Практически тот же интерфейс, набор настроек и опций. К трем верхним кнопкам в рабочей области добавлены еще две — EXT и RUN.

Продолжительность работы ipad от батареи

В iPad ещё с самого первого устройства Apple задала планку в 10 часов работы от одного заряда, которую до сих пор не могут достичь планшеты на Android, а приблизиться к этой цифре смогли разве что Windows-планшеты на базе Intel с мобильными х86 процессорами.

Эта цифра — мощный аргумент в сторону планшета. Несмотря на то, что ноутбуки Apple сейчас вне конкуренции по времени работы, даже они проработают не более 5-и часов под активной нагрузкой при программировании и отладке, то есть вдвое меньше чем iPad.

Важное уточнение: всё описанное выше — мой личный опыт работы с iPad Pro 10.5 и MacBook Pro 13” mid 2021, он может и будет не совпадать с вашим.

Только вы создаёте свою уникальную рабочую площадку для ваших собственных целей. Я надеюсь, что вы нашли в моем опыте что-то полезное для себя!

Разработка и администрирование веб-ресурсов на ipad

У меня не получилось найти универсальный и подходящий мне инструмент для веб-разработки, верстки страниц с использованием JavaScript и CSS, с просмотром изменений в Split View, но для создания несложных прототипов могут подойти и универсальные редакторы кода вроде Buffer.

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

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

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

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

Справочники

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

Именно таким браузером документации является утилита Dash. Данная программа предоставляет структурированную информацию по самым различным языкам и фреймворкам. Здесь и AppleScript, и C , и .NET. Для того чтобы просмотреть справочник, необходимо загрузить файлы, а вся документация займет немало места на аппарате.

Введение в справочник по AppleScript
Введение в справочник по AppleScript

Программа абсолютно бесплатна, в ней нет встроенных покупок. Одноименное приложение, правда с намного большей функциональностью, есть и для OS X.

Утилиты для анализа сети

В задачи администратора входит и проведение диагностики сети. Для этого в iOS также есть свои программы. Во-первых, это приложение iNetTools (есть бесплатная версия и платная за 5 долларов). Бесплатно в ней доступны инструменты Ping, Trace, DNS Lookup, Port Scan.

Стартовый экран iNetTools
Стартовый экран iNetTools

Для сканирования сетей предназначена утилита IP Network Scanner. Она позволяет находить устройства в Сети, отображает Mac-адреса и IP. Для удобства поиска устройствам можно присваивать иконки и произвольные имена. Можно открыть аппараты по найденному адресу в браузере или в любой программе, поддерживающей эту функцию.

К сожалению, в приложении бесплатной версии может отображаться только пять устройств в данной сети, а остальные будут скрыты от пользователя.

Заключение

iOS-устройства не так и бесполезны для программистов и системных администраторов. Продвинутые и функциональные редакторы кода, интерпретаторы для многих популярных языков, утилиты для диагностики сети, клиенты для системы контроля версий, программы со справочной информацией, SSH-терминалы — все это и многое другое есть в данной системе.

Оцените статью
iPad Мобайл
Добавить комментарий