Разработка по ipad

IOS-разработка для начинающих: учимся создавать приложения для iOS с нуля

Профессия программиста — одна из самых престижных и востребованных, это факт. В отрасли разработки программного обеспечения есть свои ниши. Из них самая быстроразвивающаяся, а вместе с тем наиболее высокооплачиваемая — это разработка ПО для мобильных устройств. Как тебе известно, так уж сложилось, что, оставив конкурентов далеко позади, вперед вырвались три постоянных соперника. Фишка легла таким образом, что кто-то из этих трех безоговорочный лидер, кто-то всегда догоняет.

В сегменте мобильных технологий, без сомнения, лидирует Apple со своим смартфоном iPhone. На прошедшей в сентябре презентации компания из Купертино продемонстрировала уже 7-ю версию мобильного девайса. Вместе с ней Apple представила новую версию мобильной операционной системы iOS 10. Теперь это самая значимая операционка в мире, как и ее предшественницы. Из этого следует, что изучение разработки для iOS — самое выгодное вложение времени и средств.

Сегодня мы займемся разработкой простого мобильного приложения для iOS. Конечно, лучше всего для этого подходит родной Mac. Но если ты сторонник Windows или у тебя просто нет Мака, можно установить операционную систему macOS под виртуальную машину в Windows. На просторах Сети тебе не составит большого труда найти специально заточенную под PC версию macOS, в народе называемую Хакинтош. Смело ставь ее на виртуалку VMware, VirtualBox — на твой выбор. Сразу предупрежу, что на PC-клавиатуре нет части клавиш, которые есть на Mac-клаве, и многие их сочетания нажать в Хакинтоше невозможно. Это изрядно портит настроение. В остальном все описанные ниже операции можно успешно выполнить на Хакинтоше.

Чтобы программировать вообще и для iOS в частности, надо довольно много знать. Математика и логика, может, и не понадобятся вначале, но будут востребованы потом. Современные технологии избавили программиста от необходимости досконально знать архитектуру компьютера, однако понимать базовые механизмы, такие как системы счисления, их преобразование, скорость работы подпрограмм или эффективность алгоритмов (большое O), необходимо.

На более высоком уровне iOS-разработчику надо глубоко знать операционную систему macOS и собственно саму iOS. Также тебе обязательно надо освоить «яблочный» язык программирования. Знание Delphi, C++, C# или VB.NET тебе не сильно поможет. У Apple своя экосистема со своими языками: Objective-C и Swift. Конечно, знание C++ еще никому не навредило, программы и вставки на нем встречаются везде, даже у Apple. Но самый используемый по определению Objective-C, просто потому, что появился гораздо раньше (в середине восьмидесятых годов прошлого века), тогда как Swift лишь два года назад (в 2014-м). Apple возлагает большие надежды на новый язык и много инвестирует в него. Для поддержки старого софта используется Objective-C, а новый пишется на Swift. Поэтому тебе неплохо знать оба.

Чтобы не тратить время зря, все эти языки программирования можно изучить под чутким контролем преподавателей на сайте GeekBrains.

Как ты знаешь, главный инструмент разработчика под macOS и вместе с ней iOS — среда программирования Xcode. Она включает средства для создания приложений для Mac, iPhone, iPad, Apple TV, Apple Watch. Все платформы Apple. Xcode содержит средство построения интерфейса (Interface Builder), редактор кода, поддерживающего все современные средства работы с кодом. Кроме того, не выходя из Xcode, можно протестировать приложение; если оно разрабатывается для внешнего устройства, то его можно запустить в эмуляторе.

В систему включены эмуляторы всех устройств, новые версии которых можно докачать. В дополнение Xcode содержит графические инструменты для анализа производительности приложения, включая средства диагностирования загруженности CPU, использования накопителя (HDD, SDD и другие), нагрузки на графический адаптер (со стороны OpenGL).

13 сентября вышла новая, горячо ожидаемая версия среды разработки 8.0. Стабильные версии можно бесплатно скачать в App Store. Альфы и беты распространяются по подписке разработчика. Восьмая версия вобрала в себя: новую версию языка Swift 3, средство изучения Swift Playground для iPad, новую версию Interface Builder, которая стала быстрее работать и позволяет просматривать макет приложения на разных платформах, без необходимости развертывать на симуляторе само приложение.

Если у тебя старая версия Xcode, то рекомендуем обновить, поскольку мы будем использовать последнюю версию. Скачать ее можно из App Store:

Xcode 8 в Mac App Store

На Xcode 8 можно разрабатывать приложения для macOS Sierra, iOS 10, watchOS 3 и tvOS 10. Имеются все SDK. Новые версии операционок стали последовательно появляться аккурат после презентации Apple, состоявшейся в начале сентября.

Кратко вспомним основные сведения о языке. Objective-C — компилируемый объектно ориентированный язык программирования, используемый для написания приложений под «яблочные» системы. Представляет собой надмножество или, другими словами, надстройку над C, унаследовав от последнего синтаксис, типы данных, способы контроля за ходом выполнения программы и добавив к нему возможности объектно ориентированного программирования — описание классов и методов.

Как в C++, в Objective-C центральную роль играют объекты, с которыми связаны четыре парадигмы: абстракция, инкапсуляция, наследование, полиморфизм. Язык C++ является строго типизированным, тогда как Objective-C — слабо типизированный или обладает динамической системой типов данных. Подобно Smalltalk, в Objective-C объектам посылаются сообщения. Это исключительная возможность динамических языков, так как тип объектов проверяется во время исполнения программы, а не во время компиляции.

Описание языка Objective-C занимает не один объемистый томик. Поэтому, чтобы получить объективные знания, удобно пройти курс «Mobile-разработчик». Целый раздел курса посвящен этому языку.

В качестве семпла мы разработаем весьма простое приложение. Не будем отступать от священной традиции, поприветствуем мир. Однако с учетом того, что у нас графическое приложение, мы немного разнообразим его: добавим кнопку, нажимая которую будем отображать или скрывать надпись «Hello, World».

Запусти Xcode, в появившемся окне выбери Create new project или в главном меню File -> New -> Project. В следующем окне будет предложено выбрать целевую платформу и тип приложения.

Мастер создания приложений

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

  • Заготовка Single View Application предназначена для простого приложения с одним экраном. Заготовка включает компонент View Controller, который позволяет настроить вид приложения с помощью конструктора форм Interface Builder.
  • Master Detail Application создает приложение, где в табличном представлении отображается коллекция объектов. После выбора одного из них показываются подробные сведения об этом объекте. Первый вид — мастер, второй — детализация.
  • С помощью Page-Based Application создаются приложения, имеющие несколько экранов, как страницы в книге. Следовательно, из этой заготовки создаются, например, читалки.
  • Tabbed application позволяет создавать приложения, где на каждый экран можно переключиться в любой момент, то есть у каждого экрана есть своя кнопка для его активации, на которой отображается заголовок. В качестве примера можно привести iTunes.
  • Game служит для создания заготовки игры. На выбор предлагаются четыре фреймворка для создания игры: SpriteKit, SceneKit, OpenGL ES, Metal. Вкратце рассмотрим их.

SpriteKit представляет собой систему для двумерной визуализации и анимации текстурированных прямоугольников — спрайтов. При отображении кадров используется стандартный цикл, кадр выводится после того, как обработку пройдет все содержимое сцены.

SceneKit — высокоуровневый фреймворк для визуализации трехмерной графики без помощи OpenGL. Он поддерживает загрузку, манипуляцию трехмерными объектами. В него включены: физический движок, генератор частиц и легкий способ скриптования.

OpenGL ES — стандарт в области компьютерной графики. Позволяет визуализировать 2D- и 3D-сцены. Позволяет описать пайплайн для видеокарты: вершины проходят преобразование, собираются в примитивы, которые растеризуются в двумерное изображение и выводятся на экран. В пайплайн можно включить программируемые шейдеры.

Metal — представляет собой низкоуровневый API, который позволит тебе выжать все мощности из твоего видеоадаптера. Отлаженные API вместе с предкомпилированными шейдерами и многопоточностью позволяют твоей игре подняться на новый уровень производительности и качества.

  • Sticker Pack Application — новый вид приложений, появившийся в iOS 10 и Xcode 8. Представляет собой набор простых или анимированных изображений, используемых в новом iMessage. Для своего создания не требует кодирования.
  • iMessage Application — новый вид приложений, появившийся в iOS 10 и Xcode 8. Позволяет создавать дополнения для iMessage, например для покупки и загрузки твоего пакета стикеров. Также можно, воспользовавшись API iMessage, создать свой аналог данного приложения, включая проигрывание аудио, видео, использование стикеров и другое.
  • В качестве заготовки для нашего приложения выберем Single View Application. Поскольку мы не будем разрабатывать большую программу, нам хватит предоставляемой этой заготовкой средств. Нажимаем Next. На следующей странице мастера надо ввести имя проекта, к примеру ShowLab. В ниспадающем списке Language оставим выбранный по умолчанию язык — Objective-C. Далее в ниспадающем списке Devices оставим выбор Universal. Здесь определяется, для какого устройства (iPhone или iPad) создается приложение. Пункт Universal означает для обоих. Снимем флажки Include Unit Tests и Include UI Tests, нам никакие тесты не нужны. Next. Выберем папку для сохранения проекта. Теперь жми кнопку Create.

    В результате откроется окно со списком всех примененных к проекту параметров. В этом окне можно изменить установленные ранее в мастере параметры: ориентацию, целевой девайс и прочее.

    Сначала нам надо создать интерфейс приложения. Для этого одним кликом выбери файл Main.storyboard в списке слева (если этот файл не видно, разверни содержимое папки ShowLab). Правее списка все окно займет Interface Builder. В центре отобразится макет устройства. В правом нижнем углу окна находится панель компонентов. Перетащи оттуда на макет компоненты Label и Button. Выше панели компонентов находится список свойств. Если у тебя он отсутствует, нажми кнопку Show the Attributes Inspector, находящуюся под заголовком окна в правой части интерфейса.

    Выдели в макете компонент Label и настрой его свойство Text: в ниспадающем списке оставь выбор Plain, в строку ниже введи нужную надпись, в нашем случае «Hello, World». Если текст не помещается в границы надписи, измени их, перетаскивая маркеры на краях компонента. Чтобы централизовать его по горизонтали, перейди на страницу Size Inspector, нажав на кнопку Show the Size Inspector (справа от Show the Attributes Inspector). На этой странице из ниспадающего списка Arrange выбери пункт Center Horizontally in Container.

    Теперь выбери компонент Button, измени его свойство Text на желаемую метку — Switch. Отцентрировать можешь так же, как описано выше.

    Создаем связь между графическими элементами и кодом

    В Visual Studio (или Delphi) объект в коде создается автоматически в тот момент, когда кладешь визуальный компонент на форму. В Xcode этого не происходит, но это не создает проблем.

    Открой содержимое заголовочного файла ViewController.h в отдельном окне, дважды щелкнув на нем. В этом файле находится объявление расширения класса UIViewController, помечается ключевым словом @interface. Такая возможность была добавлена во вторую версию Objective-C. Теперь выполни такой трюк: перемести курсор мыши на компонент — текстовую метку, зажми клавишу Ctrl и левую кнопку мыши. Перемести курсор в окно с кодом (файл ViewController.h), за курсором потянется синяя линия. Отпусти мышь и клавишу внутри описания интерфейса ViewController.

    Появится окно создания Outlet’а.

    Это свойство объекта, которое ссылается на другой объект (в данном случае визуальный компонент). Тебе надо ввести имя объекта Outlet, по нему ты будешь обращаться к визуальному компоненту, пускай будет lab. Далее выбирается тип объекта, он выбран правильно: UILabel.

    Еще ниже в списке Storage выбирается тип ссылки на объект: weak или strong. Если выбрать strong, то объект, на который указывает свойство, будет существовать до тех пор, пока свойство указывает на него, в таком случае он не сможет автоматически удалиться, когда перестанет использоваться. С другой стороны, когда действует слабая ссылка (weak), объект может самоуничтожиться. Итак, выбираем тип ссылки weak и жмем кнопку Connect. В итоге в код добавится такая строка:

    Убеждаемся, что Outlet — это свойство.

    Теперь создадим Outlet для кнопки. Алгоритм остался прежним. Только для свойства Name надо ввести другое имя, например but. В код будет добавлена строка:

    В результате имеем два указателя на визуальные компоненты: lab и but — соответственно, надпись и кнопку. Теперь, используя указатели, мы можем манипулировать компонентами в коде.

    Затем надо создать обработчик события нажатия кнопки. Для этого в отдельном окне открой файл реализации ViewController.m. Точно таким же образом, как ты перетаскивал линию в заголовочный файл для создания аутлета, от кнопки перетащи линию в файл реализации и отпусти до закрывающей командной скобки — @end. Появится окно для создания события, подобное окну создания аутлета. Видишь разницу: в заголовочном файле создается ссылка на объект, в файле реализации — метод.

    Создание обработчика события

    Заполни поле Name, его значение представляет имя свойства — метода. Пусть будет onClick. Значение поля Type оставь по умолчанию — id. В языке Objective-C данный тип является предком для всех остальных. В ниспадающем списке Event выбрано по умолчанию событие Touch Up Inside, которое происходит в момент отпускания указателя (мыши, пальца…) над кнопкой, то есть заключительная стадия нажатия кнопки. Это то, что нам нужно. В списке Arguments оставим значение по умолчанию: Sender — это объект, отправивший данный сигнал, в нашем случае им всегда будет кнопка. Жмем кнопку Connect. В итоге будет добавлен следующий код:

    Минус в начале означает закрытый метод (private). Ключевым словом IBAction помечаются события (методы) визуальных компонентов из Interface Builder.

    Между командными скобками напишем выполняемый при нажатии кнопки код:

    В этой строчке кода мы инвертируем значение свойства hidden. Оно имеет тип BOOL, который располагает двумя значениями: YES — истина и NO — ложь (несколько непривычно Windows-программерам, где true и false).

    Обрати внимание на символ подчеркивания, стоящий перед именем объекта — надписи (_lab). Без него компиляция завершится с ошибкой. Символ подчеркивания добавляется автоматически для объектов, содержащихся в других объектах; то есть в данном случае объект lab содержится в объекте ViewController. Раньше это было условное правило, используемое для различия объектов, объявленных в качестве членов класса, и локальных объектов. А теперь это строгое правило, реализованное в компиляторе языка.

    Сейчас можно скомпилировать приложение и запустить его на симуляторе. Мы выбрали симулятор для iPhone 7, входящий в Xcode 8. Кнопка компиляции и запуска представляет собой черный прямоугольник и находится на панели вверху интерфейса.

    После компиляции приложения, запуска симулятора и загрузки нашего приложения на экране симулятора отобразится его интерфейс: надпись «Hello, World» и кнопка Switch. Если нажать последнюю, надпись исчезнет, при повторном нажатии она появится вновь.

    Мы сделали очень простое приложение для понимания сути разработки под iOS. Более подробные сведения о создании приложений для iOS на языке Objective-C ты можешь узнать из курса наших друзей из GeekBrains «Мобильный разработчик». В курсе два месяца отдается на изучение этого языка. Во время первого месяца — вводные темы, а на втором — реальный кодинг профессиональных приложений.

    В 2014 году Apple представила новый язык программирования — Swift. Он быстро стал самым обсуждаемым и наиболее динамично развивающимся языком в мире. Это надежный, безопасный, интуитивно понятный язык для разработки приложений под операционные системы macOS, iOS, tvOS и watchOS для всего парка устройств от Apple. Swift — эффективный язык программирования. Его легче изучать, чем его предшественника — Objective-C, в то же время Swift позаимствовал из него самые удачные идеи. Вместе с тем разработчики сделали языки совместимыми, то есть в одной программе может быть код как на Swift, так и на Objective-C. В мире имеются миллиарды строк кода и сотни тысяч унаследованных программ, написанные на Objective-C, поэтому от его поддержки точно не будут отказываться.

    При разработке Swift ставилась цель создать самый удобный язык системного программирования — быстрый, безопасный и выразительный.

    Алгоритм на языке Swift работает в 2,6 раза быстрее, чем такой же алгоритм на Objective-C, и в 8,4 раза быстрее, чем на Python. Использование Swift делает процесс разработки программ более гибким и удобным.

    Благодаря своему экспоненциальному развитию, 3 декабря 2015 года язык Swift был передан в сообщество открытых исходников. При этом Apple строго следит за его развитием, организовав комитет для его разработки. Теперь Swift доступен не только в системах Apple, но также в Linux. Все дополнительные инструменты для работы с языком, включая отладчик, стандартную библиотеку, менеджер пакет, тоже свободные и открытые.

    За этим языком будущее. Более подробные сведения о нем ты сможешь узнать из упомянутого курса от GeekBrains «Мобильный разработчик», в нем целый месяц отведен на изучение данного языка программирования.

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

    Мы разработали простое приложение для мобильной операционной системы iOS, используя для этого систему программирования Xcode вместе с языком Objective-C. Протестировали готовое приложение на симуляторе iPhone 7. Мы узнали, как построить пользовательский интерфейс с помощью Interface Builder, как связать графические элементы с кодом приложения, как создать обработчики событий. Познакомились с основами Objective-C. Кроме того, мы обратили внимание на перспективный язык Swift, используемый для разработки мощных и безопасных приложений для «яблочной» экосистемы.

    Однако изученный материал — это только начало. Чтобы интенсивно прокачаться в направлении мобильного кодинга и разработки реально продаваемых приложений, мы рекомендуем пройти курс «Mobile-разработчик» на сайте наших друзей GeekBrains.

    Это достойный курс: пройдя его, ты точно не потратишь время зря. Он начинается с двух подробных курсов по языку Java, затем следует изучение базового программирования под мобильную операционную систему Android. Далее курс по базам данных в общем и языку SQL в частности. Затем углубленный курс по разработке профессиональных приложений для Android. После этого вектор изучения перейдет в сторону Apple-систем: два подробных курса по языку Objective-C и полезный курс по Swift.

    Лекции курса ведут профессиональные преподаватели, имеющие большой опыт в разработке программного обеспечения. Если что-то непонятно, можно, не откладывая, задать вопрос. Вообще, обучение на GeekBrains — живой процесс, можно общаться, задавать вопросы, помогать с ответами. Для проверки полученных знаний преподаватели выдают домашнее задание, которое затем проверяется. После прохождения обучения тебя ждет гарантированная стажировка в IT-компании. А дальше все зависит от тебя, если ты покажешь себя как грамотный специалист, тебя пригласят на работу.

    Специальный проект с компанией GeekBrains

    Интенсивная подготовка будущих разработчиков

    Почему айтишник — это круто, или Иван Васильевич меняет профессию

    Тестировщик ПО: недопрограммист или высокооплачиваемая специальность?

    Защита Касперского. Кто и как делает самые известные секьюрити-продукты

    Погружаемся в Windows 10 Mobile. Как писать и отлаживать программы для новой ОС

    Сканер отпечатка пальца: безопасность и обход защиты

    ][-гайд: выбери оптимальный язык программирования для своих задач

    Можно ли стать веб-разработчиком при помощи онлайн-курсов

    Intel Multi-OS Engine: ожидания и реальность кросс-платформенной разработки

    Framework7: делаем мобильные приложения в нативном стиле

    Рождение Another World. Как гейм-дизайнер в одиночку создал легендарную игру

    червяк130

    28.09.2016 at 18:23

    И откуда же инфа, что алгоритмы на Суифт в n раз работают быстрее чем на сях? Спорное утаерждение. Правильнее сказать так: при очень хорошем знании Суифт и компилятора ваши алгоритмы могут работать в n раз быстрее чем обычный код на сях.

    29.09.2016 at 02:05

    Хакер деградирует и в каждом номере реклама этого убогого сервиса… Еще один минус не продлевать вашу подписку…

    09.11.2017 at 19:39

    Ну честно признаться, как не вспомнить о GeekBrains в статье про программирование (!)? Да и альтернативы особой нет. Плюс на что-то нужно выживать и как минимум поддерживать сервера, особенно когда бумажная версия уже не продается, а значит нет тех прежних регулярных вливаний в виде покупок бумажных версий. Лично я лет семь назад когда из универа возвращался, обязательно приобретал свежий номер в ларьке. Потом это уже стало доброй традицией. Так что нечего ныть.

    09.11.2017 at 19:41

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

    09.11.2017 at 19:35

    Что значит Apple «без сомнения лидирует»? Он лидирует в головах его адептов. Если собрать все девайсы, на которых стоит Андройд, плюс все чайники и китайские ноунеймы, он порвет эппл на пять порядков даже не напрягаясь.

    Check Also

    Браузер Opera получит встроенную защиту от криптоджекинга

    В Opera 50 Beta RC появилась встроенная защита от браузерных майнеров. Новая функционально…

    Вредоносы Hex, Hanako и Taylor, атакующие серверы MS SQL и MySQL, оказались делом рук одной группы

    Криптовалютный обменник EtherDelta пострадал от хакерской атаки

    Канадское подразделение Nissan взломали, данные 1,1 млн пользователей скомпрометированы

    Специалисты Check Point обнаружили 0-day уязвимость в роутерах Huawei

    Android безопаснее iOS? Колонка Евгения Зобнина

    Проект Treble: долгожданное решение проблемы обновления Android. Колонка Евгения Зобнина

    Google готовит замену Android? Колонка Евгения Зобнина

    Ответы юриста. Что нужно знать хакеру для участия в конкурсных Bug Bounty

    • 24 часа назад

    Браузер Opera получит встроенную защиту от криптоджекинга

    В Румынии арестованы пять человек, распространявшие вымогателей CTB-Locker и Cerber

    Вредоносы Hex, Hanako и Taylor, атакующие серверы MS SQL и MySQL, оказались делом рук одной группы

    Майнер Digmine распространяется через Facebook Messenger

    Криптовалютный обменник EtherDelta пострадал от хакерской атаки

    Отдел рекламы и спецпроектов: yakovleva.a@glc.ru

    самой забойной защитой от DDoS в мире

    Каждую неделю, вместе с дайджестом актуальных хакерских трендов, ты можешь получить один из 1000+ еженедельных кодов на скидку от 10 до 50% или один из 5 промокодов на бесплатную годовую подписку на «Хакер»

    Данные участников не передаются третьим лицам

    Приспосабливаем iPad для веб-разработки. Полный джентельменский набор

    Новый iPad Pro по цене и мощности сопоставим с некоторыми MacBook Air. Но можно ли под iOS серьезно и продуктивно работать? Может ли iPad заменить полноценный ноутбук или настольный компьютер? Веб-разработчику вполне. В доказательство этих слов приведем более двух десятков ссылок на подборки приложений для проведения полного цикла работ над интернет-проектом: от изучения html и рисования макета сайта, до мониторинга посещаемости и администрирования сервера.

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

    Как написано в знаменитых аксиомах ведения бизнеса «Чтобы вести какое-нибудь дело, вас должно быть как минимум двое». Для успешного веб-проекта это правило тоже работает, и поэтому для планирования работы над сайтом необходим командный менеджер задач.

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

    Эту часть работы над сайтом, пожалуй, удобнее всего делать именно на iPad. Особенно если он 12-дюймовый и оснащен стилусом.

    Когда готов дизайн можно приступить к воплощению проекта в жизнь.

    Примечание: для NoSql в App Store на данный момент клиентов еще нет.

    Тестируем готовый продукт

    Использование для разметки статей языка Markdown ощутимо ускоряет процесс публикации статей на сайте. А подборка инструментов для SEO-оптимизации поможет выяснить насколько хорошо имеющийся контент индексируется и ранжируется поисковыми системами.

    Вернуться в начало статьи Приспосабливаем iPad для веб-разработки. Полный джентельменский набор

    • Следующая Откатиться с iOS 9 на iOS 8.4.1 стало возможно благодаря утилите OdysseusOTA 2
    • Предыдущая Как на Mac узнавать местонахождение iPhone и iPad

    Для отправки комментария вам необходимо авторизоваться.

    Разработка на iPad Pro

    Пришла в голову странная мысль, а почему бы не попробовать отказаться от ноутбука (в качестве мобильного/носимого устройства для разработки) и не воспользоваться iPad Pro.

    1. Программы для работы с серверами есть (доступ по ssh)

    2. Можно пользоваться Облачными IDE (хотя хочется поставить на свой сервер, может кто подскажет что?)

    3. После написания кода и для запуска тестов/сборок можно возпользоваться п.1

    Может быть уже кто проходил этот путь? Готов ли iPad заменить ноут?

    PS. Да, я понимаю, что docker/vagrant/. еще нет и врядли будут (RDP/VNC никто не отменял)

    А как насчет разработки на mackbook 12 c m3 ? docker,phpstorm,chrome проблем нет?

    докер и жабаидешки надо будет выкинуть. как ниже написано в статье — докер можно сбагрить на сервак. хром заменить на фф(если озу всего 8гб) и можно жить.

    The iPad Pro as main computer for programming

    извините, но с таким успехом можно работать хоть на хромбуке с high dpi

    Я вообще предлагаю отказаться от мобильных/носимых устройств для разработки, ибо 24 дюйма вам ничто не заменит

    если к нему подключить клавиатуру — чем он будет отличаться от ноутбука? Ничем.

    Да и вес в почти 800 грамм, а вместе с чехлом около килограмма, нормальным назвать нельзя

    Может всё-таки будет? Например неполноценной осью, слабым мобильным железом?

    Один мой знакомый только так и кодил, говорил нравится.

    Потом его в дурку забрали конечно.

    Есть Continuous IDE под дотнет с довольно большим количеством оффлайновых фич. Его автор, кстати, утверждал, что на любом другом языке кроме F# не вывез бы в одиночку проект такого масштаба.

    Еще есть увлекательный мир джейлбрейка, где вообще можно поднять vim/emacs + theos, и компилить под iOS на iOS.

    Другой вопрос — а нафига? 🙂

    Я недавно попробовал разрабатыать на ноуте (а это не мальнький ноут, а Dell Precision M6600 с 17? ’ экраном) — не идет, очень отвлекает переключение между экранами. Сейчас меньше чем с 2 мониторами 24? работать не могу. А лучше три.

    недавно смотрел какой-то планшет 98 плюс, у него 4к разрешение и виндовс 10, стоит 200 евро, клавиатура еще 30

    Бэк-енд — ладно хер с ним, а как инспектор в браузере открыть на айпаде, не подключая его к макбуку шнурком?

    а зачем его открывать? Где была речь о вебе?

    Когда-то пытался кодить под андроид на андроиде, благо и IDE’ешки есть и скорость позволяет, вот только со временем возникает вопрос — нафига? Нафига себя ограничивать в комфорте программирования если за деньги, которые заплатишь за мощный планшет, можно купить средненький ноут, поставить андроид студию и получать удовольствие от работы.

    Я бы обратил внимание на www.apple.com/macbook понятно, что не iPad, но как по мне то намного фунциональнее.

    дык Microsoft Surface. у меня уже несколько лет как Surface 3, его сейчас можно купить на амазоне баксов за 300, а то и меньше. получишь доступ ко всему своему клауду + куча возможностей для работы в оффлайне

    не, сорри, но у меня что-то не задалось с продукцией MicroSoft

    I don’t blame you 🙂 но серьезно, если основная твоя работа будет в клауде, то ОС на клиенте не так и важна, а для многого другого есть вполне приемлемые порты под винду — emacs, vim, python/anaconda etc. cygwin со всем добром, опять же. И да, Linux Subsystem в 10 винде работает отлично

    Недавно был пост

    Спасибо за ссылки!

    Практически идеально подходит Coda

    андроид еще кое-как можно юзать(не без боли конечно), чего уже говорить про айос. проще купить нетбук\хромбук(благо они дешевые, с ипс, без активного со) и вкатить туда хромос + крутон

    конечно гораздо проще купить ноут, но в том то и интерес чтобы использовать iPad Pro

    получите только геморрой

    Так неудобно же. Скорость разработки упадет в нанадцать раз..

    вопрос не в скорости разработки, а в том, что ЕСЛИ будет необходимо что-то СРОЧНО допилить — то можно будет сделать, но при этом не таскать с собой ноут

    это не означает полного отказа от Десктопа или Ноута (для полноценной разработки)

    И таскать с собой 12,9? iPad Pro вместо 11? MacBook Air? В чем цимес?

    iOs ведь та же, что и на телефоне — можно прямо с него кодить тогда

    iPad Pro є в 9.7? та 10.5? (одинакові за розмірами) варіантах.

    я во времена живой поддержки все делал с телефона. SSH много не надо.

    В остальном — не думаю, что есть разумная альтернатива мелкому ноутбуку

    так таскайте вместо этого планшета какой-то ультрабук на кор м(еще и подрихтовать в тлп для максимально низкого энергопотребления). кому и для чего вообще сейчас нужен огромный планшет?

    Смотреть/читать что-то на ходу, даже стоя.

    Я скорее удивлён, что кому-то нужды недоноутбуки типа эйра.

    для этого более чем подходят фаблеты(у меня 6.33? 2к смарт). они и так уже экраном с обычный киндл, но с более высоким дпи. планшеты мертвы. они получают точно тот же софт, что и смартфоны, но при этом имеют значительно лучше ттх и вся производительность идет вникуда т.к. нет нормального софта для работы, их UI не заточен под хоть какую-то мало мальски работу, ос не поддерживает много чего, а вот буки по типа эйра(11-12?) отлично подходят для переносной работы — они легкие, держат хорошо батарейку, имеют полноценный софт, адекватную производительность, НОРМАЛЬНУЮ клавиатуру и видеовыход.

    одно дело если бы эпл продавала железяку(планшет) с открытым загрузчиком и на х86 архитектуре и совсем другое то что она сейчас делает с айпадами(ОЧЕНЬ дорогая игрушка).

    Не подходят, я сравнивал. Попробуйте открыть на этом фаблете страничку в википедии или pdf — познаете боль. Конечно, если ваши интересы в сети ограничиваются твиттером — то вам фаблет, может быть, и ок. Но на айпаде даже твиттер удобнее.

    их UI не заточен под хоть какую-то мало мальски работу,

    Ждём новую iOS, где будет больше упора на мультитаск.

    а вот буки по типа эйра(11-12?) отлично подходят для переносной работы

    С бука невозможно работать на ходу, никак.

    А для серьёзной работы экран 12? тоже никак, даром, что там многозадачная ОС.

    Мне на своём маке и 15″-то экрана для программирования не очень хватает.

    открываю, все ок(похоже это проблема айос с пдф и википедией). я вообще только слушаю там музыку + шазам и открываю документы на ходу, больше я никаких приложений там особо не использую.

    Ждём новую iOS, где будет больше упора на мультитаск.

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

    А для серьёзной работы экран 12? тоже никак, даром, что там многозадачная ОС.

    бред. несколько лет сидел на 11.6?, все нормально работается.

    вы не понимаете о чем говорите вообще(или не хотите понять дабы оправдать покупку ненужного гаджета).

    Лет восемь назад кодил на nokia n810, потом на nokia n900 (но это было срочно-срочно, пришлось написать тонну кода)

    • Контакты
    • Реклама
    • Legal

    Пишите нам на support@dou.ua

    Мы отправим вам письмо со ссылкой для подтверждения.

    Источники:
    IOS-разработка для начинающих учимся создавать приложения для iOS с нуля
    iOS-разработка для начинающих: учимся создавать приложения для iOS с нуля Профессия программиста — одна из самых престижных и востребованных, это факт. В отрасли разработки программного
    http://xakep.ru/2016/09/28/ios-from-scratch/
    Приспосабливаем iPad для веб-разработки
    Новый iPad Pro по цене и мощности сопоставим с некоторыми MacBook Air. Но можно ли под iOS серьезно и продуктивно работать? Может ли iPad заменить полноценный ноутбук или настольный компьютер? Веб-разработчику вполне. В доказательство этих слов приведем более двух десятков ссылок на подборки приложе
    http://www.apple-iphone.ru/ipad5/prisposablivaem-ipad-dlya-veb-razrabotki/
    Разработка на iPad Pro
    Приветствую всех Пришла в голову странная мысль, а почему бы не попробовать отказаться от ноутбука (в качестве мобильного/носимого устройства для разработки) и не воспользоваться iPad Pro. 1. Программы для работы с серверами есть (доступ по ssh) 2.
    http://dou.ua/forums/topic/21682/

    COMMENTS