iOS-программирование по-русски. Программирование под ios с нуля


Swift – Урок 0 – iOS программирование с нуля

Как вы уже знаете в программировании массивы (arrays) начинаются с нуля поэтому я подумал что начать урок с нуля было бы остроумно 🙂

Итак что вам нужно чтобы начать программировать на Swift.

  1. Мак или Хакинтош если у вас Windows
  2. Последняя версия Mac OS и загруженный Xcode – это IDE (среда разработки)Если у вас нет всего этого, вы можете использовать IBM Swift Sandbox – этого будет достаточно чтобы делать большинство заданий и теории по языку Свифт
  3. Желание досидеть до конца курса, устроится на работу и зарабатывать в 10 раз больше ваших друзей и знакомых

Вот конфигурации которые вы можете выбрать себе в зависимости от ваших возможностей:

  1. $0 – Вообще нет денег есть только старый комп на Windows и есть интернет. Вы можете сделать из него Хакинтош (то есть поставить на него MacOS – не надо спрашивать как в инете есть куча статей как это сделать, тем более что я никогда этого не делал 🙂 Если вы не смогли поставить Хакинтош то заходите по этой ссылке и делайте уроки там – все это бесплатно – IBM Swift Sandbox. Для того чтобы видеть ваше приложение вы сможете запускать его на симуляторе.
  2. +$200 – Купите себе старый айфон на eBay чтобы вы могли тестировать ваше приложение на в реальном мире а не только на симуляторе.
  3. +$100 – Вдобавок к пункту (2) Купите себе лицензию разработчика Apple на год за $100 в год – это поможет вам устанавливать ваше приложение на устройства ваших друзей когда вы будете тестировать ваше приложение в реальном мире и если все пройдет успешно то вы сможете запустить ваше приложение в AppStore. Без этого конечно же вас не возьмут на работу.
  4. +$400 – Вдобавок к пункту (3) купите себе Mac Mini БУ – это самый дешевый мак который можно купить, просто соедините к нему монитор и вы уже можете все что может любой другой разработчик iOS.
  5. +1000 – купите себе iMac.
  6. +1100 – купите себе MacBook Pro.

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

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

Графика – иконки и элементы интерфейса чтобы ваше приложение было красивым и интересным. Вот ссылка по которой можно закачать иконки на любой вкус – https://icons8.com/icon/set/notes/ios7

Серверная часть – если вы знаете язык типа php, python, ruby on rails или javascript – супер, если нет то можете:

  • Тянуть данные из уже готовых API (для этого нужно знать REST API) типа – Youtube, Twitter, RSS etc.
  • Взять любой из альтернатив довольно успешного в прошлом Parse
  • Найти чувака который умеет это делать
  • Научится базовым вещам чтобы создать прототип (первую версию) своего приложения и запустить в AppStore.

——————————–

Вставка из моего опыта:

Так как я начал программировать в СНГ то конечно же первым делом освоил PHP, затем делал сайты на Битриксе, затем на WordPress. Поэтому если вы идете тем же путем, то можете сначала сделать сайт на WordPress, создать в нем “custom fields” и хранить данные в нем. Вам же нужно будет просто написать Rest API который будет выдавать данные в виде XML/JSON. Пример такого приложения я начал показывать в 2015 году – https://www.youtube.com/watch?v=Qflcbi9Tv60

Если вы знаете Битрикс то вам будет еще легче.

Но если вы не знаете и не хотите учить – то идите по списку который я озвучил выше.

——————————–

Сертификаты, Профили и тд

Вам также надо будет научиться создавать сертификаты и профили чтобы правильно “подписывать” (sign)  ваши приложения перед тем как отправить в AppStore. Узнать что такое Push Notifications и как уведомлять юзера сообщениями о новом контенте (те самые красные значки в иконках которые просят запустить приложение). Как интегрировать различные framework в ваше приложение типа Google Analytics (для сбора инфы о юзерах) и hockeyApp или Crashlytics для сбора данных когда ваше приложение рушиться чтобы быстро починить пока ваше приложение не набрало рейтинг “1 звезда” в AppStore. Также научится CoreData или Realm чтобы хранить данные на айфоне для быстрого запуска и локального хранения.

One more thing…

Также жирным плюсом считается умение продвигать приложение, знание механик воздействия на юзера чтобы он пользовался приложением чаще (делать приложение более “sticky”), изучение приложений конкурентов, основные знания android и hybrid приложений, знание последних трендов – это можно изучить смотря все последние видео на сайте Apple Developer – https://developer.apple.com/videos/ и общение с крутыми разработчиками в Сан Франциско и Силиконовой Долине – это все придет со временем 🙂

Итак вы взглянули на список того что вас ожидает и если вас ничего не испугало – то давайте сядем, научимся делать крутые айфон/айпад приложения и через 3-5 лет станем крутыми чуваками – которые востребованы в любой точке Мира, зарабатывают крутые бабки и являются хозяевами своей жизни.

Путь в тысячу миль начинается с одного шага – Конфуций.

354 total views, 2 views today

romerousa.com

[Новичкам]С чего начать программирование под iPhone/iPad (Урок 1)

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

Составляющих три:

1. Apple MacBook / Mac Mini/ iMac / etc с MacOS X 10.5/10.6

Этот момент обычно самый сложный, т.к. далеко не у всех есть деньги на компьютер от эппл. Если у Вас есть такой - можете перейти ко второму пункту :) Если нет - для вас есть несколько вариантов.

Вариант А: скачать и установить программу VMWare, позволяющую запускать виртуальные компьютеры, и на такую машину установить (или, проще, скачать готовый образ) MacOS X. Но для адекватной работы нужен мощный компьютер, иначе все будет безбожно тормозить.

Обсуждения таких машин можно запросто найти в поиске на рутрэкере (http://rutracker.org), введя в поиск "MacOS vmware"

Вариант Б: сделать Хакинтош, т.е. установить МакОсь на ваш компьютер. Как это делается - нужно гуглить в интернете, но часто это очень гемморно)

Вариант В: купить готовый вариант хакинтоша

Как бы то ни было, я надеюсь, что Вы найдете решение. Если будут вопросы по этому пункту - пишите в комментариях.

2. XCode 4 + iOS SDK 4.3

Чтобы скачать его, Вам необходимо зайти на сайт http://developer.apple.com/xcode/ и нажать "Log  in" под надписью "Download XCode 4 for Mac OS X and iOS". 

Вам будет предложено зайти с Вашей Apple ID, которой у Вас скорее всего нет :) (если есть - можете зайти с нее)

Поэтому смотрим справа, где написано "Need to register? Join now" и тыкаем на Join Now.

Прокручиваем ниже до пункта "Register as an Apple Developer", где нажимаем Learn more, чтобы продолжить регистрацию для разработчика бесплатно.

Откроется окно, где Вы сможете нажать Get Started и заполнить все данные пошагово.

Надеюсь, с этим не возникнет проблем, опять же с любыми вопросами обращайтесь в комментарии)

А что, если скачать XCode 4 нет возможности, но есть XCode 3 + iOS SDK? Ничего страшного, я сам учился на третьем XCode, поэтому все ок, можете работать на нем :)

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

3. Этот блог :)

Собственно, инструменты у Вас теперь есть все, осталось читать этот блог, узнавать новое и задавать вопросы)

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

Ну и любые пожелания, конечно, приветствуются)

С уважением,

Сергей

ios-ru.blogspot.com

Мой путь в iOS-разработку с нуля до трудоустройства на €600

Привет, Доу! Меня зовут Олег, и мне 29 лет. 2 месяца назад я стал разработчиком приложений для iOS, а ещё я работаю фейсером (тот самый человек, который иногда говорит: «Извините, Вам отказано в посещении...») в баре в кольце Арены. Сегодня решил написать о своём опыте изучения разработки на языке Objective-C самостоятельно за 5 месяцев без курсов и менторов абсолютно бесплатно, используя материалы в сети. Текст будет интересен начинающим разработчикам либо тем, чьё будущее ещё туманно.

Поиск информации для тех, кто выбрал путь разработчика, проходил и проходит собственными руками, и вы всегда трудитесь на грани незнания необходимой информации. Мой путь с нуля до трудоустройства на €600 и первых рабочих дней в компании из Люксембурга с офисом в центре Киева (оказывается, мы те ещё индусы) вполне по силам любому желающему. Компания монополизировала услуги IPTV и интернет у себя в государстве, а я в составе команды из 10 человек (4 из которых — разработчики Objective-C/Swift) уже полтора месяца пишу и правлю код приложений для сервисов IPTV и бесплатных объявлений под iOS платформу.

Почему IT и выбор направления

В сторону разработки начал смотреть во время второго серьёзного даунстрика в покере, в котором за 2 года прошёл путь от знакомства с правилами до успешной профессиональной игры онлайн в турнирах на низких лимитах ($5-30) Pokerstars, путешествий в Дубаи, Берлин и нескольких месяцев жизни в Барселоне и Гоа. Искал для себя занятие, в котором опыт и знания будут приумножаться с каждым днём и приносить прогнозируемый доход, а не зависеть от конкретной раздачи на финальном столе. Курс гривны упал, и осваивать работу на 5000 грн совсем не хотелось. С компьютером был знаком с пяти лет, программирование было забавой. Заканчивал ШАГ по специальности «Веб-дизайн и интернет технологии» ещё в далёком 2004 году в Мариуполе, вместе с окончанием школы. Получал образование в военном институте в КПИ на факультете Телекоммуникации. Однако, программирование не привлекало совсем. Долгое время искал себя.

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

Далее, почему iOS? Знакомство с устройствами Apple началось в 2009 с плоского iPod с железным корпусом, большим экраном и клёвым ПО. Затем был iMac на 27 дюймов, который поражал качеством картинки и разрешением экрана, ярко выделяющим устройство среди других аналогов. В общем, понравился подход производителя к формированию и воплощению своих идей в готовый вид, а также — комфорт от их взаимодействия между собой.

С чего начать обучение

Разработка для яблока ведётся на Objective-C и Swift (есть и другие не нативные языки). Изучил много мнений насчёт выбора языка в качестве первого шага, попробовал Try Objective-C by CodeSchool, понравился подход среды разработки к обозначению методов, названию переменных, — будто пишешь письмо (ага, точно, — бабушке). Как поэт и ярый любитель красивых выражений и текстов, оценил синтаксис языка и выделил его как привлекательный для изучения. Если бы выбирал сейчас, начинал бы со Swift’а (направление развивается очень быстро), однако многие приложения, написанные на Objective-C также необходимо поддерживать.

В качестве точного плана для обучения с нуля выбрал бесплатный полноценный (и чуть устаревший) ресурс iOS Development Course, где Алексей Скутаренко, в виде волонтёрской работы и грандиозного плюса для собственного резюме и трудоустройства в лучшие компании Силиконовой долины, записал два курса по программированию для Objective-C и Swift. Основной изюминкой данного ресурса есть не сам уровень подачи и глубина материала, поданного в удобной форме теория/практика от опытного специалиста, а постоянно растущее комьюнити с обсуждением домашних заданий, проблем с которыми сталкиваются студенты. Во время записи видео аудитория группы была < 1’000 пользователей на конец 2014 — начало 2015 годов, а сейчас уже — > 13’000. Библиотека материалов разрослась и охватывает многие сопутствующие темы в разработке для iOS и новые тенденции, появляются новые видео курсы от других специалистов.

Для комфортного изучения и разбора любой темы необходимо использовать минимум 3 источника, так что после осваивания упомянутого курса, следующий проходил уже на английском от Udemy — iOS 9 & Objective-C — Make 20 Applications (повторяя изученное) для совершенствования профессионального английского. Параллельно с этим я регулярно изучал обучающие видео на английском по темам, которые уже устарели в курсе изучения Алексея Скутаренко с выходом обновлений ПО. Успел ещё начать изучать Swift от iOS Development Course, однако развитие Swift проходит семимильными шагами, и я приостановил изучение для того, чтобы направить все силы на подготовку к собеседованиям, решению тестовых заданий и трудоустройству, ведь для этого я всё и затеял.

Подготовка и поиск первой работы

Поиск работы для меня обратился в весьма азартное занятие. Ресурсов для поиска вакансий разработчика в Украине не так, чтобы много. Наряду с гигантами широкого профиля work.ua и rabota.ua, а также узкоспециализированными друзьями jobs.dou.ua и djinni.co, использовал множество других зарубежных сайтов, которые не принесли никакого эффекта. Кстати, как и Джинни, где получил всего одно предложение уже после того, как нашёл своего работодателя.

Благодаря Junior дайджесту боролся за возможность попасть на интернатуру в Booking.com. Отправил резюме и сопроводительное письмо, которые были приняты, прошёл тест на сайте HackerRank на знание основ алгоритмов и структур данных на базе Objective-C/Swift (кстати, перед сдачей тестов на подобных ресурсах, убедитесь, что вы попробовали сдать парочку примеров перед тем, как пройти контрольный), получил подтверждение на прохождение устного интервью с рекрутёром по телефону. Полностью подготовился, практиковал английский, изучил кучу информации о компании (которая, кстати, ого-го какой мощный динозавр индустрии!), позитивных и негативных отзывов от людей, которые уже проходили данный этап собеседований (спасибо GlassDoor за огромное количество доверившихся соискателей, трудящихся и их отзывы), составил шпаргалку. Разговор длился более 20 минут, в процессе которого я обратил внимание собеседника, что я хорошо подготовился. Но спустя некоторое время пришёл ответ, что моя кандидатура не была выбрана для прохождения дальнейших этапов собеседований. Ок.

На ДОУ ещё достаточно возможностей проявить себя начинающему разработчику без опыта. Я отправлял резюме везде, где отсутствовало упоминание о коммерческом опыте, а стек технологий подходил моим скромным знаниям. Благодаря ресурсу VisualCV я создал CV удобное для редактирования и отправления прямо с телефона. Все проекты залил на GitHub, создал подробное описание, анимированные гифки с наглядным отображением функционала, а также включил описание проектов с изображениями скринов в резюме. Достаточно внимания уделил написанию шаблона сопроводительного письма, которое всегда правил под обнаруженную вакансию конкретной компании.

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

— Ссылки на русском:Паттерны ООП в примерах для iOS / ХабрахабрСправочник iOS дизайна (Human Interface Guidelines на русском)Архитектурные паттерны в iOS / Хабрахабр27 iOS библиотек с открытым исходным кодомИдеальное резюме Junior’а: как найти лучшую работу в сфере информационных технологий (здесь более поучительными являются комментарии)Как научиться программировать под iOSОбучающий курс по разработке iOS+Swift+Objective-C приложений (разбор домашки курса CS193P Stanford Spring 2016, Swift)

— На английском:Core Data в среде Cocoa, Mac OS, iOSWhat Every Junior iOS Developer Needs to KnowiOS interview Questions with Answers 1 partiOS interview Questions with Answers 2 partiOS Interview Questions & answers for experienced developersSorting Algorithms in Objective-CSizes of iPhone UI ElementsiOS Developer Resume Examples

Интервью случались различные, бояться здесь нечего. Одна компания с главными офисами в Катаре и ОАЭ приглашала на $400 против заявленных мной $500 на первые 2 месяца практики даже без тестового задания и технического собеседования. Общался по скайпу на английском с HR из Львова и директором из Катара (который любил произносить «харашё»). Видимо, вакансию необходимо было срочно заместить, поэтому собеседование состояло в основном из односложных вопросов «сталкивался ли я с тем-то и тем-то», на что я почти всегда отвечал «да». На принятие решения предоставили 3 дня. Пришлось отказаться в пользу согласованных дат по собеседованиям, тестовые задания для которых уже были успешно завершены.

Насчёт тестовых заданий — берись и делай! Тут пригодятся все знания, полученные прежде, плюс регулярный серфинг Stack Overflow. Диапазон сложности различный — от элементарного приложения тестовой торговой площадки на 2 экрана (1 — список продуктов из одной кастомной ячейки в TableView с несколькими Header’ами, 2 — экран со статической таблицей полей свойств каждого продукта с картинкой) до реализации сервиса на основе API Кинопоиска для просмотра актуальных фильмов в кино с сортировками по дате, отображением локации, времени с подробным описанием картины, подгрузкой трейлеров и списка людей, принимавших участие в организации съёмок.

В итоге, получил неплохое предложение в €600 для старта карьеры, отличный коллектив и достаточно времени для изучения Swift (на котором пишу новый проект), а также перспективу развития заработной платы до €800 за полгода и до €1000 за год. Только вот уже сейчас задумываюсь о том, чтобы за год уйти на дистанционку и продолжить путешествия без привязки к рабочему месту. Жильё в Гоа стоит дешевле, чем в нашей столице у метро, так чего мёрзнуть? Снег, конечно, красив, только закат в аравийском море намного красочнее.

dou.ua


scroll to top