iOS-курсы. Дьявол кроется в деталях.

Я с 2014 года занимаюсь iOS-разработкой. Кроме кода я люблю писать тексты и обращать внимание на детали.

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

Давайте вместе разберём тексты разных программ и чуть-чуть побомбим. Grammar nazi mode on.

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

Skillbox

Ссылка на программу

iOS-разработчик для начинающих
1. Введение в iOS разработку: переменные и константы

Так, давайте определимся, нужен дефис после iOS или нет?

3. Функции и опшиналы

Как только не обзывали тип Optional — опшионалы, опшиналы, опционалы... А какой вариант на русском вам больше нравится?

6. xcode.Сontroller и сториборд

Тут ребята собрали комбо, давайте разбираться:

  • У разработчиков часто бомбит с ошибок в написании Xcode. Насколько можно доверять курсу, в описании которого название IDE так написано? Этим же грешат эйчары: в описании вакансий часто встречаются подобные ошибки, для меня это лакмусовая бумажка для вакансии. Вижу xCode — помечаю как прочитанное.
  • xcode.Сontroller — имели в виду "Xcode, Сontroller". Но эти ошибки пропустили все люди, через которых проходит этот текст.
9. Autolayout, Constrains, StackView

В документации всегда пишут Auto Layout. Давайте называть технологии правильно! И опечаток вроде Constrains стоит избегать, правильно — Constraints. Или это не опечатка, что ещё хуже.

16. Подпись и отправка приложений в AppStore. Обзор iTunes connect

Ещё один хороший показатель того, как часто обновляют программу курса. iTunes connect давно переименовали в App Store Connect. Может, и в лекции показывают старый интерфейс?

4. Архитектуры приложений: MVC, MVVM, Viper, Amber

А тут уже интереснее. Первый три архитектуры популярны, они используются в реальных проектах. А вот что такое Amber? Я даже не слышал про неё. Может, я отстал, и каждый джун уже использует её в своих pet-проектах? Я провёл небольшое расследование и нашел репозиторий: всего 10 звезд, последние обновления были в 2017 году. Автор этой архитектуры — Никита Архипов, он же автор курса от Skillbox. Он даже хотел рассказать про Amber на AppsConf, но доклад почему-то отклонили. Вопрос: стоит ли молодым ребятам изучать её? Вопрос скорее риторический.

8. Взаимодействие с Objective С и С-кодом. Секретные фишки из Objective C

Секретная фишка — правильно писать "Objective-С".

SkillFactory

Ссылка на программу

Структуры и энумы

А чем "перечисляемый тип" не устроил? Хотя Google умный, Google всё равно подскажет.

Опшионалы. Строки. Классы

Давайте уже соберёмся всем сообществом и определимся, как правильно писать.

Клиент-серверное взаимодейтсвие. Протокол HTTP, RESTful APIs

Опечатки — они хитрые. Сразу и не заметишь. Жалко, что тут компилятор не может подсказать...

Unit-текстирование. TDD-тестирование. Фреймворк XCTest

Насколько я понял, теКстирование — это проверка локализации приложения?

Работа с Review Guideline и iTunesConnect

Та же ловушка. Apple, хватит менять сервисы, мы не успеваем!

Нетология

Ссылка на программу

познакомитесь с UIView и UIControl, их сабклассами и жизненным циклом UIView

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

переход на модальный экран редактирования привычки с использованием стандартных компонентов iOS — UIDatePicker и UITextFieldOperations и Operations Queue: API для создания многопоточного кода

Нет времени объяснять и ставить пробелы в программе, пошли учиться!

научитесь проводить Unit- и UI-тесты приложения

Скорее всего докапываюсь, но обычно "проводят тестирование" или "пишут тесты".

Регистрация своего приложение на портале для разработчиков ВКонтакте

Падежи всем трудно даются.

Otus

Ссылка на программу

XCode, Storyboard, объекты UI, создание программно объектов, XIB

Про Xcode мы уже поговорили выше. А тут ещё и Yoda style: "создание программно объектов научишься ты!"

Fabric, Crashlitics

Ну и что, что сервисы deprecated, legacy кому-то надо поддерживать! А Crashlytics я и сам не всегда с первого раза правильно пишу.

Swiftlab

Ссылка на программу

Панаромирование

Панарома — интересный термин. А уж как его в разработке можно применить...

Щипки (pinching gesture)

Надеюсь, не рассказывают, как щипать коллегу в офисе. И тут Google в очередной раз выручает и показывает результаты про pinch gesture.

Автор курса (как и я при написании этой статьи) устал в конце и в описании модуля про Github просто скопировал описание модуля про Apple Watch. Повторение — мать учения.

И что теперь, вообще не учиться?

Конечно, нет! Нужно больше вникать в материалы курсов, сравнивать программы и не вестись на маркетинговые уловки.

Grammar nazi mode off.


Twitter | Telegram | Github