Содержание

Apple представляет технологии для разработки приложений нового поколения

Расширенная лаборатория App Store и новая процедура проверки в App Store

На конференции WWDC20 компания Apple также представляет расширенную версию лаборатории App Store, которая обеспечит дополнительную поддержку сообществу разработчиков, создающих приложения для разных платформ Apple. Раньше персональная лаборатория App Store позволяла сообщать новости и рассказывать о важнейших новых функциях App Store, а также об изменениях правил использования App Store. В этом году мы приглашаем разработчиков делиться своими впечатлениями и оставлять отзывы в виртуальной лаборатории или использовать дополнительный канал для опросов, на который можно подписаться до 26 июня. Опросы проводятся четвёртый год, и в них уже приняло участие полмиллиона разработчиков. Опросы позволяют собирать критические замечания и отзывы и на их основе создавать новые инструменты для разработчиков в App Store, такие как общедоступные ссылки TestFlight и возможность отвечать на комментарии пользователей.

Apple также собирается создать дополнительные каналы для разработчиков, чтобы они могли делиться своими впечатлениями и комментариями во время новых форумов для разработчиков, которые будут проводиться в следующем году. На этих форумах разработчики смогут высказать свои предложения по внесению как крупных изменений, так и небольших исправлений, чтобы компания Apple могла продолжать совершенствовать и улучшать работу App Store с учётом мнения сообщества разработчиков.

Кроме того, два изменения будут внесены в процедуру проверки приложений уже этим летом. Во-первых, разработчики смогут не только обжаловать решения о том, что приложение нарушает определённое правило Руководства по проверке приложений для магазина App Store, но и использовать особую процедуру, чтобы оспаривать сами правила. Во-вторых, для приложений, уже опубликованных в App Store, исправления ошибок больше не будут задерживаться из-за несоответствия правилам (за исключением нарушений юридических правил). Теперь разработчики смогут устранить несоответствия в следующей версии исправлений.

Новый уровень прозрачности в вопросах конфиденциальности

Прозрачность и разъяснение методов обеспечения конфиденциальности в приложении совершенно необходимы для того, чтобы завоевать доверие потенциальных пользователей. Теперь разработчики могут подробно рассказать, какие технологии используются для защиты данных в их приложениях, и опубликовать эту информацию для пользователей в App Store. Например, можно сообщить, какие данные собирает приложение, уточнить, передаются ли данные третьим лицам, и объяснить, от каких опций пользователи могут отказаться.

Разработка приложений для iOS — iPhone, iPad, цены на создание приложения под iOS в Москве и Санкт-Петербурге

Бэклог и договор

Далее, команда разработчиков вместе с продукт оунером (Product Owner)* и Заказчиком составляет второй единый документ приложения — Бэклог Продукта**.

* продукт оунер – руководитель проекта

Ответственность за содержимое бэклога, его упорядочение и доступность всем членам проекта несет Product Owner. Он также ответственен за достижение максимальной ценности продукта и работы, выполняемой командой, поэтому непрерывно анализирует текущий ход работ над продуктом и ищет способы по улучшения его. Эту роль может исполнять как человек со стороны заказчика, так и сотрудник нашей компании.

**бэклог – список задач для команды разработчиков, которые полностью описывают проект

Документ представляет собой иерархическую структуру из пользовательских возможностей и технических требований, упорядоченных по очередности реализации, более важный функционал будет реализован раньше остальных. Каждому элементу Бэклога присваиваться описание, порядковый номер, оценка объема работы и ценность. Это позволяет просчитать окончательную стоимость продукта.

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

Бэклог – гибкий документ, который позволяет Заказчику вносить даже серьезные изменения в продукт по ходу разработки, ведь большинство новаторских идей придумываются уже в ходе выполнения проекта. Дополнительный функционал оформляется в виде доп. соглашений к договору, в которых отмечается, сдвинет ли реализация вносимых изменений сроки завершения этапов проекта.

ᐈ Разработка приложений для IOS | Заказать создание приложения для Iphone

Желаете продавать больше и быть ближе к своим клиентам?

Есть интересные идеи для приложения под iOS или бизнес, под который требуется приложение?

Ищете разработчика мобильных приложений под iOS с опытом и без рисков?

Заказать мобильное приложение в WOXAPP — гарантия результата.

 

Выгоды разработки приложений для iOS в WOXAPP:

  • Разработка мобильного приложения в срок.

  • Прозрачное решение задач.

  • Детальная проработка аудитории, рынка, конкурентов.

  • Продуманный дизайн и юзабилити.

  • Тщательное тестирование и размещение в AppStore.

  • Гарантии выполнения обязательств.

  • Техническая поддержка приложений.

 

Специфика разработки программ для iOS в WOXAPP:

 

Вникаем в бизнес

Детально анализируем аудиторию

Анализируем существующие мобильные приложения

Создаем программы iOS полезные пользователям

 

Познакомьтесь с нами ближе. Один день из жизни компании:

 

iOS приложение для бизнеса — это:

 

  • Выгодное отличие от конкурентов.

  • Мобильное приложение будет рядом с клиентом 24 часа в сутки.

  • Эффективная реклама, ведь полезные приложения для iPhone распространяют и рекомендуют сами пользователи.

  • Возможность роста продаж.

  • Автоматизация бизнес-процессов компании.

 

Как мы делаем ваш бизнес успешным?

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

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

 

 

Гибкая разработка под iOS по SCRUM

Используем методологию гибкой разработки Scrum. Разработка для ios делается короткими итерациями – вы контролируете процесс.

 

Если коротко, разработка под iOS делается так:
 

  • Все задачи собираются в один документ и оцениваются (так называемый «back-log»)

  • Разделяются на спринты (временные отрезки, у нас в команде это 1 неделя)

  • После каждого спринта результат демонстрируется клиенту («демо»)

 

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

 

 

Слушаем и тестируем

Процесс разработки построен для создания востребованных IT-продуктов.

 

Для этого:
 

  • Проводим интервью с пользователями на этапе дизайна.

  • Собираем отзывы и предложения после запуска, формируем список для улучшения.

  • Тестируем приложения в реальных условиях.

Подробнее про методологию интервьюирования прочтите здесь

 

 

Публикация приложения

Помогаем с публикацией приложений. Регистрируем аккаунт, делаем скриншоты и яркую иконку, готовим описание и ключевые слова. Следуем правилам публикации от Apple.

 

Сопровождаем на этапе проверки приложения модераторами. Создание программ для iOS завершается релизом. Далее команда участвует в обновлении и доработке приложения.

 

 

Разработка на iOS: нативность дизайна

Разработка мобильных приложений под iOS должна соответствовать требованиям Apple. В дизайне приложений используем нативные паттерны в интерфейсе.

 

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

 

 

Разработка программ для iOS. Особенность подхода:

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

  • Прототип. Тщательно разрабатываем все элементы интерфейса, чтобы они были удобными в использовании, понятными и полезными пользователю. Учитываем особенности: будет ли новое приложение самостоятельным продуктом или дополнением к сайту.

  • Дизайн. Придумываем яркий и практичный дизайн. Важно, чтобы на экранах разных устройств приложение выглядело одинаково привлекательно.

  • Разработка. Написание приложений для android происходит под контролем заказчика, мелкими этапами.

  • Тестирование. Длительно и всесторонне тестируем. Приложение попадает на рынок, если мы на 100% уверены в его работоспособности и качестве.

  • Публикация. Учитываем требования магазинов к новым разработкам для Андроид. Приложение пройдет модерацию.

  • Поддержка. Осуществляем техническую поддержку продукта. Чтобы приложение корректно работало на всех устройствах, а возникшие в процессе ошибки были оперативно устранены.

 

 

Наше отличие — тщательная бизнес-экспертиза проекта и дальнейшая техническая поддержка

В процессе работы над проектом генерируем множество идей. Ищем ответы на вопрос: «Что хочет пользователь?» Записываем все идеи и составляем блок-схемы. После этого садимся и анализируем, что у нас получилось.

Разработка под iPhone учитывает поведение пользователей. Поэтому наши приложения интуитивно понятны и просты в использовании.

Еще ищете, где заказать приложение для iPhone? Свяжитесь с нами и закажите создание приложения для iPhone любой сложности.

 

Какие устройства охватывает iOS разработка?

iPhone —

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

iPad —

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

 

Расчет стоимости проекта для iPhone

От чего зависит стоимость разработки мобильных приложений для iPhone? Как формируется стоимость разработки приложения?

 

На стоимость работы влияют следующие факторы:

 

  • Затраченное на разработку время.

  • Сложность дизайна. Будет ли это «нативный» дизайн или будет использован фирменный стиль компании.

  • Функционал приложения.

  • Соответствие мобильного приложения требованиям при публикации в AppStore.

 

Какие гарантии и условия оплаты?

Мы заключаем с вами договор, где прописывается каждый этап работы и в который включены все наши гарантии. Кроме того, в любое время вы можете связаться со специалистами, работающими над созданием вашего приложения.

 

Почему выбирают нас?

 

  • Прозрачная работа. В каждый момент времени вы знаете что, как и зачем мы делаем.

  • Удобная поэтапная оплата и доступные цены на разработку приложений для iPhone.

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

 

Выбор надежного подрядчика

Шаг 1 — Определите цель.

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

 

Шаг 2 — Определите критерии выбора исполнителя. Например:

 

 
Шаг 3 — Кейсы.

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

 

Шаг 4 — Вопросы.

Задавайте, задавайте и еще раз задавайте вопросы до получения исчерпывающих ответов, соответствующих Вашим критериям выбора.

 

Требования наших клиентов на стадии оценки проекта

  • Успешный опыт разработки проектов для среднего и крупного бизнеса.

  • Бизнес-экспертиза при разработке стартапов.

  • Команда от 7 специалистов при разработке приложения или веб-сайта.

  • Уникальность, никаких типовых решений.

  • Срок — разработка от 3-х месяцев.

  • Прозрачная система контроля и гибкость в разработке.

  • Обоснованная стоимость разработки мобильного приложения

 

Почему привлекательнее разработка приложений для iPhone и iPad |

Разработка приложений для iPhone и iPad на самом деле выглядит более привлекательно с точки зрения  разработчика. Главным образом потому, что тенденция небольшой аудитории, которая готова много тратить, постоянно подтверждается. Об этом свидетельствуют и последние исследования компании IDC (она специализируется на анализе высокотехнологичных рынков).

 

Выручка с приложений для iPhone и iPad

При условии, что яблочные устройства – это всего лишь около 12% рынка, именно приложения для iPhone и iPad составляют половину (!) всей выручки от продажи приложений.

Согласно результатам исследования, ежегодная выручка от продаж приложений для iPhone и iPad оценивается в $6,4 млрд. Средний показатель выручки разработчика за 1 скачивание из App Store составляет $0,24.

Разумеется, для разработчика идея создания мобильных приложений для iPhone и iPad выглядит весьма заманчивой.  Главным образом из-за вполне сформированной и очень привлекательной аудитории.

 

Портрет аудитории с айфонами

Владельцы айфонов – это автоматически люди не бедные, поскольку стартовая цена на такой гаджет выше, чем на альтернативные варианты с другой ОС. Также эта аудитория с большей готовностью платит за приложения для своих iPhone и iPad, поскольку у них зачастую просто нет возможности скачать более дешевое или бесплатное приложение (аплодисменты Apple, их код не так просто взломать). В совокупности этих  факторов и кроется секрет покупательской способности владельцев Apple.

 

На руку при разработке приложений

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

 

Свои сложности

Однако при разработке мобильных приложений для iOS также есть сложности. Практически все они связаны с размещением вашего приложения в магазине. Аккаунт разработчика в App Store  обойдется вам в $99 ежегодно. Также нужно быть готовым, что у Apple могут возникнуть претензии к качеству и оригинальности вашего приложения. Так что для реализации приложения для iPhone и iPad в бюджет следует заранее занести статью расходов на доработку.

iPhone разработка на PC — CodeRoad

Может ли кто-нибудь кратко описать решения, которые нужно начать разрабатывать для iPhone на PC?

iphone

windows

ios-simulator

Поделиться

Источник


Unknown    

14 февраля 2010 в 13:53

7 ответов


  • Разработка для iOS на PC

    Возможный Дубликат : iPhone разработка на Windows Я хотел бы знать, возможно ли и как можно (легально, читайте далее) разработать приложение для iPhone/iPad, используя PC, а не Mac, только купив физическое мобильное устройство для окончательного тестирования и deployment. Я знаю , что нелегальный…

  • iPhone демонстрация приложения на Windows

    Возможный дубликат: iPhone разработка на PC Я разработал нативное приложение iOS. Мой менеджер хочет дать демо-версию этого приложения на машине Windows. Разве это возможно? Когда я искал, я нашел MobiOne . Но это только для того, чтобы проверить HTML приложений. Есть ли какой-нибудь симулятор…



8

Вам не обязательно нужен Mac. Это зависит от ваших требований к приложению.
Что вы всегда можете сделать, так это создать веб-приложение для iPhone.

Вот хороший учебник с Aptana (Eclipse на основе IDE для веб-разработки). Aptana, похоже, имеет какой-то встроенный симулятор iPhone.

Существуют различные наборы инструментов, например iui и jQTouch , для имитации Look&Feel из iPhone приложений.

Поделиться


Felix Kling    

14 февраля 2010 в 14:22



2

Получите Mac или запустите сервер OSX под VMWare (установите OSX86 на отдельный раздел)…

Поделиться


Gnark    

14 февраля 2010 в 13:55



1

Крис Харди провел хорошую сессию по использованию C# для разработки на iPhone с использованием Monotouch на последнем DDD в Microsoft, прочитав UK в прошлом месяце. Его сеанс был записан. Вот ссылка на видео. http://vimeo.com/9150434

Поделиться


JohnnyJP    

14 февраля 2010 в 22:53


  • iPhone разработка на Hackintosh

    Мой вопрос заключается в том, что касается разработки кода для iPhone / iTouch. Что касается перехода Apple на платформу Intel для своего чипа, то теперь, очевидно, можно запустить их OS на PC. Итак, с учетом этого и моей изначально дешевой натуры мне было интересно, можно ли обойти покупку…

  • Разработка для iPhone на компьютере на базе PPC

    В другом месте было сказано , что разработка для iPhone требует компьютера на базе Intel , но это, похоже, не так, согласно нескольким вводным документам Apple, которые я читал. См., например, следующее: для разработки приложений для iPhone OS вам нужен компьютер Mac OS X с инструментами Xcode….



1

Используйте набор инструментов с открытым исходным кодом, обычно используемый для взломанной разработки. Это должно работать для app Store…

Поделиться


Harley Watson    

14 февраля 2010 в 14:08


Поделиться


Maurice    

25 ноября 2010 в 02:02



0

Здесь есть несколько хороших дискуссий о разработке iPhone с точки зрения разработчиков .net:

http://dotnetrocks.com/archives.aspx

Шоу: 468 и 454, есть также предстоящее шоу 3 марта

Поделиться


Shiraz Bhaiji    

14 февраля 2010 в 14:03



0

http://www.dragonfiresdk.com/index.htm Я им не пользовался, но те, с кем я разговаривал, говорят, что он хорош 🙂 к сожалению, он стоит денег 🙁

Поделиться


crmunro    

14 февраля 2010 в 14:26


Похожие вопросы:

прозрачный пиксель рендерится по-разному на PC и iPhone

Сгенерированный прозрачный пиксель в Photoshop. На PC он выглядит так, как и ожидалось, на iPhone он выглядит темнее. http://jsfiddle.net/QMrLB / div { background-image:…

Разработка Приложений На Вашем Персональном iPhone-Это Безопасно?

Я уже давно разрабатываю приложения iPhone на своем iPad и собираюсь разработать их для своего iPhone, но мне просто интересно, безопасно ли это, и я имею в виду… Может ли это повредить моему…

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

Возможный Дубликат : iPhone разработка на Windows Мы хотели бы провести iPhone тренинга по разработке приложений для студентов. Однако иметь компьютер mac для всех очень дорого. Мы хотели бы…

Разработка для iOS на PC

Возможный Дубликат : iPhone разработка на Windows Я хотел бы знать, возможно ли и как можно (легально, читайте далее) разработать приложение для iPhone/iPad, используя PC, а не Mac, только купив…

iPhone демонстрация приложения на Windows

Возможный дубликат: iPhone разработка на PC Я разработал нативное приложение iOS. Мой менеджер хочет дать демо-версию этого приложения на машине Windows. Разве это возможно? Когда я искал, я нашел…

iPhone разработка на Hackintosh

Мой вопрос заключается в том, что касается разработки кода для iPhone / iTouch. Что касается перехода Apple на платформу Intel для своего чипа, то теперь, очевидно, можно запустить их OS на PC….

Разработка для iPhone на компьютере на базе PPC

В другом месте было сказано , что разработка для iPhone требует компьютера на базе Intel , но это, похоже, не так, согласно нескольким вводным документам Apple, которые я читал. См., например,…

Разработка для iPhone на ПК?

Возможный Дубликат : iPhone разработка на Windows Можно ли создать iPhone приложений с помощью PC? Я запускаю windows vista и хочу узнать objective-c, что может быть лучше мотивации, чем потенциал…

PHP email содержание разное на PC и iPhone

Я посылаю email (в формате HTML) в PHP, используя библиотеку phpmailer. Мой email отображается правильно на PC и iPhone, никаких акцентов или других проблем. Но я заметил беспокойство в содержании:…

iPhone разработка приложений

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

Что необходимо для разработки приложений для iOS?



Если Вы попали на наш сайт, вероятно Вы уже имеете какой-то опыт разработки. Более того, я на 90% уверен, что Ваш компьютер работает под управлением операционной системы Windows (да не прогневаются на меня пользователи Ubuntu). Вероятно также, что Вы задаетесь вопросом: «Что мне нужно, для того чтобы писать приложения дляiOS?» В этой статье я отвечу на ваш вопрос. Приготовились? Если коротко, то Вам нужен Mac.

Эти три слова обычно отбивают охоту заниматься разработкой под iOS у 90% Windows программистов. Люди недоумевают. «Как! — говорят они, — неужели нет XCode под Windows?!» Как бы нам того не хотелось, но Apple действительно не выпускает XCode под Windows, как и Microsoft не выпускает Visual Studio под MacOS. Мне известно три пути решения этой проблемы.

Путь первый, правильный — Купите себе Mac

Первый способ, пожалуй, самый простой и правильный. Вы просто покупаете себе Mac. Многих людей отпугивает высокая стоимость продукции Apple, но давайте разберемся, действительно ли Mac так дорог по сравнению с PC.

Допустим, Вы программист, который хочет разрабатывать программы под Windows. Сколько стоят Ваши инструменты разработки? Прежде всего, Вам понадобится компьютер. Стоимость пригодного для разработки ПК сегодня составляет порядка $1000 — $1500. Помимо самого ПК Вам понадобятся инструменты разработки. За профессиональную версию Visual Studio Вам придется заплатить $1200. Delphi Professional стоит сопоставимых денег. Жизнь показывает, что примерно раз в два года Вам приходится снова тратиться на покупку обновлений. Конечно, Вы можете сэкономить, воспользовавшись бесплатной Visual Studio Express Edition или найти Turbo Delphi, но это все не то. Это системы для школьников. Если Вы профессиональный разработчик, Вам нужны профессиональные средства разработки. Это нормально, когда профессиональные инструменты стоят ощутимых денег. Неважно чем вы занимаетесь, программированием, музыкой, фотосъемкой. Если вы профессионал, вы используете оборудование, в цене которого фигурирует никак не меньше трех нулей. Таким образом, машина профессионального Windows разработчика стоит $2000-$2500.

Давайте теперь рассмотрим Mac OS X, для разработчика неплохим вариантом является приобретение ноутбукаMacBook Pro. В России этот компьютер стоит заоблачных денег, около $2800 (в конфигурации Intel i7-2720QM/RAM 4GB/HDD 750GB). Если заказывать MacBook на ebay, можно сэкономить около $1000. Если Вы по каким-то причинам не готовы тратить такие деньги на приобретение компьютера, можете обратить внимание наMac Mini — компьютер начального уровня от Apple (Intel i5-2430M/RAM 4Gb/HDD 500Gb). Его цена в России составляет примерно $1100 ($800 с доставкой в ebay). Mac Mini поставляется без монитора, мышки и клавиатуры, поэтому дополнительно Вам придется потратить $300 на эти «мелочи». Что касается инструментов разработки, они бесплатны, поэтому, единственное вложение — приобретение компьютера, который обойдется в $2800.

Таким образом, с точки зрения профессионального разработчика компьютер Mac не такая уж дорогая вещь, если же Вы сомневаетесь, то на попробовать, можете приобрести Mac Mini.

Путь второй — Виртуальная машина

Второй способ решения проблемы заключается в использовании виртуальной машины для эмуляции Mac-а. Наиболее распространенное сегодня решение — установка VMware и использование готовых сборок Mac OS X. Этим способом имеет смысл пользоваться, если у Вас достаточно мощный компьютер с большим объемом оперативной памяти и процессором Intel с поддержкой VT-x и SSE3. Процессор критичен для запуска системы, а объем памяти напрямую сказывается на скорости работы гостевой ОС. Если у Вас мало памяти, разработка превратится в пошаговую стратегию.

Путь третий — хакинтош

Это промежуточный, компромиссный вариант. Хакинтошем называется компьютер, совместимый по железу с продукцией Apple, на которой с помощью специальных методов установлена Mac OS X. В интернете существует много статей, посвященных созданию хакентошей. С точки зрения выигрыша в деньгах при построении сопоставимой с Mac-ами по качеству системы имеет смысл строить компьютер топовой конфигурации. На сегодняшний день это может быть компьютер следующей конфигурации: Intel Core i7-2600K, МП GIGABYTE P67A-D3-B3, RAM 16Gb, 2 SSD 128Gb, HDD 500 Gb, Video AMD Radeon HD 6870.

Установка SDK и XCode

Если вы приобрели новый Mac или собрали себе хакинтош, вероятно у Вас отсутствуют необходимые для разработки SDK и среда XCode. Скачать их можно на страницеhttp://developer.apple.com/xcode/, нажав Login. Для входа у Вас попросят указать Apple ID. Если Вы еще не получали его, нажмите кнопку Join Now. Находим на открывшейся странице раздел «Register as an Apple Developer» и щелкаем по ссылке Learn more в его конце. Нажимаем кнопку Get Started и аккуратно заполняем поля. После этого Вы сможете абсолютно бесплатно скачать Xcode и iOS SDK.

Помимо компьютера, на котором Вы будете разрабатывать свои программы, Вам понадобится устройство для их тестирования (iPod Touch, iPhone или iPad). С моей точки зрения для целей тестирования разрабатываемого софта вполне подойдут устройства, приобретенные на вторичном рынке.

Для iOS разработчиков есть еще одна статья расходов. Для установки и тестирования Вашего iOS приложения на реальном устройстве, Вы должны вступить в iOS Developer Program, членство в которой обойдется в $99 в год. После этого в вашем распоряжении окажется специальный файл — сертификат разработчика, который позволит проводить тестирование и публиковать программы в App Store. Процесс получения сертификата разработчика дело весьма не быстрое, требующее наличия кредитной карточки и отправки бумажных документов по почте.

Как видите, разработка под iOS довольно затратное на начальном этапе дело. Если у Вас нет уверенности в своих силах, попробуйте начать программировать под виртуалкой.

Александр Ледков

пошаговая инструкция Язык для ios приложений

  1. Язык программирования. Какой нужно знать, чтобы писать приложения под iOS.
  2. Нужен ли дизайнер, разработчик интерфейсов или кто-то еще?
  3. Официальная часть: сертификат разработчика.
  4. Необходимое оборудование для комфортной разработки.
  5. Вечный вопрос: AndroidOS или iOS?
  6. Что нужно сделать сегодня?
  7. Создание нового проекта.
  8. Компиляция. Что это такое и зачем это нужно?
  9. Запуск на симуляторе.
  10. Выводим “Hello, world!”.
  11. Какие стандартные view есть в iOS.

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

Язык программирования
(wikipedia.org) — формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под ее управлением.

Пожалуй, вопрос, который я задал в названии этой части, довольно сложный. Я могу ответить на него просто – Objective-C. Если бы я на этом остановился, то я бы оказался неправ. Я бы сказал, что Objective-C – это необходимый минимум. Недавно проходила конференция от Яндекса – YET, на ней один из докладов был посвящен как раз тому, какие языки программирования должен знать разработчик. Ответ был вроде следующего: “Он должен изучать новые и новые языки программирования постоянно, не останавливаясь на каком-то конкретно”
. Я с этим полностью согласен. Изучая новые языки программирования, вы изучаете новые подходы, методы программирования. Поэтому, чтобы писать приложения под iOS, нужно знать Objective-C, но также желательно знать и другие языки программирования, чтобы ваш код был хорошим, эффективным, гибким.

Если вы еще не программист, то я вам советую начать с языка Си. Скачайте книгу Кернигана и Ритчи (а лучше купите
) о языке Си, прочтите ее, проделайте все, что там вам предлагается, и уже после этого я посоветовал бы вам переходить к Objective-C. Если же вы уже представляете себе, как писать программы, готовы с легкостью ответить на вопросы – “Что такое типы данных? Что такое переменная? Что такое функция или метод? Что такое ссылка и указатель? Что такое “
include
”?”
, вы знаете Си или C++ или же Java или C#, то вы готовы к написанию своего первого приложения под iOS.

Также вам необходимо знать основы ООП и шаблоны проектирования. Наверное, список можно и дальше продолжать, но вряд ли я готов претендовать на качественное объяснение данных понятий. Да, к сожалению, Objective-C не тот язык, с которого можно начать свой путь программиста. Но если вам нравится и хочется творить, то вам пора бежать в магазин, закупаться книгами и начинать свой путь разработчика.

Нужен ли дизайнер, разработчик интерфейсов или кто-то еще?

Очередной, не менее простой вопрос. Если вы программист и умеете писать консольные программы и хотите начать писать приложения под iOS, то на начальном этапе вам такой человек не нужен. Если у вас есть iPhone || iPad || iPod Touch, вы знакомы с iOS, то вам не нужен разработчик интерфейсов. Вообще, у Apple есть такой документ – Human
Interface
Guidelines
. В данном документе описано, где и какой элемент интерфейса надо использовать. Поэтому на начальном этапе можно обойтись и без третьих лиц. Вообще iOS SDK предоставляет достаточно возможностей для разрисовки интерфейса приложения, так что рисовать в PS какие-то там кнопочки или разноцветные тексты, градиентные заливки и прочее вам не придется. Позже мы с вами создадим первый проект, в котором мы познакомимся со всеми этапами создания приложения “Hello, World!”.

Однако, нужно понимать, что когда пойдут серьезные проекты, приложения, которые вы захотите опубликовать в AppStore, то вам уже будет сложнее без дизайнера и разработчика. Сложность может проявиться на разных этапах – либо при разработке приложений, когда вы будете тратить часы в поисках необходимой картинки или сидеть и творить в PS, либо же после того, как опубликуете приложение и начнете получать комментарии от наших любимых юзеров, которые будут жаловаться на ваш убогий дизайн бесплатного приложения. Я столкнулся на обоих этапах с такими проблемами. После получения отстойных комментариев в AppStore я хотел забросить свое приложение, которое между прочим бесплатное, и забыть о неблагодарных пользователях. Однако, полезность самого приложения для меня, а также для многих других пользователей, заставила меня проглотить те гневные комментарии и продолжить разработку приложения. Месяца три назад я начал разрабатывать приложение вместе с дизайнером, который говорит что и куда вставлять, какой цвет выбирать, где и какую картинку рисовать, и это, я хочу сказать, довольно-таки удобно. Поэтому я все же советую в какой-то момент начать использовать услуги дизайнеров, чтобы получать хороший фидбэк от пользователей. И помните – пользователи iOS-устройств хотят видеть хороший
дизайн приложения, даже если и его функциональность страдает.

Официальная часть: сертификат разработчика

Наверное, вы уже много слышали о каком-то там сертификате разработчика. Сейчас я постараюсь вас ввести в курс дела – зачем он и нужен ли он вам прямо сейчас. Сертификат разработчика представляет собой некий файл, как и любой другой сертификат. Этот файл выдает вам компания Apple после того, как вы пройдете все этапы регистрации в системе iOS
(MacOS
)
Developer
(Enterprise
)
Program
.

Что же вам даст наличие данного файла и регистрация в одной из вышеуказанных программ? Ответов на этот вопрос – тьма тьмущая. Поэтому скажу только о самом важном (все нижеописанное дается вам ровно на один год):

  • тестирование ваших приложений на своих девайсах (хотя вроде это хакается и можно и без сертификата)
  • доступ к форуму разработчиков на портале Apple (хотя есть сообщество StackOverflow.com, где гораздо оперативнее можно найти ответ на ваш вопрос)
  • возможность скачать бета-версии (ну и конечно же текущие) iOS и Xcode
  • возможность установить бета-версии iOS на свой девайс
  • возможность опубликовать приложение в AppStore
  • возможность привязать до 100 устройств к своему аккаунту, тем самым разрешив данным девайсам устанавливать бета-версии iOS, тестировать ваши приложения (еще не опубликованные в AppStore) и еще много чего нелегального
  • возможность попонтоваться перед друзьями, что вы официальный разработчик iOS-приложений

Если вы решили, что вам нужен такой сертификат, то будьте готовы расстаться с 100$ (300$ для Enterprise), отправить факс в США, ввести данные вашей банковской карты (внимание! Вашей, именно вашей), ну и дочитать эту главу.

Итак, поехали.

  1. Идем по этой ссылке http://developer.apple.com/programs/ios/
  2. Кликаем на Enroll Now
  3. Читаем внимательно флуд и идем дальше – Continue
  4. Тут у нас 4 пункта:?a. Вы хотите создать новый Apple ID для Apple Developer Program?b. Вы хотите использовать существующий Apple ID?c. Вы уже зарегистрированы, как простой разработчик, а теперь хотите стать официальным разработчиком со всеми вышеописанными плюшками?d. Вы уже являетесь участником iOS или Mac Developer Program и хотите привязать к вашему аккаунту еще одну программу
  5. Друзья, дальше вам самим надо пройти пару шагов по заполнению личных данных. Я уже точно не помню, что там. Возникнут вопросы – задавайте в этом топике, я отвечу по-возможности на всё.
  6. Вам дали ссылку на.pdf файл, который надо заполнить и отправить по факсу в Apple.
  7. Печатаем его, заполняем (очень внимательно и аккуратно).
  8. Отправляем факс в офис Apple в США. (Будьте бдительны, чтобы ваш факс не попал в чужие руки, потому что там вы указываете номер банковской карты и CVV).
  9. Ждем N-ое количество дней (недель), пока Apple обработает ваш запрос.
  10. Получаем письмо, в котором вас поздравляют с тем, что вы зарегистрировались в программе и лишились ста баксов. Ура!

После удачного прохождения квеста у вас будет доступ к http://developer.apple.com/membercenter/ . Пожалуй, обзор той страницы либо требует отдельной статьи, либо требует поиска в гугл/яндекс.

Ну вот, друзья, перейдем к оставшимся на повестке дня вопросам.

Необходимое оборудование для комфортной разработки

Если вы серьезно решили начать разрабатывать приложения под iOS, то крайне рекомендую сразу приобрести компьютер/laptop с MacOs. Наиболее дешевый вариант – Mac Mini, или что-нибудь б/у. Если вы студент и собираетесь таксать оборудование с собой – Macbook Air. Если у вас много денег и вы хотите мощный универсальный ноутбук – для игр, сложных вычислительных задач и программирования – Macbook Pro. Если вы хотите взять настольный компьютер – iMac или Mac Mini. Для разработки – вам подойдет любой компьютер в любой существующей конфигурации. Размер экрана – на ваше усмотрение. Я вот лично сейчас сижу за Macbook 13” и Mac Mini 17”. Меня устраивают оба дисплея. Если что, то можно всегда подключить внешний монитор к ноутбуку.

Не забываем о том, вам рано или поздно понадобится iPhone, iPod или iPad. Не надо доверяться только iOS-симулятору, который распространяется в одном пакете с Xcode. Всегда тестируйте релизные версии на девайсах. Или же – ищите тестеров (ответственных и добросовестных).

Если вы не готовы потратить столько денег на новое оборудование, то можно попробовать поставить хакинтош на ваш компьютер.

Вечный вопрос: Android или iOS?

Возможно, что данный вопрос надо было задать в самом начале, однако он все же расположился в конце данной статьи. Вы уверены, что хотите попробовать себя в область мобильной разработки, но не знаете какую мобильную платформу выбрать? Я не смогу ответить на этот вопрос за вас. Но я знаю одно – если вы хотите разрабатывать приложения под iOS, то вы должны любить продукцию Apple и операционную систему iOS и MacOs. Вы спросите – почему это? Ответ прост – вы должны любить свое дело, вы должны творить. Только тогда вы сможете разработать поистинне классный и полезный продукт. Только в этом случае вы будете изучать с наслаждением Objective-C и iOS. Я считаю, что это очень важно. Если вы обладаете схожими чувствами к продукции Apple, то смело идите в область iOS-разработок. Если вы думаете – я вот знаю Java, но не знаю Objective-C, однако мне больше нравится iOS, чем AndroidOs – то выбирайте iOS. Нет, ну а что вы ожидали, что я начну хвалить Android OS?

Также мне нравится iOS-сфера своим магазином приложений. Там все красиво, правильно и там очень жесткая модерация приложений. Та свалка приложений, которая сейчас в Andoroid OS – это просто ужас, как для пользователей, так и достойных разработчиков.

Что нужно сделать сегодня?

Сегодня вы должны решить: когда вы начнете разрабатывать приложения, хватит ли вам текущего опыта для изучения
Objective

C
, есть ли у вас необходимое оборудование, а самое главное желание?

Проверка готовности

Перейдем от теории к практике. Для практического занятия вам понадобится Xcode 4.2 с iOS SDK, желательно сертификат разработчика, знание С, С++, Java или Objective-C (ну может знания и в других языках подойдут) и, наконец, желание начать писать приложения под iOS. Если вам чего-то не хватает, например, сертификата разработчика, то статья будет актуальна для вас все равно. В любом случае, мне кажется, каждому пользователю iOS-девайса должно быть интересно взглянуть на внутреннюю кухню разработки приложений.

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

Поехали. Нажимаем на иконку Xcode. Откроется окошко подобного содержания:

Выбираем пункт “Create a new Xcode project”. В следующем окне выбираем тип проекта. Нам нужен: “iOS – Application – Single View Application”.

Нажимаем Next. Увидим окно следующего содержания:

Разъясню поля ввода:

  1. Product Name – Название нового проекта – можете ввести любое, но я советую использовать названия, идентичные моим, потому что я периодически буду на них ссылаться.
  2. Company Identifier – Идентификатор вашей компании – можете заполнить его как угодно.
  3. Bundle Identifier – уникальный идентификатор вашего приложения. Это поле можно будет отредактировать позднее.
  4. Class Prefix – префикс, который будет приписываться к названиям всех классов, которые вы создадите в проекте. Я оставил поле пустым (“XYZ”
    – это просто подсказка).
  5. Device Family – на какие типы устройств можно будет устанавливать проект. Можно выбрать один из трех вариантов:
    iPad
    /
    iPhone
    /
    Universal

    . Их назначение очевидно. Если вы сейчас не можете решить, нужно ли вам создавать универсальное приложение, то можете выбрать любой из других вариантов. Это можно будет исправить на любом этапе жизненного цикла ПО.
  6. Use Storyboard – это связано с созданием модели пользовательского интерфейса. Добавилось вместе с iOS5, так что при использовании этого ужаса ваше приложение можно будет установить только на устройства с осью iOS5 или выше.
  7. Use Automatic Reference Counting – это новая фишка компилятора Apple LLVM 3.0 – автоматически (почти) управляет памятью (следит за утечками, зомби и прочими ужасами). Я бы сказал, что для новичка – идеальный вариант. НО – 1) не все там уж такое автоматическое, 2) доверяете ли вы компилятору больше, чем себе?, 3) Рекомендую управлять памятью вручную.
  8. Include Unit Tests – подключить к проекту юнит-тестирование.

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

Галочку “Create local git repository for this project” не ставим. Лучше потом при необходимости подключим наш проект к репозиторию кода, если вдруг понадобится.

Нажимаем “Create” и видим новое окно, окно нашего рабочего пространства:

И так, у нас создан проект, сгенерировались какие-то файлы, какие-то окошки открыты.

Ознакомимся с файлами в навигационном меню:

  • файлы с суффиксом “.h” – это хэдеры, там, где мы будем давать описание классов
  • файлы с суффиксом “.m” – это implementation файлы, там, где мы будем реализовывать ранее описанные классы
  • файлы с суффиксом “.xib” – это файлы, в которых описывается интерфейс одного окна приложения

Компляция проекта

Компиляция —

  1. трансляция программы на язык, близкий к машинному, и последующая её компоновка.
  2. трансляция программы, составленной на исходном языке, в объектный модуль (осуществляется компилятором) и последующая её компоновка в готовый к использованию программный модуль.
  3. трансляция программы, составленной на исходном языке, и последующая её компоновка в программу на некоем машинонезависимом низкоуровневом интерпретируемом коде (как например в случае языка Java).

Процесс компиляции состоит из следующих фаз:

  1. Лексический анализ. На этой фазе последовательность символов исходного файла преобразуется в последовательность лексем.
  2. Синтаксический (грамматический) анализ. Последовательность лексем преобразуется в древо разбора.
  3. Семантический анализ. Древо разбора обрабатывается с целью установления его семантики (смысла) — например, привязка идентификаторов к их определениям, типам данных, проверка совместимости типов данных, определение результирующих типов данных выражений и т. д. Результат обычно называется «промежуточным представлением/кодом», и может быть дополненным древом разбора, новым древом, абстрактным набором команд или чем-то ещё, удобным для дальнейшей обработки.
  4. Оптимизация. Удаляются избыточные команды и упрощается (где это возможно) код с сохранением его смысла, то есть реализуемого им алгоритма (в том числе предвычисляются (то есть вычисляются на фазе трансляции) выражения, результаты которых практически являются константами). Оптимизация может быть на разных уровнях и этапах — например, над промежуточным кодом или над конечным машинным кодом.
  5. Генерация кода. Из промежуточного представления порождается код на целевом языке (в том числе выполняется компоновка программы).

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

И так, когда вы нажимаете “Build project”, то сначала выполняется лексический анализ вашего кода, если он успешен, то синтаксический анализ, и затем семантический анализ. В Xcode все время работает некий легковесный процесс, который выполняет эту функцию, тем самым подсказывая разработчику “на лету”
. Например, если вы не поставили “;” или вдруг приравняли int некую строчку символов, то Xcode подчеркнет строку красной волнистой линией.

Запуск на симуляторе

И так, попробуем запустить наш проект, для которого мы еще не написали ни строчки кода лично.

Для этого обратимся к меню: Схема компиляции
(ей присвоен зеленый цвет на моем скриншоте). Схема – это некая конфигурация проекта. Xcode генерирует ее автоматически. Нажимаем на строку, которая стоит справа от названия проекта (имя девайса), если девайс не подключен, то будет написано “iOS Device”. У вас появится выпадающий список следующего содержания:

В этом списке мы выбираем то, куда будет установлен наш проект: это может быть либо ваш девайс, либо симулятор. Если вы выбрали тип приложения универсальный, то можно будет выбрать тип симулятора: iPhone или iPad. Также можно для симуляторов выбрать версию операционной системы (важно протестировать проект на всех версиях iOS, на которые приложение можно установить). Раз заговорили о минимальной версии iOS, то надо и упомянуть, как определить ее минимальную версию? Все просто – если вы используете методы (фичи), которые были добавлены в версии iOS, например, 4.0
, то планка минимальной требуемой операционной системы поднимается до 4.0
. Давайте опустим планку до 4.0
с 5.0
. Для этого обратимся к меню: “Deployment target” (выделено синим цветом на моем рисунке). Из выпадающего списка выбираем 4.0
. Теперь опять вернемся к меню: Схема компиляции
. Наш список теперь выглядит следующим образом:

Выберем “iPhone 4.0 Simulator”. И, наконец, нажимаем на стрелочку, под которой написано “Run”. В “Информационном табло”
мы увидим процесс компиляции. После того, как все удачно соберется, у нас откроется окно симулятора iPhone:

Теперь быстро пробежимся по возможностям симулятора.

  • Можно симулировать iPhone, iPhone Retina, iPad.
  • Симулировать различные версии iOS.
  • Снимать скриншоты.
  • Крутить экраны (портретный и ландшафтный режимы)
  • Трясануть
  • Симулировать нехватку памяти.
  • Симулировать сервер печати
  • Геолокационное положение
  • Мультитач жесты(максимум 2 пальца)
  • Прочее

Ко всем этому можно получить доступ из меню программы симулятора:

Пару слов о симуляторе. На симулятор можно устанавливать приложения только через Xcode, их можно удалять прямо из симулятора (как и на реальном устройстве), он поддерживает многозадачность. Но и обладает многими ограничениями, например, нельзя устанавливать сертификат в локальное хранилище сертификатов приложения. Но самый главный недостаток то, что это СИМУЛЯТОР
, а не ЭМУЛЯТОР
. То есть он всего лишь делает вид, что является iOS-девайсом, просто отрисовывая похожий интерфейс (программный уровень). А вот эмулятор как раз выполняет в точности то, что будет выполнять девайс (на физическом уровне). Какой надо сделать вывод? Обязательно тестируйте на реальном девайсе. У меня бывали случаи, когда на девайсе работает, а на симуляторе нет, и наоборот.

Выводим “Hello, world!”.

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

Данная глава написана в память о Деннисе Ритчи,
создателе языка программирования
C
и ключевой разработчик операционной системы
UNIX
, а также как соавтор книги «Язык программирования
C
»
.

Цель главы – украсить наш пустой серый экран. Отлично, поехали. Возвращаемся в Xcode, выбираем в навигационном меню “ViewController_iPhone.xib”. Далее выбираем “View” в появившемся списке. Справа выбираем “Attributes Inspector”. Вот как окно выглядит у меня плюс дополнительные комментарии:

Теперь добавим метку UILabel. UILabel – это название класса в iOS SDK, который позволяет отобразить нередактируемый текст на экране. Вообще, все классы, позволяющие что-то отобразить, имеют префикс UI
: UIView, UITableView, UITextView, UIButton,…. В окне “Доступные объекты для отображения” ищем строку с именем Label. Как-то только нашли, то нажимаем на нее и перетаскиваем на наш текущий вид экрана.

Синие пунктирные линии помогут вам отцентрировать/откалибровать относительное положение метки. И так, выбираем Label в списке отображаемых объектов, если еще не выбрано, и видим в свойствах пункт: Text. Давайте впишем туда “Hello, World!” и нажмем Enter
. Вот у нас изменился текст метки и сжался. Давайте это исправим. В категории свойств
выберем “линейку”
“Size Inspector”. Там есть поля:

  • x и y – координаты верхнего левого угла метки относительно родительского вида, то есть того вида, куда мы поместили метку – это вид View в нашем случае.
  • width и height – соответственно ширина и высота редактируемого объекта.

Вы можете попробовать редактировать эти значения и проследить изменения. Также редактировать положение и размер можно непосредственное двигая метку (текст) и дергая ее каркас за различные “точки”
.

Потратьте еще минут 15-25 и поиграйтесь с различными свойствами в различных категориях:

  1. Выравнивание текста
  2. Размер шрифта
  3. Цвет, тень текста
  4. и др.

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

Какие стандартные view есть в iOS.

В предыдущем пункте я затронул названия некоторых классов, отвечающих за интерфейс. Собственно приставка UI
и означает User Interface. Тут я приведу, возможно не полный, список доступных типов view. Во-первых, все описанные ниже классы наследуются от UIView, т.е. обладают теми же свойствами и методами. Во-вторых, вы всегда можете создать собственный кастомный view. Список ниже:

1) UILabel – метка – основное назначение: отображение одной или нескольких нередактируемых строк текста.

2) UIButton – кнопка – основное назначение: обычная кнопка, посылает сигналы объектам, уведомляя о том, что на нее нажали

3) UISegmentedControl – кнопка с сегментами – основное назначение: кнопка с несколькими активными частями, можно определить, на какую нажали

4) UITextField – текстовое поле ввода – основное назначение: поле для ввода текста пользователем

5) UISlider – слайдер – основное назначение: обычный слайдер, помогает более интуитивно изменять какие-либо настройки

6) UISwitch – On/Off переключатель – основное назначение: имеет два состояни – включен или выключен, назначение очевидно

7) UIActivityIndicatorView – индикатор активности – основное назначение: обычно используется, чтобы сообщить пользователю о том, что приложение либо скачивает данные, либо просто выполняет какие-то вычисления

8) UIProgressView – индикатор состояния (прогресса) – основное назначение: отображать состояние завершенности чего-либо

9) UIPageControl – переключение между страницами – основное назначение: отображение количества страниц, отображение текущей страницы

10) UIStepper (>= iOS 5)- +/- пошаговый контроллер – основное назначение: тоже очевидно

11) UITableView – таблица – основное назначение: отображение таблицы, пожалуй, самый популярный элемент

12) UITableViewCell – ячейка таблицы – основное назначение: отображение строки в таблице, обычно кастомизируется

13) UIImageView – изображение – основное назначение: отображение картинки или изображения

14) UITextView – текстовое поле (скроллируемое) – основное назначение: отображение большого объема текста, который можно прокрутить.

15) UIWebView – web – основное назначение: отображение web-страницы

16) UIMapView – карты – основное назначение: отображение карты

17) UIScrollView – скроллируемый вид – основное назначение: отображение нескольких view, которые не помещаются на одном экране

18) UIDatePicker – вид выбора даты – основное назначение: идеальный вариант для ввода даты

19) UIPickerView – вид выбора барабанный – основное назначение: альтернатива таблице при выборе какой-либо опции

20) UIView – просто вид – основное назначение: очевидно

21) UINavigationBar – навигационная панель – основное назначение: панель, в которую выводится заголовок экрана и дополнительные кнопки управления

22) UINavigationItem – элементы UINavigationBar – основное назначение: очевидно

23) UIToolbar – тулбар – основное назначение: отображение панели, на которую помещаются кнопки для управления приложением

24) UIBarButtonItem – элементы тулбара – основное назначение: очевидно

25) UIBarButtonItem (fixed and flexible space) – элементы тулбара особенные – основное назначение: изменяем расстояние между кнопками на тулбаре

26) UITabBar – таббар – основное назначение: помогает переключаться между различными несвязанными с друг другом экранами

27) UITabBarItem – элемент таббара – основное назначение: очевидно

Эта статья открывает цикл, предназначенный для новичков. Смею надеяться, что уровень подачи материала позволит разобраться в нем даже людям не знакомым с программированием. Начнем наше повествование с небольшого лирического отступления. Приложения для iPhone и iPad пишутся на языке Objective-C. Этот язык широко использовался в компании NeXT и пришел в Apple после возвращения Стива Джобса. В настоящее время Objective-C является основным языком разработки OS X и iOS приложений.

Для того, чтобы начать программировать под iOS, Вам понадобится компьютер Mac на базе процессора Intel и среда разработки XCode. Если у Вас нет Mac-а — не беда. Возможно Вам подойдет один из описанных методов решения этой проблемы. Мы будем ориентироваться на XCode 4 и iOS5.

Установка XCode

Для начала нам придется зарегистрироваться наApple-овском dev сайте. Перейдите по ссылке и нажмите на register. Щелкните кнопку Get Started и пройдите процесс регистрации. Там все довольно просто, поэтому я не буду останавливаться на этом моменте. После регистрации Вам пришлют письмо с вашим Apple ID. Вернитесь на страницу Apple Developers и используйте его для входа в защищенную зону. В разделе DevCenters щелкните по ссылке iOS. Как видите, Apple предлагает вам кучу документации, исходников и уроков. На этой странице есть все, что нужно для начала разработки под iOS. В самом низу есть кнопка Download Xcode, которую нужно нажать. После загрузки установите Xcode на свой Mac.

Знакомство с интерфейсом XCode 4

Для запуска Xcode перейдите на свой главный диск и щелкнете по developer>Applications.

После того, как Xcode запустится, выберите пункт меню File>New Project, затем «Single View Application» и введите в качестве имени проекта (Product Name) HelloWorld. В результате у вас должно отображаться что-то вроде этого

Весь Ваш код и ресурсы разложены по специальным папкам, которые располагаются в левой части окна Xcode. Панель называется «Project Navigator» и содержит все элементы Вашей программы. Файлы с исходным кодом имеют расширение «.h» и «.m». Если вы щелкните по такому файлу, то в правой части Xcode откроется редактор с кодом.

Не будем пока останавливаться на коде. Мы вернемся к этому вопросу чуть позже. Если Вы посмотрите на верхнюю часть экрана, то увидите несколько кнопок, связанных с Вашим проектом. Изучим эту панель подробнее.

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

С помощью кнопки Schemr можно выбрать целевую платформу, где будет запускаться ваше приложение. Здесь вы можете выбрать какой-нибудь simulator, и отлаживать программу на компьютере, или запустить ее на своем iPhone (iOS Device), если Вы заплатили сбор в $99. Единственное преимущество, которое дает этот платеж — возможность запускать программу на реальном устройстве и размещать ее в App Store. Я бы не рекомендовал Вам тратиться до того момента, пока у Вас не будет готова нормальная программа.

Breakpoints (точки остановки) — очень полезная штука. С помощью этой кнопки вы можете отметить в исходном коде строки, и когда в ходе выполнения программы дело дойдет до помеченной строки, программа приостановится, и вы сможете посмотреть состояние переменных. Это очень мощный и повсеместно используемый инструмент.

Нажмите кнопку «Run». Вы увидите окно эмулятора со своим проектом. Как видите, пока он не блещет функциональностью — это просто заготовка.

Программирование для iPhone -Первый шаг

Довольно ходить вокруг да около, давайте что-нибудь закодим. В окне Project Navigator содержатся файлы с исходным кодом. Щелкните по какому-нибудь.m файлу. Обратите внимание, некоторые строки окрашены в зеленый цвет — это комментарии, которые выполняют роль шпаргалок. Чтобы не запутаться в коде, программист может оставлять себе подсказки и пояснения. Для обозначения комментариев в языке C используется сочетание слешей //. Все, что находится в строке правее этих знаков, считается комментарием. Если Вы хотите написать многострочный комментарий, то можете использовать сочетания /* и */ для обозначения начала и конца многострочного комментария.

Прежде чем приступить к написанию кода приложения, я должен а пальцах объяснить вам несколько концепций: ООП (объектно-ориентированное программирование), MVC (Modal View Controller), «.h» и «.m» файлы. Итак… объектно-ориентированное программирование предполагает разделение всего кода на так называемые объекты, внутри которых хранятся данные и обрабатывающие их команды. Объект в Objective-C состоит из двух файлов.h и.m. Файл.h называется заголовком (header) в нем содержится «набросок» объекта — перечисляются все данные и названия блоков команд (методов), содержащихся в объекте. Файл.m называется файлом реализации (implementation) и в нем подробно расписывается все то, что указано в заголовке именно здесь программируется вся логика программы.

MVC (Model View Controller) — это нечто, разделяющее код и интерфейс, который видит пользователь. Model — это данные пользователя и данные, которые вы показываете пользователю. View — это пользовательский интерфейс и код, который обеспечивает связь между View и Model. Концепция MVC может сейчас показаться Вам слишком заумной, однако со временем Вы увидите, что этот подход действительно упрощает жизнь программиста. Эта концепция подразумевает следующий порядок работы: программист отдельно создает шаблон дизайна приложения, где размещает все кнопки, текстовые поля и прочую важную ерунду, и отдельно пишет программ. Потом он показывает XCode какой метод(блок кода) должен вызываться в ответ на то или иное действие пользователя и какое название имеет тот или иной элемент управления в тексте программе.

Разрабатываем дизайн программы для iPhone

Давайте начнем создание нашего приложения с разработки дизайна. Щелкните в окне Project Navigator по строке MainStoryboard_iPhone.storyboard. В результате XCode запустит редактор интерфейса.

В правом нижнем углу Вы видите список объектов (Library), которые можно использовать в своем интерфейсе, в центральной части отображается окно View, которое и представляет макет интерфейса вашей программы. Правое верхнее окно имеет несколько режимов, которые переключаются с помощью расположенных над окном иконок. На рисунке показан режим Atribute Inspector. Здесь можно изменять различные атрибуты объектов, составляющих ваш интерфейс.

Перетащим из окна Library объект Label на наш макет окна. С помощью мышки изменим размер объекта, как показано на экране ниже. В инспекторе отображаются свойства объекта Label. Давайте отцентрируем текст, щелкнув по соответствующей иконке в строке Layout.

Удалим текст в поле Text (там было написано слово Label) и введем там “Some String”.

Аналогичным образом добавьте на макет кнопку (объект Button)

Итак, мы разработали дизайн нашего приложения. Ничего сложного можете щелкнуть кнопку Run и посмотреть на работу своей программы в окне эмулятора.

Начинаем кодить

Итак, у нас есть два визуальных компонента размещенных на макете. Мы хотим чтобы при нажатии на кнопку менялся текст в строке. Чтобы реализовать эту задумку нам понадобится из кода программы обращаться к стороке (объект Label) и вызывать метод(блок кода) при нажатии на кнопку.

Щелкните по файлу «ViewController.h» в панели слева. Мы собираемся описать IBOutlet. IBOutlet соединяет наш код с визуальным объектом, например с надписью (label) или кнопкой (button). Приведите код в файле ViewController.h к виду

#import

@
interface
ViewController:
UIViewController{

IBOutlet UILabel*
label;
//присвоим нашей строке имя Label

}

//это заголовок метода, который будет

//вызываться в ответ на нажатие кнопки


(IBAction)
buttonClick:
(id)
sender;

@
end

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

Итак, мы сказали, что будем называть строку с текстом label и что в ответ на действие пользователя будет вызываться метод buttonClick. Давайте напишем код этого метода. Переключимся на файл ViewController.m в дереве проектов. После строки@implementation…
добавим код


(IBAction)
buttonClick:
(id)
sender{

label.
text=
@
”Hello from Mobilab.
ru”;

}

Примечание, если Вы скопировали этот код, то вероятно при запуске программы у Вас возникнет ошибка, скорее всего проблема в ковычках. Удалите их и введите с клавиатуры.

Давайте разберемся, что мы тут видим. Мы обращаемся к объекту label — строке текста на экране. Поскольку это объект, у него внутри есть разные данные (которые в ООП также называют свойствами объекта) и методы к которым можно обратиться, поставив точку после имени объекта. Свойство text отвечает за содержащийся внутри строки текст..

Мы завершили кодирование, осталось связать label и buttonClick с элементами внутри макета дизайна. Щелкните в окне Project Navigator по строке MainStoryboard_iPhone.storyboard, чтобы переключиться в конструктор интерфейса. Зетем щелкните по иконке “View controller”. Переключитесь на режим connections в инспекторе (последняя иконка). Посмотрите, в инспекторе в области Outlets появилась строка label. Это то название, которое мы указали в файле ViewController.h. Щелкните по кружочку в правой части строки label и перетащите его на строку с текстом Some Text в макете дизайна.

Аналогичную операцию проделайте с кнопкой. Щелкните по кнопке с кружочком в группе “Received Actions”, потом по buttonClick и перетащите ее на кнопку в макете. В результате раскроется контекстное меню, с помощью которого можно выбрать момент вызова метода. Можно, например, вызывать код, когда пользователь нажмет кнопку, можно когда отпустит. Там много вариантов. Выберите «Touch up Inside».

Вот и все! Сохраняйте проект и щелкайте по кнопке «Run» на панели сверху. Если Вы Все сделали правильно, то должен запуститься эмулятор с Вашей программой. Щелкните по кнопке. Текст в строке должен измениться. Вот и все. С первым уроком покончено

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

Язык программирования

Чтобы писать программы для определенной платформы, нужно использовать конкретный язык программирования. Разработка приложений для iOS и Android различается. Если у платформы от «Гугла» выбирать необходимо язык Java, то для iOS выбор стоит между Objective-C и Swift. Длительное время разработка под платформу iOS велась только при помощи языка программирования Objective-C. Несмотря на то что ему много лет, он все еще развивается и используется большим числом разработчиков. Но его минус — это высокий порог вхождения.

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

Что понадобится для начала

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

  • компьютер или ноутбук с операционной системой OSX на борту;
  • среду разработки Xcode, которая является бесплатной.

Данный набор дает возможность запускать приложения в специальном симуляторе прямо на компьютере. Но нужно иметь в виду, что в будущем, возможно, нужно будет заплатить 99 долларов за то, чтобы получить годовую подписку в программе разработчиков. После оплаты появится возможность:

  • запускать разработанные программы не в симуляторе, а на настоящих устройствах;
  • размещать приложения в магазине App Store;
  • загружать новые версии среды разработки и iOS.

В новых версиях Xcode появился такой элемент, как «песочница», названный Playground. Здесь разработчик может поэкспериментировать с новым языком программирования.

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

С чего начинается разработка приложений для iOS и Android? Обучение происходит на практике. Поэтому начинать надо с нее. Много теории — это не всегда хорошо. Ведь если человек прочтет от корки до корки десять он не станет. Нужно действовать.

Playground

Данная «песочница» — это замечательное окружение для изучения языка программирования. Как она выглядит? Пользователь вводит строчку программного кода и сразу же видит результат выполнения. После того как станет понятно, что написанный фрагмент работает так, как нужно, его можно просто перенести в проект. При помощи «песочницы» можно решить такие задачи, как:

  • освоение синтаксиса языка программирования;
  • улучшение навыков программирования при помощи экспериментов с новыми API;
  • осуществление простых арифметических вычислений;
  • разработка нового алгоритма и наблюдение за каждым его шагом.

Разработка приложений для iOS: с чего начать

Теория — это, конечно, хорошо, но, как говорилось ранее, нужна практика. Для того чтобы познакомиться с «песочницей», нужно запустить среду разработки Xcode. После запуска пользователь может видеть окно, в котором предлагается создать новый проект или же запустить Playground. Нужен второй пункт. Теперь необходимо придумать имя и сохранить «песочницу» в любое удобное место на компьютере. Кстати, разработка приложений для iOS на Windows тоже возможна, но тогда потребуется решить большое число проблем. Это и установка пиратской операционной системы, и правка важных файлов, и множество ошибок и вылетов.

После сохранения будет запущен тот самый Playground, который нужен.

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

Для начала можно попробовать написать следующее:

for var y = 0; y

println (“result: (z)”)

После этого «песочница» изменит свой вид. В столбце справа (панель результатов) показаны значения для каждой строки, которые получаются после выполнения. Также в правом столбце можно включить отображение временной панели, которая дает возможность проследить изменения во времени выбранного выражения. Здесь же отображается консольный вывод с текстом, который выводился бы программой.

Комментирование кода

Разработка приложений для iOS, как и для других платформ, не обходится без комментариев, которые нужны для того, чтобы разработчику было легче ориентироваться в коде. Комментарии — это строки, игнорируемые при выполнении программы. Они могут быть как однострочными, так и многострочными.

Переменные

Итак, приложения пишутся на языке программирования. Базу любого языка составляют переменные. Разработка приложений для iOS и Android без использования переменных невозможна. Как понятно из названия, это контейнер, в котором содержится изменяемое значение. Каждая переменная должна обладать уникальным именем и может содержать в себе как числовые, так и текстовые значения. В языке программирования Swift переменные определяются при помощи слов var и let. Во втором случае переменная не может меняться и должна быть проинициализирована при объявлении. В первом случае переменная инициализируется непосредственно перед использованием.

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

Вывод результатов

Результат выполнения программы выводится в консоль. Что это такое? Это то, что обеспечивает взаимодействие пользователя с компьютером. Так, консолью вывода раньше называли монитор, а консолью ввода — клавиатуру. Сейчас значение терминов немного изменилось. Так называют программное окно, предназначенное для ввода и вывода команд. Разработка приложений для iOS нередко требует вывода каких-то данных. Для этого в языке Swift предусмотрены команды print и println. Первая отличается от второй тем, что автоматически начинается с новой строки.

Функции

Следующее базовое понятие в программировании — функции. Это некая последовательность действий, которые выполняют конкретную задачу. Каждая функция способна принимать какие-то значения, а также возвращать результат. Для использования этой конструкции ее необходимо сначала объявить при помощи ключевого слова func. После него указывается имя, а также круглые скобки. Если должно быть возвращено какое-либо значение, то после скобок указывается его тип. Если возвращаемого значения нет, то тип можно не указывать или же указать «пустой» тип — void. В круглых скобках находятся значения, которые функция принимает. Для вызова функции указывают ее имя и значения для аргументов.

Можно сделать так, чтобы имя параметра при вызове функции было обязательно указано. Для этого его обрамляют символом «решетка».

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

Что теперь?

Итак, как видно из вышесказанного, разработка приложений для iOS своими руками вполне может оказаться по силам каждому. Главное — выучить основы языка программирования, познакомиться со средой разработки и очень много и часто практиковаться. Именно практика помогает добиться значительного прогресса. А ведь описанное здесь — это только начало. Дальше в мире программирования будет много интересного, сложного, увлекательного. Это поможет всегда держать мозг в тонусе, создавать что-то новое и неплохо зарабатывать. Ведь техника от Apple используется во всем мире. Поэтому ваше приложение смогут оценить миллионы людей.

Даже если вы опытный программист – часто возникает желание выучить (или хотя бы ознакомиться) с новыми языками или подтянуть знания в старых. За компьютером этим, как правило, заниматься некогда. То ли дело вечерком, полистать на любимом iPhone или iPad…

Предлагаем вам небольшой перечень книг и приложений для изучения разных языков программирования на iOS.

itReads

Специализированный магазин электронных ИТ-книг. Собраны тысячи лучших книг о программировании, стартапах, бизнесе, управлении проектами, кодинге.

Новинки книг будут поступать в магазин автоматически.

StartCode IT

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

Тесты и больше 60 практических заданий.

Python Tutorial

Приложение для тех, кто хочет изучить этот популярный и очень интересный язык. В приложении собраны уроки для начинающих, курс по Python 3.4, руководство по разработке игр.

Требуется iOS 8.0 или более поздняя версия. Приложение совместимо с iPhone, iPad и iPod touch.

Lrn

HTML, CSS, Javascript, Ruby, Python – вот языки, которые вы можете выучить с помощью этого приложения. Основные понятия, которые пригодятся не только тем, кто хочет быть веб-разработчиком, но и тем, кто хочет быть немножко круче остальных пользователей сети.

Приложение на английском языке.

Требуется iOS 7.0 или более поздняя версия. Приложение совместимо с iPhone, iPad и iPod touch.

Learn Python

Еще одно приложение для изучения языка Python. Подойдет как для новичков, которые хотят постичь азы, так и для тех, кто хочет углубить свои знания.

Приложение на английском языке.

Требуется iOS 8.0 или более поздняя версия. Приложение совместимо с iPhone, iPad и iPod touch.

Swifty

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

Требуется iOS 7.0 или более поздняя версия. Приложение совместимо с iPhone, iPad и iPod touch.

Ну что-же, пришло время написать нам свою первую программу для нашего iPhone. Если вы еще не поставили себе XCode + iPhone SDK — то вам . И так, XCode у нас стоит и настроен, начнем?

Для начала научимся самому простому. Создадим программу, в которой будет одно текстовое поле в которое будем записывать наше имя и одну кнопку, по нажатию на которую наше имя будет записываться в приветствие. Выглядеть наша первая программа будет так:

Создаем наш первый и надеюсь не последний проект:

Далее нас спросит какой тип приложения создавать. Слева в панели выбираем iPhone OS -> Application
а в центральном окне выбираем тип проекта View-based Application
. Назовем нашу первую программу, допустим, FirstApp

В результате у нас создается проект с уже созданным контроллером (первым окном нашей программы)

Главное окно проекта выглядит вот так:

Xcode создал для нас первый контроллер, это два файла c названиями FirstAppViewController.h
и FirstAppViewController.m

Файл FirstAppViewController.h
выступает как-бы заголовком (оттуда и расширение файла.h от слова header) В нем мы будем оглашать переменные и методы которыми будем пользоваться в главном файле FirstAppViewController.m

И так, открываем файл FirstAppViewController.h
и создадим два указателя:

IBOutlet UILabel *username;

Первая переменная username — это текстовая метка, в которую мы будем записывать наше имя. nikField — это текстовое поле, откуда мы будем читать наше имя.

Записывать это нужно в блоке @interface firstAppViewController: UIViewController { }

Еще создадим метод, который будем вызывать при нажатии на кнопку, для того чтобы представиться. Назовем метод setNik:

— (IBAction)setNik;

В итоге, наш файл FirstAppViewController.h
должен выглядеть так:

#import @interface firstAppViewController: UIViewController {

IBOutlet UILabel *username;

IBOutlet UITextField *nikField;

}

— (IBAction)setNik;

@end

Теперь, перейдем в файл FirstAppViewController.m

Добавим сюда наш метод setNik. Писать нужно после строчки @implementation firstAppViewController

— (IBAction)setNik{

username.text = nikField.text;

}

Тут мы прописываем, что при выполнении этого метода в текстовую метку username
будет записан текст из поля nikField

Еще нам нужно освободить память от этих указателей после того как мы их используем. Делается это в методе под названием dealoc

— (void)dealloc {

;

;

;

}

Просто добавляем все указатели, которые использовали, вот в таком формате:
;

Теперь, открываем файл интерфейса FirstAppViewController.xib
Он запускается в редакторе интерфейсов Interface Builder.

Из библиотеки компонентов перетаскиваем нужные нам компоненты в окно нашей программы и расставляем так как удобно. Дальше в маленьком окне выбираем File’s Owner и нажимаем Command+2 что переносит нас в меню Connections inspector. Видим там список наших указателей, которые мы уже прописывали, а справа от них пустые кружечки. Клацаем на пустой кружочек возле указателя nikField и не отпуская тянем к текстовому полю. Когда мы подводим к ниму указатель мыши, он обводится прямоугольником и отпускаем. Таким образом, мы привязали это поле к указателю nikField. Теперь сделаем так же с указателем username и перетащим его на тот текст, где хотим видеть наш ник (у меня на картинке это текст %username%). Еще чуть ниже видим наш метод setNik и связываем его с нашей кнопкой. Но когда вы поднесете к кнопке и отпустите, то выпадет контекстное меню из которого выберите Touch Up Inside. Это означает, что этот метод сработает когда мы нажмем и отпустим кнопку. То что нам и нужно:)

Ну что, сохраняем, переходим обратно в Xcode и нажимаем Build & Run. Урааа, наша первая программа запустилась:) Нажмем в текстовое поле, появляется клавиатура, пишем имя. Но в нашей программе еще не хватает одного маленького штриха. Это чтобы убиралась клавиатура по нажатию на кнопку Done, когда мы закончили вводить наше имя.

Для этого опять включимся в конструктор интерфейсов, нажмем на нашу кнопку. Нажмем Command+1 и найдем там блок Text Input Traits. В нем есть несколько выпадающих списков, но нас интересует только самый нижний: Return Key. Выбираем со списка Done и в низу блока ставим галочку возле Auto-enable Return Key. Дальше мереходим в Command+2 Connections Inspector и видем там слово delegate
. Жмем на кружек возле него и тяним к блоку File’s Owner

Теперь возвращаемся в наш файл FirstAppViewController.m После нашего метода setNik добавляем еще такой код:

— (BOOL)textFieldShouldReturn:(UITextField *)theTextField {

;

return YES;

}

Сохраняем и пробуем запустить (можно использовать комбинацию Command+R) Пробуем написать наше имя в текстовом поле. При написании появляется кнопка Done по нажатию на какую закрывается клавиатура. Теперь жмем на нашу кнопку и вуа-ля, программа с нами здоровается:)

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

Вот вам еще линк на архив проекта Можно скачать, включить посмотреть если у кого-то что не получилось. Ну а если есть вопросы — то пишите в комментариях.

1. Создание вашего первого приложения для iPhone

Глава 1. Создание вашего первого приложения для iPhone

У вас есть идея, которая приведет к славе и богатству в iTunes App Store. Вы решили написать приложение для iPhone. Первая и самая важная задача — научиться пользоваться инструментами, используемыми для создания ваших продуктов. Китайская пословица гласит: «Путешествие — награда», и вся эта глава посвящена путешествию. На следующих страницах вы познакомитесь со всем процессом разработки приложения от начала до конца.Вы узнаете, как настроить необходимое программное обеспечение, и попробуете свои силы в создании приложения.

Но какое приложение? Если вы быстро выполните поиск в App Store, вы не найдете недостатка в фонариках. Для многих начинающих разработчиков это простое приложение — обряд посвящения, так что теперь у вас есть шанс присоединиться к этой знаменитой компании. Как только вы увидите, как легко создать собственное приложение, вы удивитесь, почему люди платят за них 99 центов в iTunes!

Вы не можете создать что-либо, в том числе приложение для iPhone, без инструментов.К счастью, вы можете найти все необходимое на своем Mac или скачать бесплатно. В частности, вам необходимо загрузить и установить программное обеспечение для разработки Xcode и iPhone Software Development Kit (SDK) на свой Mac. (А если у вас нет Mac, см. Рамку на следующей странице.)

И Mac, и iPhone используют богатый набор технологий, которые выдержали испытание временем. IPhone SDK построен на инфраструктуре, созданной NeXT в 1980-х годах. Эта компания, основанная Стивом Джобсом, создала революционную объектно-ориентированную операционную систему под названием NeXTSTEP.Эта влиятельная система превратилась в используемую сегодня операционную систему OS X. Узнав больше об iPhone, вы увидите, что у него много общего с Mac.

Примечание

Вы видите наследие NeXT всякий раз, когда сталкиваетесь с объектом с префиксом «NS». Эти инициалы обозначают NeXTSTEP.

Когда вы и ваш Mac будете готовы к работе, пора загрузить на жесткий диск большое количество нового программного обеспечения. Apple предоставляет инструменты разработки Xcode бесплатно, но не устанавливает их на каждый Mac, поскольку большинство потребителей никогда ими не воспользуются.

К счастью, вы можете найти инструменты Xcode прямо на установочном диске Snow Leopard. Для запуска Xcode Apple рекомендует использовать Mac на базе Intel с Leopard или Snow Leopard. Следующие шаги объясняют, как загрузить программное обеспечение на жесткий диск, где вы можете его использовать:

Примечание

Вы можете установить iPhone SDK и другие инструменты разработки на Leopard, но инструменты Snow Leopard отражают значительные улучшения по сравнению с предыдущей версией. Работа с новейшей версией Mac OS X гарантирует вам самые последние и лучшие функции.

  1. Вставьте установочный DVD в Mac и дважды щелкните его значок. В папке Optional Installs дважды щелкните файл Xcode.mpkg .

    Если дважды щелкнуть этот файл, начнется процесс установки Xcode.

  2. На начальном экране нажмите «Продолжить». Когда появится экран с лицензионным соглашением, нажмите «Продолжить», а затем — «Согласен» .

    Лицензионное соглашение является таким же юридическим, с которым вы соглашаетесь при установке программного обеспечения.Прочтите, если вам нравятся такие вещи. Когда вы закончите, следующий экран позволит вам выбрать то, что вы хотите установить, как показано на Рисунке 1-1.

    Рисунок 1-1. Установщик Xcode запускается со всеми флажками, кроме Mac OS X 10.4, выбранных для вас. Оставьте их такими. Вы можете щелкнуть имя каждого пакета, чтобы увидеть, что устанавливается: помимо ожидаемой интегрированной среды разработки (IDE), вы также найдете инструменты для мониторинга производительности и множество документации.

  3. На экране выборочной установки установите все флажки, кроме Mac OS X 10.4 включены, а затем нажмите Продолжить .

    Программа установки копирует весь Xcode с DVD на ваш жесткий диск. Этот процесс занимает несколько минут.

  4. На последнем экране вам будет предложено выбрать место для установки. Убедитесь, что он находится на том же диске, где хранятся все ваши приложения. Нажмите «Установить», чтобы запустить процесс .

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

    После того, как все будет в безопасности на вашем жестком диске, вы увидите это сообщение: «Установка прошла успешно».

  5. Нажмите «Закрыть», чтобы выйти из .

  6. На этом этапе вы можете безопасно извлечь DVD .

После завершения установки перейдите в папку Hard Drive → Developer → Applications на жестком диске и проверьте свои новые инструменты. Эта папка содержит приложения и утилиты, которые вы используете для разработки приложений для Mac и iPhone: наиболее часто вы будете использовать Xcode и Interface Builder.В родительской папке Developer также есть все сопутствующие фреймворки, библиотеки и документация для разработчиков.

Установка Xcode не включает в себя одного — iPhone SDK, необходимого для разработки приложений для вашего телефона. Для этого перейдите к следующему разделу.

Подсказка

Теперь, когда у вас есть инструменты, обслуживайте их. Apple регулярно обновляет Xcode, поэтому версия на вашем DVD Snow Leopard со временем устареет. Когда произойдут серьезные изменения, Apple отправит вам электронное письмо с напоминанием о необходимости обновления, посетив Центр разработки iPhone, как описано в следующем разделе.

Вам необходимо присоединиться к программе разработчиков iPhone, прежде чем Apple позволит вам получить iPhone SDK. Бесплатное членство дает вам доступ к инструментам, документации и форумам разработчиков через iPhone Dev Center (рис. 1-2).

Рисунок 1-2. Центр разработки для iPhone — ваш первый и лучший ресурс для разработчиков iPhone. Вы будете использовать этот сайт, чтобы загрузить и обновить свой iPhone SDK, найти образцы кода и документацию, связаться с другими разработчиками iPhone и подготовить свой продукт к продаже в iTunes.

  1. Чтобы подписаться на членство в ADC, укажите в браузере http://developer.apple.com/iphone/. Щелкните ссылку «Регистрация» в правом верхнем углу .

    Вы получаете доступ к Центру разработки iPhone, используя Apple ID. Если у вас есть учетная запись iTunes или вы сделали покупку в Apple Store, она у вас уже настроена. Используйте его при создании учетной записи разработчика и переходите к шагу 4.

    Примечание

    Если вы использовали свой Apple ID для личных вещей, таких как iTunes и семейная фотогалерея MobileMe, вы можете создать новую Apple ID для вашей учетной записи разработчика.Использование отдельного идентификатора Apple ID исключительно для деловых целей может помочь вам избежать проблем с бухгалтерским учетом и отчетностью. См. Главу 8, чтобы узнать, как ваша учетная запись разработчика и iTunes Connect влияют на ваш бизнес.

  2. Если вы настраиваете новый Apple ID, введите свое имя, контактную информацию и контрольные вопросы для восстановления пароля .

  3. Установите флажок, чтобы принять лицензионное соглашение, и нажмите «Продолжить» .

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

  4. Щелкните ссылку «Подтверждение электронной почты» и введите код, содержащийся в сообщении, чтобы завершить настройку учетной записи .

После настройки учетной записи и входа в систему вы увидите много нового контента, доступного в Центре разработки для iPhone. У вас есть доступ к отличным ресурсам, таким как видеоролики по началу работы, инструкции по программированию и образцы кода. Прямо сейчас обратите внимание на загрузку iPhone SDK.

  1. Щелкните ссылку «Загрузки», и вы увидите набор ссылок внизу страницы, как показано на рис. 1-3 .

    Эти ссылки будут обновляться по мере выпуска новых версий iPhone SDK. Выберите самый последний выпуск, который соответствует вашей версии Mac OS X. На момент написания это был «iPhone SDK 3.1.3 с Xcode 3.2.1».

    iPhone SDK — это большая загрузка: его размер может варьироваться от нескольких сотен мегабайт до более 2 ГБ. Будьте терпеливы, пока он загружается из вашего веб-браузера, проверяется и монтируется: это займет некоторое время.

    По завершении у вас будет образ диска .dmg в папке «Загрузки» и новый диск SDK для iPhone на рабочем столе, как показано на рис. 1-4.

Рисунок 1-3. Вы найдете ссылки для загрузки iPhone SDK в нижней части страницы iPhone Dev Center. Ссылки на этом рисунке относятся к версии 3.1.3, но они будут меняться по мере обновления Apple SDK. Вы можете щелкнуть ссылки «Читать меня», чтобы узнать, что нового в версии.

Рисунок 1-4. После успешной загрузки этот образ диска появится на вашем рабочем столе. Его имя, которое будет меняться с каждым новым выпуском, будет начинаться с «iphone_sdk», за которым следует номер версии и «.dmg «. Запустите программу установки, дважды щелкнув значок коробки. Файл PDF содержит информацию о выпуске, которую вы можете прочитать во время установки.

Получив образ диска iPhone SDK, вы можете начать установку:

  1. Дважды щелкните файл «iPhone SDK», чтобы начать процесс установки. Это коричнево-золотой значок прямоугольника .

  2. Нажмите «Продолжить» на экранах приветствия и лицензионного соглашения .

  3. Нажмите «Принимаю», чтобы принять лицензию .

  4. На экране «Установка» нажмите «Продолжить», чтобы установить стандартные пакеты, а затем нажмите «Установить», чтобы начать процесс установки .

  5. При необходимости введите свой пароль, чтобы можно было изменить системные файлы .

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

    В зависимости от скорости вашего Mac и размера загрузки процесс установки может занять от получаса до нескольких часов.Когда установка будет завершена, вы увидите зеленую галочку и можете нажать «Закрыть» для завершения. На этом этапе вы можете извлечь диск iPhone SDK, но сохраните файл .dmg в качестве резервной копии.

Примечание

Как и Xcode, Apple регулярно обновляет iPhone SDK. Вам нужно будет периодически возвращаться в этот iPhone Dev Center, чтобы установить последнюю версию SDK. Apple обычно выпускает новую версию вместе с новой версией прошивки iPhone.

Что ждет SDK впереди?

iPhone SDK постоянно развивается, поскольку Apple исправляет ошибки и добавляет новые функции.Вам нужно обновить среду разработки, чтобы не отставать от последних изменений. Apple обновляет iPhone SDK двумя разными способами. Первый и самый простой — это отладочный релиз. Эти выпуски просто исправляют ошибки в прошивке и не содержат никаких новых функций. В большинстве случаев вносить какие-либо изменения в приложение не требуется.

Apple предоставляет отладочные версии SDK разработчикам в тот же день, когда они делают микропрограммное обеспечение доступным для клиентов. Эти выпуски имеют номер версии из трех частей, например 2.2.1 и 3.1.3. Как только вы установите новую прошивку на свое устройство, вам необходимо обновить iPhone SDK, чтобы вы могли устанавливать и отлаживать свои приложения из Xcode. Если вы этого не сделаете, вы увидите предупреждения о том, что инструменты не поддерживают версию прошивки устройства.

Когда Apple вносит более существенные изменения в прошивку, которые повлияют на программное обеспечение разработчиков, добавляя новые функции или изменяя существующие, она публикует бета-версию iPhone SDK в Центре разработки iPhone. Только разработчики, которые заплатили за участие в Программе разработчиков iPhone, имеют доступ к этим предварительным выпускам.(Цель-C: Приложение «Гайки и болты для вашего iPhone» объясняет, как зарегистрироваться в этой программе для разработчиков.) Эти бета-версии предназначены для основных выпусков, таких как 3.0 или 4.0, или версий, таких как 3.1. Apple обычно начинает цикл бета-выпуска за три или четыре месяца до общедоступного выпуска. После начала цикла каждые пару недель он выпускает новый SDK (называемый Beta 1, Beta 2 и т. Д.). Эти бета-версии обычно также включают новую версию Xcode с улучшениями и поддержкой новой ОС iPhone, а также новую прошивку.

Имея ранний доступ к новому SDK, вы можете создавать и запускать свои приложения с новой прошивкой iPhone. Если вы старались использовать только задокументированные функции и API, у вас не должно возникнуть особых проблем: инженеры Apple очень хорошо умеют поддерживать совместимость с опубликованными интерфейсами. Во время компиляции вы можете увидеть предупреждения об устаревании, но их обычно легко исправить. Скорее всего, вы потратите период бета-тестирования на изучение новых функций и их тестирование в своем приложении.

При установке бета-версии iPhone SDK следует помнить о нескольких предостережениях. Во-первых, вы не можете использовать бета-инструменты для отправки приложения в App Store. К счастью, вы можете установить несколько версий Xcode на свой жесткий диск. Чтобы установить инструменты в отдельном месте, выполните следующие действия:

  1. Закройте симулятор iPhone, если он работает под управлением .

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

  2. Дважды щелкните значок iPhone SDK в образе диска, чтобы начать процесс установки. Согласитесь с лицензиями и выберите целевой жесткий диск .

    Вы увидите список пакетов для установки. Во втором столбце Разработчик установлен как Местоположение. Вам необходимо изменить местоположение бета-версии.

  3. Щелкните «Разработчик», а затем выберите «Другое» во всплывающем меню (см. Рисунок 1-5) .

    Откроется диалоговое окно для выбора папки.

    Рисунок 1-5. Вы можете выбрать произвольное место для установки iPhone SDK. Поскольку вы не можете использовать бета-версии iPhone SDK для создания приложения для App Store, вам нужно будет хранить две версии инструментов на жестком диске. В процессе установки щелкните значок папки «Разработчик» и выберите «Другое», чтобы выбрать место для бета-версии.

  4. Перейдите в корневой каталог жесткого диска, выбрав его имя из списка УСТРОЙСТВ. Затем нажмите кнопку «Новая папка» и введите DeveloperBeta. Нажмите «Создать», чтобы создать папку .

  5. Выберите Выбрать, чтобы использовать папку DeveloperBeta для установки .

    После того, как вы вернетесь в главное окно установки, вы увидите DeveloperBeta в качестве местоположения.

  6. Чтобы использовать бета-версию, запустите Xcode и другие инструменты с нового жесткого диска → DeveloperBeta → Папка приложений .

А теперь второе предостережение: бета-версия является конфиденциальной информацией Apple и подпадает под Соглашение о неразглашении (NDA).Эти громкие юридические слова означают, что нельзя говорить об этом публично. Вы можете обсудить новый SDK только на форумах разработчиков Apple (http://devforums.apple.com). Вы можете общаться с другими разработчиками, которые делают то же самое: узнают о новом выпуске, задавая вопросы и делясь открытиями. Инженеры Apple также участвуют в обсуждении.

NDA также означает, что вы не найдете никаких книг или других материалов, которые помогли бы вам понять изменения. Единственная информация о бета-версии исходит от самой Apple и размещается в Центре разработки iPhone.Обычно есть документ «Что нового», примечания к выпуску и список различий API. Внимательно прочтите каждый из этих документов: это отличный способ скоротать время, когда вы ждете загрузки нескольких гигабайт SDK!

Еще одним источником информации является ежегодная конференция разработчиков Apple WWDC. Бета-релизы часто совпадают с этой недельной конференцией, поэтому каждый может подробно обсудить новые функции. Конференция проходит летом в Сан-Франциско: это прекрасная возможность встретиться с коллегами-разработчиками и узнать много нового.

Теперь ваш Mac настроен для создания приложений iPhone, так что вы готовы приступить к созданию своего первого приложения. Самое приятное то, что вы не собираетесь писать код. Как можно разрабатывать без написания кода? Это возможно с помощью экономящих время шаблонов Xcode и Interface Builder.

Если вы опытный разработчик, такой способ работы может стать проблемой. Если вы привыкли работать в Visual Studio, Eclipse или какой-либо другой среде, ваше первое знакомство с Xcode может быть немного пугающим.Помимо работы над новой операционной системой, вы также будете иметь дело с новыми макетами проектов, сочетаниями клавиш и настройками. Не волнуйтесь, все инструменты, к которым вы привыкли, все еще здесь, это лишь вопрос времени, когда вы освоитесь с их версией Xcode.

В этом разделе вы пройдете все этапы создания приложения для iPhone, от создания файла проекта с помощью Xcode до его запуска в симуляторе iPhone. Вы также познакомитесь с приложением Interface Builder, которое позволяет изменять пользовательский интерфейс.

Каждому фонарику нужен список деталей

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

  1. В папке «Жесткий диск» → «Разработчик» → «Приложения» дважды щелкните значок Xcode, чтобы запустить приложение. (Он находится внизу списка.)

    Сложность в том, что Xcode не находится в вашей обычной папке Applications. Программа установки помещает его в папку Developer → Applications. Чтобы упростить возврат к Xcode позже, сохраните его значок в Dock.

  2. В Dock, удерживая клавишу Control, щелкните значок и выберите Параметры → Сохранить в Dock .

    С этого момента вы можете запустить Xcode, просто щелкнув значок Dock.

    После запуска Xcode вы увидите его окно приветствия, как показано на рисунке 1-6.

    Подсказка

    Если вы случайно закроете окно приветствия, вы можете снова открыть его, выбрав «Справка» → «Добро пожаловать в Xcode».

    Рисунок 1-6. Окно запуска Xcode. Когда вы создаете новые проекты с помощью Xcode, вы видите их в списке справа. Нажмите кнопку «Создать новый проект Xcode», чтобы запустить первое приложение для iPhone. Кнопка «Начало работы с Xcode» открывает средство просмотра документации и отображает полезный обзор Xcode. Последняя кнопка — это удобная ссылка на Центры разработки для Mac и iPhone.

  3. Нажмите большую кнопку «Создать новый проект Xcode» .

    Откроется окно «Новый проект» (рис. 1-7), в котором представлен выбор категорий шаблонов. В Xcode шаблон представляет собой предопределенный набор файлов исходного кода, библиотек, фреймворков и элементов пользовательского интерфейса, которые вы используете для создания различных стилей приложений.

    Рисунок 1-7. В окне Xcode New Project перечислены все шаблоны, которые вы можете использовать для быстрого старта. Когда вы начинаете работу с новым приложением, выберите шаблон, который лучше всего описывает стиль пользовательского интерфейса, который вам нужен.При выборе для каждого шаблона отображается краткое описание. Некоторые шаблоны даже включают параметры, например, показанный здесь «Использовать основные данные для хранения базы данных».

  4. Поскольку вы создаете приложение для iPhone, в группе iPhone OS в верхнем левом углу выберите «Приложение» и просмотрите доступные шаблоны .

    Вы можете выбрать один из следующих категорий:

    • Навигационное приложение . Эти приложения имеют интерфейс в стиле «детализации», как и приложение iPhone Mail.

    • Приложение OpenGL ES . Этот шаблон используется в играх, которые рисуют объекты в трехмерном пространстве.

    • Приложение панели вкладок . В этом стиле приложения для переключения представлений используется панель вкладок в нижней части экрана. Приложение Apple для iPod — отличный пример такого стиля пользовательского интерфейса.

    • Служебное приложение . Эти приложения обычно представляют собой простой интерфейс с видом спереди, содержащим информацию, и видом сзади для настройки информации.Встроенное приложение Погода использует эту метафору.

    • Видовые и оконные приложения . Обратитесь к этим шаблонам, когда ваше приложение объединяет элементы предыдущих четырех стилей. Думайте о них как о простых шаблонах, которые вы можете настроить под свои нужды.

    Для своего приложения Flashlight вы собираетесь использовать шаблон оконного приложения. Поскольку приложение использует только одно окно, этот базовый шаблон — все, что вам нужно. Приятным побочным эффектом использования этого настраиваемого шаблона является то, что он создает меньше файлов для проекта.Фактически, у вас есть более короткий и простой список деталей.

  5. Щелкните «Оконное приложение» и затем щелкните «Выбрать». Не устанавливайте флажок Use Core Data, поскольку фонарик не требует базы данных .

    Появится диалоговое окно сохранения файла, в котором вы можете указать имя и расположение папки вашего проекта (рис. 1-8).

    Рисунок 1-8. Для проекта Flashlight скажите Xcode создать папку с именем Flashlight внутри папки Documents.

  6. Введите Flashlight в качестве имени проекта и выберите папку Documents в нижнем всплывающем меню .

    Как показано на рис. 1-9, папка, которую вы только что создали в Finder, содержит все необходимое для создания приложения, включая основной файл проекта Flashlight.xcodeproj.

    Рисунок 1-9. Когда вы создаете проект с помощью Xcode, он создает папку с файлами, используемыми для создания вашего приложения. Самым важным из них является файл .xcodeproj — вы можете дважды щелкнуть этот файл, чтобы открыть проект в Xcode. Кроме того, поскольку вы создаете оконное приложение, Xcode запускает вас с файла с именем MainWindow.xib. Вы узнаете больше о других файлах и папках в следующих главах.

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

Подсказка

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

После того, как Xcode завершит создание нового проекта, он отобразит файлы в окне проекта, как показано на рисунке 1-10.

Рисунок 1-10. Окно проекта Xcode. Слева находятся группы и файлы проекта, а справа — редактор исходного кода.Хотя желтые значки групп выглядят как папки, они не такие, как синие значки, которые вы видите в Finder. Вы можете переименовать группу «Классы» и не влиять на папки на диске. Точно так же вы не найдете папку «Ресурсы» в Finder, но группа — отличный способ упорядочить файлы, не являющиеся исходным кодом.

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

  • Классы . Файлы в этой группе содержат фактический исходный код вашего проекта.

  • Ресурсы . Файлы пользовательского интерфейса, графика и файлы конфигурации приложения попадают в группу «Ресурсы».

  • Каркасы . Эти файлы содержат инструменты, которые использует iPhone SDK.

Часть окна редактора (большая белая область в правом нижнем углу) показывает код, который запускается после завершения запуска приложения.В этом простом примере код делает объект окна видимым и способным реагировать на нажатия.

Вы узнаете больше об этих важных группах и исходном коде в следующей главе. Помните: ваша цель в этой главе — создать приложение без написания кода!

Вы собрали все детали, теперь пора их собрать. В отличие от игрушек в канун Рождества, проекты Xcode легко собрать. Благодаря шаблону все, что вам нужно сделать, это запустить команду Build, и Xcode берет весь исходный код, ресурсы и фреймворки и объединяет их в исполняемый файл, который можно запускать на iPhone.

Убедитесь, что во всплывающем меню в верхнем левом углу окна проекта выбрано «Симулятор и отладка» (точная формулировка меню будет меняться в зависимости от того, какую версию iPhone SDK вы используете). Затем выберите Build → Build, как показано на рисунке 1-11.

После недолгого ожидания вы должны увидеть «Сборка выполнена успешно» в строке состояния в левом нижнем углу.

Note

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

Рисунок 1-11. Создание приложения для iPhone. Обратите внимание, что в меню «Обзор» выбраны «Симулятор» и «Отладка». Комбинация клавиш ⌘-B — удобное сочетание клавиш для сборки проекта после того, как вы внесли изменения в исходный код.

Создав приложение, вы можете запускать его на своем iPhone. Или, еще лучше, запустите его на своем Mac. Верно.Если вы, как и большинство разработчиков, будете запускать приложения для iPhone на Mac примерно в 90% случаев. Приложения запускаются на Mac быстрее, чем на iPhone, и их легче отлаживать на Mac при возникновении проблем.

Примечание

Не делайте скидку на последние 10 процентов. Запуск вашего приложения на реальном устройстве чрезвычайно важен: вы узнаете, почему, когда проблемы дизайна обсуждаются в главе 4.

Запускаем его на Mac

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

Так как же установить iPhone на свой Mac? Это просто: убедитесь, что в меню «Обзор» выбрано «Симулятор», и выберите «Выполнить» → «Выполнить». Поскольку у вас выбран Simulator, Xcode использует имитацию iPhone для запуска вашего приложения.

Следите за строкой состояния. Вы увидите сообщение «Установка фонарика в симуляторе» и, в конце концов, «Фонарик запущен». Вскоре после этого на вашем рабочем столе появляется гигантский iPhone, на котором запущено приложение Flashlight (рис. 1-12). Поздравляю!

Рисунок 1-12.В iPhone Simulator изображение слева показывает запущенное приложение, а изображение справа показывает значок приложения на главном экране. В карман не поместится, но симулятор действует как настоящий живой iPhone.

Совет

Вы можете сделать все, что вы делали в этом и предыдущем разделе, одним нажатием клавиши. Нажатие ⌘-Enter создает и запускает ваше приложение (в симуляторе) за один шаг. Когда вы окунетесь в самую гущу разработки приложений для iPhone, вы будете нажимать эти клавиши во сне.

Так что же делает этот гигантский iPhone? Он называется iPhone Simulator и ведет себя как карманное устройство, за исключением:

  • Он в сотни раз быстрее.

  • У него столько же памяти, сколько у вашего Mac.

  • Сеть намного надежнее.

  • Имеет дисплей большего размера.

  • Он не синхронизируется с iTunes через USB-кабель.

  • Прикосновение к экрану симулятора не дает никакого эффекта.

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

Когда вы нажимаете кнопку «Домой», вы видите экран с приложениями, установленными Xcode.Поскольку на данный момент у вас есть только один, все, что вы увидите, — это приложение «Фонарик». Перетаскивайте мышь, чтобы перемещаться между страницами приложений. Многие приложения, которые вы привыкли видеть на своем iPhone, пропали, но вы все равно сможете использовать Фотографии, Контакты, Настройки и Safari во время тестирования. Щелчок по значку приложения запускает его в симуляторе так же, как на реальном устройстве.

Совет

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

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

Xcode работает рука об руку с Interface Builder для создания пользовательского интерфейса (UI) вашего приложения.С помощью этого инструмента вы создаете такие объекты, как окна и кнопки, а затем вставляете их в свой код. Когда вы создали проект из шаблона, Xcode автоматически создал файл, содержащий эти объекты.

Чтобы понять, насколько прост этот метод, откройте пользовательский интерфейс приложения Flashlight. В главном окне проекта откройте группу «Ресурсы», щелкнув треугольник раскрытия, и дважды щелкните файл MainWindow.xib. Откроется Interface Builder (вы увидите, как он подпрыгивает в Dock). Как только он откроется, вы будете готовы приступить к работе над своим пользовательским интерфейсом (рис. 1-13).

Рисунок 1-13. Интерфейсный редактор и его многочисленные окна занимают большую часть вашего экрана. Посередине находятся документ .xib (A) и окно, отображаемое в приложении iPhone (B). Слева находится библиотека элементов пользовательского интерфейса, в которой можно получить доступ к кнопкам, окнам и другим компонентам пользовательского интерфейса (C). Инспектор свойств для объектов в интерфейсе отображается справа (D).

Главное окно документа — MainWindow.xib. Чтобы изменить режим просмотра, используйте три кнопки в верхнем левом углу.Кнопки работают так же, как и в Finder: крайний левый отображает значки, центр — список, а правый — столбцы. Список (который вы можете увидеть на рис. 1-13) более компактен и легче читается (особенно с длинными именами).

Окно библиотеки, крайнее левое, содержит список всех интерфейсных объектов, которые вы можете использовать в своем дизайне. Вы узнаете об этих объектах подробно в главе 3.

Чтобы начать изменение пользовательского интерфейса Flashlight, дважды щелкните элемент Window в списке в MainWindow.xib. Окно приложения открывается справа от главного окна документа и дает вам возможность изменить цвет. Начни думать о своем любимом цвете!

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

  • Атрибуты .Особые настройки объекта. Эти элементы негласно задают свойства и атрибуты объекта, чтобы избавить вас от написания кода (хотя вы все равно можете написать код вручную, если это необходимо).

  • Подключения . Соединения определяют, как ваш исходный код обращается к объектам пользовательского интерфейса. Для приложения Flashlight вы увидите, что «окно» связано с «Делегатом приложения Flashlight».

  • Размер . Эта панель позволяет вам определить геометрию выбранного объекта.Например, ширина и высота окна составляют 320 x 480 (размер экрана iPhone).

  • Идентификационный номер . Это представление показывает, какой тип объекта определен. Окно приложения имеет класс UIWindow.

Tip

Для управления множеством окон Interface Builder вы обнаружите, что сочетания клавиш позволяют быстро находить нужную информацию. Вы можете получить доступ к главному окну документа, нажав ⌘-0, и вы можете переключаться на каждый раздел инспектора с ⌘-1 до ⌘-4.Используйте Shift-⌘-L, чтобы открыть окно библиотеки.

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

Note

Если вы использовали другие среды разработки, оставьте свои предубеждения о том, как работает Interface Builder, за дверью. Вместо автоматической генерации кода для отображения пользовательского интерфейса из ресурсов файл .xib содержит XML-представление фактических экземпляров и иерархии объектов.Когда вы загружаете файл, Interface Builder создает граф объектов в памяти и связывает его с выбранными вами переменными экземпляра. Мы более подробно рассмотрим, как это работает, в главе 3.

Теперь, когда вы ознакомились с интерфейсом Interface Builder, вы можете изменить пользовательский интерфейс вашего фонарика. Убедитесь, что в документе MainWindow.xib выбрано Window и что инспектор свойств находится на первой панели (для изменения атрибутов).

Вы уже выбрали свой любимый цвет? Пришло время изменить цвет фона окна, щелкнув палитру «Цвет фона».Затем выберите подходящий цвет для света на цветовом круге (рис. 1-14). Например, успокаивающий оттенок желтого.

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

Выберите «Файл» → «Сохранить», чтобы обновить файл MainWindow.xib. Возьмите за привычку сохранять после настройки пользовательского интерфейса и не забывайте проверять наличие точки «изменено» в поле закрытия документа, если ваши изменения не работают должным образом.Последнее, что вам нужно, — это тратить время на отладку ошибки пользовательского интерфейса, потому что вы забыли сохранить файл.

Теперь вернитесь в окно проекта Xcode для Flashlight и выберите Build → Build and Run.

Примечание

Если вы видите всплывающее окно с предупреждением о необходимости остановить исполняемый файл, просто нажмите OK. Xcode просто напоминает вам, что у вас уже есть приложение, работающее в симуляторе.

Рисунок 1-14. Чтобы изменить цвет фона окна приложения, нужно щелкнуть цветовое колесо.После выбора окна в документе MainWindow.xib (A) вы просматриваете атрибуты (B), которые включают цвет фона. Щелчок по лунке (C) вызывает цветовое колесо (D), где вы можете выбрать новый цвет с помощью мыши. Когда вы выбираете новые цвета, вы сразу получаете обратную связь.

Вы только что создали свое первое приложение для iPhone и настроили его по своему вкусу. Отличная работа!

Теперь, когда путешествие завершено, читайте дальше, чтобы увидеть некоторые детали того, что вы видели по пути.

Как создать приложение — (2021 г.) Создание приложения за 10 шагов

, Крис Чинг