С чего начать? Инструкция, как разработать приложение для iOS с нуля

С чего начать? Инструкция, как разработать приложение для iOS с нуля 19:53, 12.03.2015 | Разное СПЕЦПРОЕКТ | автор: Информатор

У нас есть серьёзная тема для тех, кто хочет создать своё собственное приложение для iOS. Перед вами — первая статья в нашем справочном цикле, которая поможет научиться программированию под Swift, создать свою первую программу и разобраться в базовых вещах. Что самое главное, вам всегда готовы помочь в комментариях! Поехали.

Смело начинаем Эта инструкция предназначается для людей, только-только начавших интересоваться темой. Воспринимайте её как руководство к действию, а не как объяснение всего и вся. В то же время не стесняйтесь задавать вопросы, потому что вам оперативно дадут нужные ответы в комментариях.

Над текстом трудился Руслан Гуменный — ведущий разработчик компании e-Legion, создателя разнообразных программ и игр для мобильных платформ.

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

Вступление и немного об истории Swift

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

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

компьютер с операционной системой OS X Yosemite бесплатная IDE под названием Xcode версии не ниже 6.1.1 (можно скачать в App Store по ссылке) Такой набор позволит вам запускать приложения в OS X на симуляторе. Кроме того, вы можете использовать Xcode как навороченный калькулятор (об этом ниже) и легко производить необходимые для жизни и быта расчеты.

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

запускать свои приложения на реальных устройствах публиковать приложения в App Store скачивать последние бета версии iOS и Xcode

Swift Долгое время нативная разработка под iOS осуществлялась с использованием языка программирования Objective-C. Это отличный язык и его история насчитывает уже не одно десятилетие. Несмотря на столь преклонный возраст, он все еще продолжает развиваться. У Objective-C есть много достоинств и недостатков, и, пожалуй, главным недостатком можно назвать сложность освоения. Новичку без опыта программирования очень сложно начать разрабатывать с использованием Objective-C.

Одним из главных источников дохода для Apple является магазин приложений App Store. И, следовательно, чем больше будет интересных приложений, тем выше будет прибыль Apple.

В Купертино это понимают, и поэтому регулярно проводят WWDC (The Apple Worldwide Developers Conference), где рассказывают разработчикам о новых изменениях в iOS и OS X, проводят мастер-классы и делают другую работу для популяризации платформы среди разработчиков.

swift-developers1.jpg

И вот в 2014 году на очередном WWDC разработчикам был показан новый язык программирования под названием Swift. Главными особенностями языка можно называть простой синтаксис и более строгую типизацию. Плюс в Xcode появился Playground, своего рода «песочинца», в которой пользователь может «поиграть» с новым языком, выполняя различные выражения и сразу видя, во что они превращаются.

Таким образом, Apple представила отличную связку для старта новичков — язык с простым синтаксисом и строгой типизацией (позволяет уменьшить число ошибок) + Playground. Кроме того, язык понравился опытным разработчикам, так как с помощью него можно создавать более надежные программы. В итоге Swift очень быстро обрел популярность и сейчас почти не найти новых туториалов или статей, в которых используется Objective-C. Swift стал доминировать, и с этим уже не поспоришь.

К сожалению, пока что у Swift есть небольшие проблемы с производительностью, которые неизбежны для столь молодого языка. Но в последних бета версиях Xcode все уже намного лучше: как и было обещано на WWDC, производительность кода на Swift больше или равна производительности кода на Objective-C.

Давайте начинать!

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

Например, при помощи Playground вы можете решить следующие задачи:

освоить синтаксис Swift поэкспериментировать с новыми API, чтобы улучшить навыки программирования разработать новый алгоритм и понаблюдать за каждым шагом его выполнения провести простые арифметические вычисления 1. Как говорится «лучше один раз увидеть, чем 100 раз услышать», поэтому давайте посмотрим на Playground сами. Чтобы это сделать нам потребуется запустить Xcode.

2. После запуска Xcode вы увидите окошко с предложением создать новый проект или запустить Playground. Собственно нам нужен Playground, поэтому смело выбирайте пункт «Get started with a playground».

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

4. После того, как вы нажмете кнопку «Save», вы увидите тот самый Playground.

5. Возможно, вы расстроились, что тут нет ничего интересного. Давайте это исправим, заменив текст в Playground на следующий:

var j = 2 for var i = 0; i < 5; ++i { j += j * i }

j

println («result: \(j)»)

6. В результате Playground будет выглядеть так:

Правый столбец называется панелью результатов (results sidebar) и для каждой строки в нем показано значение, которое будет получено в результате ее выполнения. Например, для строки 2 с арифметическим выражением в столбце результата будет значение этого выражения.

7. Обратите внимание на строку 6, в ней панель результатов содержит не результат выражения, а то, сколько раз это выражение было посчитано (5 раз). Мы можем увидеть, какие значения были получены для этой строки. Чтобы это сделать, надо нажать на маленький плюсик рядом с текстом (5 times). После чего Playground станет выглядеть так:

8. Теперь в правой части Playground отображается панель Timeline. Еще ее можно открыть, выбрав в меню пункт View→Assistant Editor→Show Assistant Editor.

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

10. Кроме того, в Timeline показывается «Console Output». Это тот текст, который бы вывела ваша программа в консоль устройства или терминал.

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

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

Переменные 12. Переменной называют какое-либо значение, ассоциированное с символическим именем (идентификатором). И таким образом, когда говорят «переменная X хранит значение 3», имеют в виду, что значение 3 ассоцировано с символическим именем X.

Значения, хранящиеся в переменных, могут быть различных типов: строка, целое число, число с плавающей точкой, …

Еще есть такое понятие как тип переменной. Тип переменной определяет типы значений, которые она может хранить. Т.е строковая переменная может хранить только строки и не может хранить числа и т.д.

13. В Swift для определения переменных используются ключевые слова var и let. Разница между ними в том, что переменная, объявленная с использованием let, меняться не может.

14. Давайте объявим несколько переменных:

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

15. Обратите внимание, что нигде явно не фигурирует тип переменной. Он определяется не явно из присваемого значения. Тем не менее, его можно задать явно после имени переменной.

16. Обратите внимание еще на один момент. Переменная, объявленная при помощи let, всегда должна быть инициализирована при объявлении, в то время как переменная, объявленная при помощи var, должна быть инициализирована только перед использованием.

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

String 17. Строка, для создания значения используются кавычки ».

При создании строки вы можете использовать различные выражения на Swift, используя синтаксис »\()», где какое либо выражение. На есть ограничение, вы не можете в нем использовать символ кавычки (»). Пример:

Int 18. Целое число.

Float/Double 19. Число с плавающей точкой. Double отличается от Float тем, что может хранить значения, которые в два раза больше. Если тип не указан, то по умолчанию используется Double.

Bool 20. Булев тип. Может принимать значения true (правда) или false (ложь).

Вывод в консоль 21. Консолью было принято называть совокупность устройств, которые обеспечивают взаимодействие человека с компьютером. Например, консолью вывода можно назвать монитор, а консолью ввода клавиатуру. Сейчас термин стал абстрактным и не связанным с реальным устройством (например, данные могут выводиться не на монитор, а записываться в файл) и на разных устройств консоль реализована по–разному.

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

Таким образом, «Console Output», который показывает Timeline представляет из себя текст, который увидит пользователь в консоли.

22. Чтобы показать что-то в консоли, нужно использовать команды print и println.

Команда print отличается от команды println тем, что включает в себе символ первой строки (»\n»).

23. Попробуйте выполните строки:

print («a») print («b») println («c») println («d») print («e\n») print («f»)

24. В результате вы увидите следующее:

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

Функции 26. Функцией называется последовательность операций выполняющих определенную задачу. Функция может принимать значения и возвращать результат.

Для объявления функции используется ключевое слово func, после которого следует имя функции и круглые скобки. Если функция возвращает значение, то его тип должен быть указан после круглых скобок с использованием ключевого слова »→». Если функция не возвращает значения, то тип можно не указывать или использовать тип Void, который означает «ничего» или пустое значение.

27. Значения, принимаемые функцией, указываются в круглых скобках. Объявление аргументов аналогично объявлению переменных, причем можно явно не указывать var/let. По умолчанию используется let.

Вызов функции осуществляется при помощи указания ее имени и значений для аргументов.

28. Вы можете сделать так, чтобы имя параметра обязательно указывалось при вызове функции. Для этого его надо обрамить при помощи символа #. При этом внутри функции вы можете использовать сокращенное имя, задавая его после имени с #

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

func kilocalories (#fats: Double, #proteins: Double, #carbohydrates: Double) → Double { return 4 * (carbohydrates + proteins) + 9 * fats }

println («kilocalories == \(kilocalories (fats: 20, proteins: 15, carbohydrates: 32))»)

Что дальше Поздравляю! Вы узнали немного о том, что такое Swift и Playground. Но это только начало. Впереди еще много интересного, с чем вам предстоит познакомиться.

Теперь вы можете продолжить двигаться дальше используя ресурсы от Apple или дождаться новых выпусков от iPhones.ru. Следите за новостями!

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

inv

   Ещё интересное: Язык программирования Swift от Apple разрабатывался 4 годаНовый язык программирования Swift стал самой неожиданной новинкой на WWDC… Новый язык программирования Swift: комментарии разработчиковПредставленный на WWDC 2014 язык программирования Swift стал причиной большой… Apple запретила разработчикам использовать Garbage CollectionВ пятницу Apple разослала уведомление разработчикам о том, что до… Информатор, 19:53   @iphones_ruБудь первым   

программирование, разработчики

©  iphones.ru