Как научиться создавать программы для iOs

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

680 просмотров

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

Как выучить Swift и стать iOS-разработчиком: пошаговый план от roadmap до собеседований

Правда или вымысел: реально ли вкатиться в iOS-разработку за 8 месяцев?

Иллюстрация: Apple / Trello / Figma / Colowgee для Skillbox Media

Как стать iOS разработчиком в 2022 году бесплатно и без курсов / iOS разработчик с нуля

Мария Даровская

Мария Даровская

Журналист, коммерческий автор и редактор. Пишет про IT, цифровой маркетинг и бизнес.
Сайт: darovska.com.

Кирилл Дутов

iOS-разработчик, любит спорт, ведёт блог на YouTube и администрирует чат «Ждунчики в iOS». Интересуется фотографией, кулинарией, медициной и наукой.

Ссылки

Swift — это язык программирования от Apple, на котором разрабатывают мобильные приложения под iOS / iPad OS, десктопные под macOS и даже server-side-приложения. Раньше главным языком экосистемы Apple был Objective-C, но более современный Swift на его фоне выглядит понятнее и удобнее для старта в программировании.

Существует немало комьюнити iOS-разработчиков, где можно задать вопросы или понаблюдать за интересными дискуссиями, и куча событий — как независимых, так и корпоративных, а также куча учебных материалов, в том числе на русском языке. Всё это делает Swift отличным языком для новичков в IT.

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

И вот в очередной раз я захотел заняться чем-то новым — так я и выбрал iOS-разработку. Найти первую работу мне удалось через восемь месяцев упорной учёбы. Из них два я учился параллельно с работой, а оставшиеся шесть — корпел над курсами и книгами фул-тайм.

Расскажу, какой путь я прошёл, чему научился и как можно использовать мой опыт, если вы тоже хотите стать iOS-разработчиком.

1. Составьте план

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

iOS программирование с нуля — часть 1

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

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

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

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

Однако важно планировать не только обучение, но и отдых. Перед началом учёбы советую посмотреть курс Learn how to learn на Udemy или почитать книгу «Думай как математик».

Читайте также:
Автодилер программа системные требования

2. Запаситесь ресурсами

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

Время. Чтобы освоить необходимые для junior-позиции знания, понадобится примерно от 700 до 1000 часов. Если у вас есть качественное профильное образование, то при должном усердии вы сможете уложиться в два месяца, но лучше рассчитывать на полгода — это более реальный срок. Последние пару месяцев я рекомендую заниматься полный день и по возможности уволиться с работы.

Финансовая подушка. Так или иначе вам понадобится финансовая подушка. Я два месяца учился и работал одновременно, а потом ещё полгода занимался программированием дома в режиме фул-тайм — по 4–5 часов активного обучения в день.

Инструменты. Для обучения понадобятся макбук и айфон, потому что функциональность симулятора ограниченна (но iPhone можно взять чуть позже — на старте хватит среды разработки Xcode). Это тоже создаёт барьер для входа в профессию для ребят, которые не могут потратить 100–200 тысяч рублей (а теперь и гораздо больше) просто на то, чтобы попробовать новую специальность.

Но есть и хорошая новость — существуют онлайн-компиляторы (например, replit), в которых можно попробовать базовый синтаксис языка, плюс сам язык Swift и компилятор к нему можно установить и на Linux (версии под Windows нет) — правда, полноценные программы для iOS писать там не получится.

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

Ежедневное планирование. Я вёл списки задач в блокноте — составлял их на каждый день в соответствии с доской в Trello и личными планами. Вот как это выглядело. Выполненные задачи я вычёркивал или отмечал галочкой.

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

3. Читайте книги и решайте задачи

Для обучения есть фундаментальная литература, которая не стареет и не теряет актуальность. Однако вкатиться в разработку пытаются разные люди, и надо понимать, к какому типу вы относитесь.

Например, есть студенты МФТИ, Бауманки или других профильных вузов с сильной фундаментальной подготовкой — они могут учиться по более серьёзным книгам, глубже погружаться в предмет.

А есть взрослые мужчины и женщины, которые работали бухгалтерами или стояли у станка на заводе, — они могут вообще не иметь представления об IT. Им придётся учиться по более лёгким и базовым материалам.

Вот что я могу порекомендовать:

Основы Computer Science и программирования. Если раньше вы никогда не писали код, начинать лучше с основ программирования в целом. Например, посмотреть гарвардский курс CS50 или прочесть книгу «Код. Тайный язык информатики», чтобы понимать, как работает компьютер.

Книги по Swift. Рекомендую серию книг от Ray Wenderlich, серию книг от objc и книгу Programming iOS 14. Российские авторы тоже пишут про Swift — например, есть отличная книга Василия Усова. Но надо готовиться к тому, что 90% всех книг и статей по Swift выходят на английском языке. Современные переводчики помогут вам понять большую часть материала.

Видеокурсы. Советую видеокурс Алексея Скутаренко по Swift — там есть домашка и разборы домашних заданий других ребят. Если вы решите сразу пойти по сложному пути, то после курса по Swift смотрите курс Алексея по Objective-C — так вы дополнительно освоите язык, на котором всё ещё написано много кода в iOS-приложениях, и получите более глубокое понимание платформы.

Вводная лекция из курса Алексея Скутаренко

Официальная документация от Apple. Со временем вам обязательно придётся читать официальную документацию от Apple — и она написана на английском. Правда, существует и её неофициальный перевод на сайте swiftbook.ru. Там же вы найдёте базовые материалы по языку и даже курс по основам разработки на Swift.

Задачи. Одной только теорией не обойтись — обязательно нужно решать задачи. Начните с задачника по программированию на Swift от Владислава Самойлова, выполняйте упражнения уровня easy на LeetCode и тесты в приложении Swifty, придумывайте самостоятельно. Чем больше практики вы получите, тем лучше.

4. Разберитесь с ​​Xcode и UIKit

Чему важно научиться:

  • Работать с playground. Это можно сделать по курсам Скутаренко. А изучить основные модули​​ Xcode и список горячих клавиш — по англоязычному туториалу.
  • Разобраться с UIKit. Рекомендую курс от SwiftBook и курс от The Swift Developers.
  • Работать с дебаггером, отладкой и View Debugger, Interface Builder.
  • Создавать сниппеты. Рекомендую хорошую статью Ильи Школьника.
  • Стоит разобраться, как работает жизненный цикл UIViewController. Сделать это можно по следующему видео:
  • Создавать первые приложения. Начать можно с курсов SwiftBook «Мои первые приложения» и «Приложения на основе коллекций». А ещё в этот период стоит освоить нативную вёрстку.
  • Можно освоить один из фреймворков: SnapKit, BoxView, TinyConstraints. А ещё важно разобраться, как работает Auto Layout, — сделать это можно с помощью книги Modern Auto Layout и статей.
  • Из каких слоёв состоит иерархия view и что такое layer. Сделать это можно по книге iOS Core Animation: Advanced Techniques. Попробуйте самостоятельно комбинировать разные элементы UIKit и соединять их друг с другом. Помимо книги и курсов, не забудьте изучить официальную документацию по UIKit.
Читайте также:
Как работать с программой freestyler

5. Научитесь работать с дизайном и консолью, изучите архитектуру ПО и Git

Попробуйте начать работать с Figma, Sketch, Zeplin. Следующим шагом будет изучение Apple Human Interface Guidelines for iOS — у него есть неофициальный перевод на русский язык.

На этом этапе можно освоить вёрстку экранов в Pixel Perfect, когда все размеры точно соответствуют макету. Сравнивать их можно, наложив два скриншота друг на друга и настроив прозрачность на скрине макета. Макеты можно брать на sketchappsources.com, а интересные макеты проектов для мобильных приложений — на Behance.

Также понадобится навык работы с командной строкой и Git. Учиться этому можно в игровой форме на следующих ресурсах: ostechnix.com, redhat.com, bashcrawl. По Git я рекомендую читать официальную документацию и проходить тренажёр learngitbranching.js.org. Важно уметь работать с Git в Xcode, а также освоить один из сервисов: GitHub, GitLab или Bitbucket.

После этого рекомендую погрузиться в архитектуру. Стоит разобраться с MVC, MVP, MVVM, VIPER. Про последний Rambler даже выпустил целую книгу. Чтобы закрепить понимание того, чем отличаются архитектуры, делайте учебные проекты.

6. Разберитесь с многопоточностью, принципами ООП и работой с сетью

Для работы с многопоточностью я рекомендую курс The Swift Developers «Multithreading в Swift с нуля»:

Курс «Multithreading в Swift с нуля»

На Stepik также есть русскоязычный бесплатный курс от «Авито». А в этом видео можно найти ответы на интересные вопросы:

Ответы на каверзные вопросы о многопоточности

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

Чтобы усвоить базовые принципы работы с сетью, рекомендую пройти на swiftbook.ru курсы «Работа С API» и Networking. Отдельно прочтите статьи про архитектуру REST, JSON, XML и изучите, как работает Codable — с помощью статей и официальной документации. Стоит также разобраться, как правильно работать с URLSession и Alamofire.

Следующим этапом попробуйте создавать простые приложения, которые будут выводить данные из API в TableView или CollectionView. Публичные API для этого можно взять на сайте apptractor.ru. Также посмотрите материалы про WebSocket и асинхронный веб и изучите сервисы-помощники, которые ускоряют создание моделей для парсинга.

Отдельная большая тема — основы ООП в Swift. Рекомендую посмотреть об этом видео и закрепить знания с помощью курса по паттернам. Также паттерны можно изучать на портале refactoring.guru и по книге «Паттерны проектирования» издательства O’Reilly. Подробные и интересные лекции есть у Тимофея Хирьянова.

Лекция Тимофея Хирьянова про ООП

Разобравшись, что такое SOLID, попробуйте написать примеры, которые нарушают принципы, а потом пофиксить ошибки.

7. Изучите алгоритмы и структуры данных, принципы хранения данных

Самая доступная по этой теме — книга «Грокаем алгоритмы». Пригодятся и примеры из книги Data Structures https://skillbox.ru/media/code/kak-vyuchit-swift-i-stat-iosrazrabotchikom-poshagovyy-plan-ot-roadmap-do-sobesedovaniy/» target=»_blank»]skillbox.ru[/mask_link]

Где научиться iOS-разработке: ТОП-20 Бесплатных Онлайн-Курсов с выдачей сертификата или без

Привет всем, друзья! ✌ Сегодня рассмотрим 20 Мощных онлайн-курсов для обучения разработке на IOS, которые можно пройти абсолютно бесплатно.

Взрыв мозга «Самый понятный гид по профессиям: iOS и Android-разработчик»

Самый понятный гид по профессиям: iOS-разработчик

Концентрат полезной информации на 50+ страниц:

  • Необходимые навыки
  • Подборка бесплатных ресурсов
  • Записи практикумов для начинающих
  • Карьерный рост
  • Зарплаты
  • FAQ для новичков
  • Сферы работы
  • Лайфхаки
  • Поймете, какие навыки необходимо освоить
  • Узнаете, сколько сможете зарабатывать на старте — и через несколько лет
  • Сможете примерить роль Android- или iOS-разработчика и написать работающий код — под руководством эксперта

1. itProger — «Уроки Swift»

Разработка на iOS - один из топовых курсов по IOS

Видеокурс состоит из 8 уроков, в котором простым языком объясняются основы SWIFT кодинга в программе Xcode для Apple OS. В ходе изучения курса, ты создашь мобильный шутер. Так сказать твоё первое портфолио. Однако выполнение больших заданий доступно лишь в платной версии продукта.

  • Калькулятор на Swift / #1 — Создание дизайна
  • #2 — Отображение данных на экране
  • #3 — Математические операции
  • iOS игра на Swift / #1 — Создание окружения
  • #2 — Добавление врагов и физики
  • #3 — Стрельба и уничтожение объектов
  • #4 — Основной экран меню
Читайте также:
Программа постановки звука р

На правах профессии «iOS-разработчик»

Профессия IOS разработчик

Что получает пользователь?

  • 12 месяцев жаркого контента с отработкой навыков на тренажере по Swift для отработки алгоритмов и синтаксиса языка.
  • 5 сквозных проектов по созданию приложений для портфолио
  • 60 часов онлайн-мероприятий с ментором для разбора учебных тем и решения задач
  • 50 написанных программ в ходе практических заданий и мини-проектов
  • 3 хакатона по разработке в командах под руководством ментора
  • Программирование
  • Мобильная iOS-разработка
  • Мобильная разработка PRO

Сертификат

  • Фундаментальная база
  • 5 приложений для портфолио
  • Карьерная стратегия
  • Упаковка и подготовка
  • Вакансии и нетворкинг
  • Трудоустройство

2. «Разработка под iOS. Начинаем»

8.«Swift Cocoapods Frameworks»

Без выдачи сертификата

Обучающая программа: пользователи получат практические навыки в работе с фреймворком CocoaPods под Swift.

  • Срок обучения: 4 ролика.
  • Форма контента: лекции с возможностью выполнять задания от автора.
  • Связь с преподавателем: нет.
  • Оценка пользователей: подойдёт всем опытным пользователям.
  • Обзор Swift Cocoapods Frameworks.

9. «Разработка под iOS. Начинаем»

Где научиться iOS-разработке: ТОП-20 Бесплатных Онлайн-Курсов с выдачей сертификата или без

С выдачей сертификата

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

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

Для прокачки своих навыков, спикер создаст полнофункциональное приложение для редактирования фотографий для iPhone, iPad и Apple Watch.

  • Срок обучения: 5 месяцев изучения контента.
  • Форма контента: лекции с возможностью выполнять задания от автора.
  • Связь с преподавателем: нет.
  • Уровень подготовки: подойдёт всем пользователям.
  • Introduction To Swift Programming
  • iOS App Development Basics
  • Проектирование и разработка приложений для iOS
  • Build Your Own iOS App

11. «UIKIT с нуля»

12. «Многопоточность в iOS»

С выдачей сертификата

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

В курсе вас ждут лекции, тесты, задачи, полезные материалы — все что нужно, чтобы разобраться!
И, конечно же, вы сможете поработать с кодом, который будет использован в курсе.

Уверены, что каждый участник почерпнет для себя что-то новое.

  • Срок обучения: 11 роликов.
  • Форма контента: лекции с возможностью выполнять задания от автора.
  • Связь с преподавателем: нет.
  • Уровень: подойдёт всем пользователям.

13. «Проектирование и разработка приложений для iOS»

Обучение разработки на IOS

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

  • Срок обучения: 9 часов изучения контента.
  • Форма контента: лекции с возможностью выполнять задания от автора.
  • Связь с преподавателем: нет.
  • Уровень: подойдёт всем пользователям.
  • Welcome to App Design and Development for iOS
  • User Interactivity
  • Multiple View Controllers Networking
  • Introduction to developing for watchOS 2
  • Introduction to Developing for tvOS
  • Peer Assessment

14. «Разработка приложений для iOS на Swift в Xcode»

Один из курсов по IOS разработке

С выдачей сертификата

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

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

  • Срок обучения: 4 месяца изучения контента.
  • Форма контента: видео + тесты + задания.
  • Связь с преподавателем: нет.
  • Уровень: подойдёт всем начинающим пользователям.
  • Introduction to Programming in Swift 5
  • Introduction to iOS App Development with Swift 5
  • Tables, Data In-App Purchases
  • Как настроить среду и разработать код на Swift 5
  • Как выполнять различные вычисления и создавать приложения для iOS
  • Как работать с данными в iOS, включая таблицы и сети
  • Как монетизировать свои приложения с помощью встроенных покупок и подписок

18. «iOS App Development Basics»

Разработка на IOS

С выдачей сертификата

Обучающая программа: обучение посвящёно изучению языка программирования Swift.

  • Срок обучения: 6 часов изучения контента.
  • Форма контента: видео + тесты + задания.
  • Связь с преподавателем: нет.
  • Уровень: подойдёт всем начинающим пользователям.

Начинка обучения

  • Welcome to iOS App Development Basics
  • Further Introduction to XCode
  • UIKit and the Interface Builder
  • Advanced UI Concepts
  • Final Peer Assignment — App Functionality

Евгений Волик

¡Hola amigos! Здесь я выкладываю подборки с курсами для обучения разным профессиям с нуля. Проект существует с 2021 года и постоянно развивается.

Источник: evgenev.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru