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

Многие наверняка сталкивались с подобной ситуацией.

Я также оказался в этой ловушке некоторое время назад. Apple выпустил последний фреймворк SwiftUI для разработки в iOS, и я погрузился в бесконечные вводные курсы для освоения его азов.

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

  • Начать с практического руководства.
  • Решить, как придать продукту креативности, чтобы мне захотелось заниматься им месяцами напролет.
  • Работать над ним до упора, получая обратную связь от сообщества iOS в Twitter и от пользователей.

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

Таким получилось итоговое приложение:

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

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

Основная идея

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

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

Получилось значительно лучше, чем в первой версии. Итак, берега обучения, наконец, позади!

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

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

В приложении появился шаговый переключатель для повышения точности, увеличились градиенты и улучшился дизайн. Здесь вы видите текущий вид моего продукта под названием Gradients Game.

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

Выводы

  • Не бойтесь начать работать, оттолкнувшись от обучающих материалов. Добавьте в процесс креативности и не жалейте времени для доработки продукта.
  • Когда вы начинаете работать над собственным проектом, то становитесь более самостоятельными и переходите к исследованию. Вы изучаете документацию, получаете помощь от сообщества, задаете вопросы и многому учитесь на практике.
  • Это здорово — погрузиться с душой в разработку проекта. Конечный продукт приносит полное удовлетворение, не зависимо от того, успешен он или нет.

Читайте также:


Перевод статьи Rudrank Riyam: My Experience of Escaping the Tutorial Island

Предыдущая статьяJavaScript: как удалить значения из массива
Следующая статьяПростое руководство по аргументам командной строки Python