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

Разработка приложений для iOS

Разработка приложений для iOS
Насколько сложна разработка приложения для iOS? Чтоб для этого понадобится? Сколько займет времени процесс создания приложения? Как долго этому нужно учиться? И какие перспективы открывает это направление программирования? В этой статье мы постараемся ответить на все вопросы. Итак, начнем!

СОДЕРЖАНИЕ:

Создание проекта
Среда разработки Xcode
Создание iOS приложения с нуля
Сборка и запуск
Вопросы и ответы
Выводы

Приложение и его обновления, перед публикацией в App Store, должны проходить через строгую модерацию.
Опубликованные в магазине мобильные приложения для iOS обновляются с периодичностью 1 раз в месяц.

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

В рамках этой статьи мы поставим цель создать iOS приложение, которое выведет сообщение “Hello World” на главный экран и при этом не напишем даже строчки кода. Это позволит познакомиться с основами iOS разработки, предшествующей написанию кода.

Давайте разберемся, что нам потребуется, для создания приложения самого примитивного образца:

  • Устройство с Mac OS X
  • Скачанный Xcode.
  • Руки.

Голова нам, как видите, не потребуется. Да, компания Apple приложила максимум усилий, чтобы упростить работу, исключить элементарные возможные проблемы и сократить процесс разработки мобильных приложений под их платформы, такие как: iOS, iPadOS, tvOS, macOS, watchOS. Также Apple представила в 2014 году язык программирования Swift, который очень прост для новичков и функционален для профессионалов с опытом в мобильной разработке iOS. Если вы сможете создать программу для одной платформы, к примеру для iOS, то вам не потребуется изучать дополнительные навыки программирования, чтоб создать мобильное приложение под другие технологии от Apple. Все унифицировано до такой степени, что вы можете использовать чуть ли не один и тот же код, запуская его на разных типах устройств Apple.

Поехали!

Создание проекта

Итак, как говорилось ранее, нам потребуется компьютер Apple (или Hakintosh — устройство под Windows, но с установленной MacOS или виртуальная машина с MacOS), и IDE Xcode, которое есть в магазине App Store в свободном доступе (бесплатно).

Давайте разберемся, что такое Xcode и зачем он нам нужен.

Программная среда разработки Xcode — это сервис, который включает в себя: редактор кода, редактор графических интерфейсов, систему контроля версий и инструменты для отладки и выкладки, написанных нами программ. Если коротко, это программа, которая позволяет решить 90% всех задач в разработке приложений под семейство операционных систем от Apple.
Скачать Xcode можно по ссылке — developer.apple.com/xcode.

Итак, запустив Xcode мы видим приветственное окно, где есть возможность для открытия, создания или клонирования проекта. Нам нужно создать новый, нажав на “Create a new Xcode project”. Да, весь интерфейс Xcode доступен только на английском языке, поэтому советую запастись англо-русским словарем.

Создание нового проекта в среде разработки Xcode
Следующим шагом мы видим данное окно:
Создание Приложения в конструкторе Xcode
Здесь нам предлагают выбрать платформу и тип приложения. Нам нужно ПО для создания iOS программы (в верхней части диалогового окна) и Single View App. Все начинается с Single View, а потом разрастается до 50 View App.Следующим шагом нам требуется ввести название проекта, организацию, в которой мы хотим сделать приложение iOS, выбрать язык и включить/отключить дополнительные функции.
Окно настроек для создания нового проекта в среде разработки Xcode

ДАВАЙТЕ ПО-ПОРЯДКУ:

    1. Product Name — имя приложения;
    2. Team — команда разработки. Установим None. Это поле нам потребуется на этапе выкладки и тестирования, чтобы сертифицировать программу аккаунтом разработчика iOS;
    3. Organization Name — название организации которой принадлежат права на исходный код приложения. Имя организации и некоторые другие параметры будут выделены заголовком в каждом файле;
Окно создания нового проекта в среде разработки Xcode
    1. Organization Identifier — идентификатор организации. Как правило, это обратный домен официального сайта. Если компания называется example и адрес в интернете у нее example.ru, то ее идентификатор будет равен ru.example;
    2. Bundle Identifier — идентификатор пакета. Уникальный ID, который будет использоваться при выкладке продукта в App Store и будет фигурировать при подписи программы;
    3. Language — язык программирования. У нас есть две опции: Objective-C и язык Swift. Первый, считается немного устаревшим, на нем, как правило, новые проекты уже не пишут, но поддерживают старые, а так как мы создаем новый — выбираем язык Swift. Отмечу, что для наших задач не потребуется писать код;
    4. Use Core Data — параметр, который добавит в наш проект базу данных. Она обычно используется для больших объемов данных. В рамках нашей сегодняшней работы мы не подразумеваем, что будем вообще хранить какие-либо данные, поэтому отключаем этот параметр;
    5. Include Unit Tests (юнит-тесты) — автоматизированное тестирование кода. Его выполнение помогает увидеть ошибки, которые могут возникнуть во время изменений в последней версии готового digital-продукта. Но так как кода у нас в принципе не будет — необходимо отключить этот параметр;
    6. Include UI Tests — автоматизированное тестирование пользовательского интерфейса. Отключаем этот параметр, так как у нас будет всего один элемент интерфейса для пользователя, и его невозможно протестировать;

Заполнив информацию, нажимаем Next, и выбираем место проекта на нашем компьютере, жмем Create.

ОБЗОР СРЕДЫ РАЗРАБОТКИ

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

Рабочее пространство нового проекта в среде разработки Xcode
В верхней части рабочего пространства вы видим кнопки запуска или остановки приложения, поле настройки запуска, которое состоит из двух частей: что запускаем, на чем запускаем.

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

Слева мы видим несколько кнопок, которые будут переключать функционал левой панели, а именно:

      1. Навигация по файлам и папкам
      2. Система контроля версий
      3. Иерархия классов в проекте
      4. Поиск по проекту
      5. Уведомления о предупреждениях и ошибках при сборке
      6. Автоматизированные тесты
      7. Отладка
      8. Точки останова
      9. Логи сборок

Справа у нас есть две части: верхняя и нижняя. Вся правая панель — утилиты. В верхней части мы увидим настройки выбранного файла и/или элемента пользовательского интерфейса. В нижней части утилит, мы видим элементы интерфейса, которые мы можем использовать.

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

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

      1. Identity
        1. Display Name — Имя программы, которое будет выводиться на домашнем экране мобильного устройства
        2. Bundle ID — Уникальный идентификатор, который будет использоваться в App Store
        3. Version — Текущая версия проекта, которая ведется, используя семантическое версионирование
        4. Build — Номер сборки, который стоит увеличивать на единицу с каждой установкой приложения на устройство
      2. Signing
        1. Automatically manage signing — автоматическое управление подписью приложения
        2. Team — наименование вашей команды iOS разработчиков
        3. Provisioning profile — профиль, для подписи
        4. Signing Certificate — сертификат, который позволяет подписывать приложение в Apple
      3. Deployment Info
        1. Deployment Target — минимальная версия iOS, на которую может быть установлен разрабатываемый продукт
        2. Devices — Типы устройств
          • iPhone
          • iPad
          • Универсальное
        3. Main Interface — Storyboard файл, с которого будет начинаться приложение после
        4. Device Orientation — Возможные ориентации устройства
          • Портретное
          • Вверх ногами
          • Альбомный против часовой
          • Альбомный по часовой
        5. Status Bar Style — Цвет статус бара (верхняя панель информации со временем, оператором и батареей)
          • Светлый
          • Темный
          • Скрыть
      4. App Icons and Launch Images
        1. App Icons Source — иконка приложения
        2. Launch Screen File — экран, который показывается при запуске

Остальные пункты нам пока не потребуются.

Теперь, когда мы разобрались с тем, из чего состоит наша среда разработки, можно приступить к созданию нашего “Hello World” мобильной программы для iOS.

Создание iOS приложения с нуля

Первым делом, нам нужно найти файл интерфейса, который называется Main.storyboard. Его можно найти слева в панели навигации.Открыв файл, мы видим экран мобильного приложения. Теперь нам нужно перетащить элемент под названием Label на этот экран. Этот элемент находится слева внизу.
Просмотр элемента интерфейса Label в область приложения в Xcode
Перетаскиваем его на экран в любое место. Затем в панели утилит, ищем поле, в котором написано “Label”.
Добавление элемента интерфейса Label в область приложения в программе Xcode
И изменяем Label на Hello World. После этого, мы увидим, что наш элемент на экране не показывает полностью нашего текста, который мы вписали, так как у него был текст изначально меньше, и он принял его размеры.
Изменение описания элемента управления Label в Xcode
Фиксируем данный элемент по центру экрана, чтобы он принял правильную форму и наш текст полностью отобразился. Для этого, нам нужно найти вторую кнопки внизу слева, которая называется Align и нажимаем на нее.
Меню выравнивания элементов интерфейса в программе Xcode
Здесь мы видим некоторые параметры расположения нашего элемента. Нам требуются два последних параметра. Активируем их и нажимаем “Add 2 Constraints”.
После этого, мы можем наблюдать, как наш элемент зафиксировался посередине экрана и принял форму, в которой отображается текст полностью.
Выравнивание элемента управления по центру горизонтали и вертикали в среде разработки Xcode

Сборка и запуск

Теперь, нам нужно запустить мобильное приложение на устройстве, и посмотреть, все ли верно будет отображаться. Для этого, мы нажимаем вверху на выбор назначения запуска приложения и видим выпадающий список:
Меню выбора устройства для эмуляции приложения в среде разработки Xcode
В этом списке видим устройства и их эмуляторы, на которых мы сможем осуществить запуск. Выбираем любое и жмем Run. Начнется сборка приложения и Xcode покажет нам задачи, которые он выполняет в данный момент времени:
Подготовка к запуску приложения в среде разработки Xcode
После успешной сборки проекта, мы увидим, что Xcode перейдет в режим ожидания запуска и появится окно симулятора смартфона, которое будет загружаться. После того как симулятор загрузится, мы сможем наблюдать наше готовое приложение на устройстве.
Просмотр приложения с помощью эмулятора iPhone 10 в Xcode

Вопросы и ответы

Какие отличия приложений для Android и iOS следует учитывать при выборе пути разработчика?

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

Что еще нужно принять во внимание перед созданием приложения?

— 80% всех гаджетов мира работают на системе Android.

+ держатели iOS-смартфонов являются более платёжеспособными и делают покупки в 3 раза чаще.

— Для iOS-разработки нужно устройство с MacOS, которое требует значительных вложений. А также требуется ежегодная оплата в AppStore, которая составляет 99$ (Аккаунт разработчика приложений в Google Play Market оплачивается один раз и навсегда, цена — 25$).

+ востребованность iOS разработчиков выше, т.к. их меньше.

И это только некоторые моменты, которые следует учитывать при выборе направления мобильной разработки. Для сравнения можете попробовать разработку Android приложения (уровень — новичок).

Как разместить мобильное приложение в AppStore и продвинуть готовый digital-продукт?

Одним из основных требований клиента при разработке поставленной бизнес-идеи являются последующее размещение и развитие (ASO-продвижение) приложения. Это довольно объёмный материал, который мы расписали в отдельных статьях.

Вывод

Вы сделали первый небольшой шаг на пути разработчика iOS. Это непростой, но очень интересный путь разработки, а в случае технологий Apple еще и очень прибыльный.

Желаем вам упорства и пусть ваш энтузиазм не угасает!

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