tgoop.com/code_and_travel/385
Last Update:
Как я изучала новый язык программирования с помощью ChatGPT. Часть 1
В начале марта я взяла проект на неизвестном мне языке программирования Dart и фреймворке Flutter. Все это — мир мобильной разработки, я же последние 8 лет занималась исключительно фронтом на React и JS (и была fullstask JS + PHP до). За три месяца, работая в одиночку на полставки, удалось завершить верстку всего мобильного приложения и выложить версию для тестирования в App Store Connect. И тут я подумала, что кому-то из вас, возможно, будет интересен мой опыт. А состоит он в самостоятельном изучения нового языка программирования, без платных курсов и без менторов.
Дано:
Постановка задачи от знакомых заказчиков звучала как «реализовать приложение на Flutter». Заказчик был осведомлен, что опыт у меня на этом фрейморке нулевой, но все равно обещал платить достойно. Сроки ограничены, к началу лета нужно продемонстрировать результат. Времени на чтение всей документации по Flutter и реализацию учебных проектов нет. Менторы, если понадобятся, за свой счет. Итого: требуется максимально быстро сделать рабочий проект на языке программирования, с которым ты не работал до.
Шаг 1. Поиск готовых аналогов
Лично я отношусь к людям-практикам, которым безумно скучно читать литературу по программированию и повторять код за лектором на YouTube. Поэтому единственный рабочий для меня инструмент — это окунуться в реальный проект, зарыться во всех мелких проблемах, которые он преподносит, решать их последовательно, и, в конце концов, вынырнуть с уже готовым результатом. Конечно, чтобы провернуть подобное, хорошо бы иметь опыт разработки хотя бы на одном языке программирования.
При сжатых сроках начинаешь действовать максимально эффективно. Идея реализовать интернет-магазин с нуля слишком сложна для новичка. А найти аналогичный готовый проект и немного его доработать по дизайну — значительно проще. Итого: был найден бесплатный видеокурс на YouTube (на 40 ч, ха), где создавался интернет-магазин, очень похожий на то, что нужно мне. Видеокурс был с объяснениями на английском (правда, от индуса), почему стоит делать именно так, а не по-другому. Итого, первые две недели я писала два проекта. В одном, учебном, повторяла все в точности за индусом; во втором, на базе первого проекта делала свою версию для заказчика, благо дизайны были похожи.
Результат спустя 2 недели: готовая верстка шагов авторизации/регистрации/восстановления пароля + логика на фронте для них.
Шаг 2. Разработка самостоятельно на базе прежнего опыта
Поняв подход верстки на Flutter с помощью видеокурса, я отравилась верстать основные страницы интернет-магазина самостоятельно. Необходимости досмотра YouTube-курса до конца не было: все одно и то же, а первичная идея уже схвачена. Здесь стоит отметить, что разложить все в голове по полочкам мне помог опыт разработки на React. Тебе не нужно учить все с нуля, задача сводится к тому, чтобы найти аналогии и запомнить то, чем языки отличаются. Т.е. в голове это выглядит так: в React есть компоненты, во Flutter — виджеты; чтобы выстроить элементы по краям в одну строку в CSS надо написать justify-content: space-between, во Flutter — mainAxisAlignment: MainAxisAlignment.spaceBetween; в React существует локальный state приложения и, чаще всего, глобальный на Redux, во Flutter для этой логики я применяла контроллеры GetX. Таким образом, ты подмечаешь схожие концепции и дальше внутри них уже запоминаешь отличающийся синтаксис.
Результат: знаний, полученный на курсе, не хватает для полноценной реализации станицы. Сходу ты не знаешь все свойства элементов, которые тебе пригодятся. Можно долго решать все вопросы самостоятельно, а можно воспользоваться помощью со стороны.
BY Code&Travel

Share with your friend now:
tgoop.com/code_and_travel/385