Главная | Все статьи | Дневник студента

Реактивная рогатка, упражнение для мазохистов и правила построения карьеры в IT

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

Продолжаю проходить курс «JS: React» в школе программирования «Hexlet». Задания чем дальше, тем чудесатей и чудесатей.

Я считаю, что самое главное в разработке приложений - это хорошая сборка ReactJS. Сколько не пробовал собирать сам, после очередного плагина, webpack говорил «кря» и умирал в муках и больше не реанимировался. Поэтому я использую готовые проверенные сборки.

Предыдущая сборка reactjs, которую я скачал для первых уроков, в один момент перестала собираться, я плюнул и начал искать другую. И нашёл React Slingshot «Реактивная рогатка».

У неё всё хорошо, и документация, и грамотные скрипты, но вот нет поддержки правил airbnb для линтера eslint, но их до установить дело пары минут. Для себя отметил, что полную «дичь» линтер с правилами airbnb написать не даст. Я уже изменил уже ряд моих стилей кодирования на более эффективные по мнению eslint.

Все уроки курса «JS: React» стояться на разработке компонентов Bootstrap под ReactJS. Но всё уже придумано за нас и этот набор компонентов уже давно существует React Bootstrap https://react-bootstrap.github.io/ Я его тоже добавил в свою сборку. Но по факту использую только стили. А упражнения решаю честно, не подглядывая в чужой код.

Возникает резонный вопрос, а к чему эта сборка зачем такие сложности, есть же редактор, линтер, встроенный в сам сайт Hexlet. Ну не дотягивает редактор до phpStorm и я ошибся при выполнении одного упражнения и тесты выдали портянку с ошибками на 5-7 страниц и всё, умер встроенный редактор, прокрутка ошибки была с большими тормозами.

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

фронтенд и бэкенд - разница

Для себя отметил, мне интересно, не столько моё решение, сколько решение преподавателя. Часто возникает возглас: «А что так можно было?» :-) Понравилась тема про иммутабельность (неизменяемость) данных. Сколько не смотрел курсов по ReactJS, хоть бы один тренер рассказал про использование библиотеки immutability-helper, а только ES6, только хардкор. Сами создаём себе трудности и сами их преодолеваем. Лично мне иммутабельность данных не нравиться. Сколько кода не писал, но вот чтобы жестко была необходима иммутабельность и других вариантов не было, не сталкивался. Но моё мнение не совпадает с мнением программистов Facebook, которые разрабатывали ReactJS.

Далее вымораживает библиотека classname. Стили у тегов динамически на основе введенных данных, нельзя создать. Стили у тегов только строка. И чтобы преобразовать входные переменные в стили, нужна отдельная библиотека classname. Во VueJS уже всё встроено в сам движок. Далее children, передаём информацию в компонент, вот всё хорошо, но только если блок кода один. А если я 2 разных куска кода, хочу вставить в 2 разных места в моём компоненте, то всё никак. До слотов, как VueJS, пока ReactJS не додумался.

программирование изучать тяжело

Но меня убила работа с формами, много тупого и однотипного кода. Жду когда будет Redux и плагин Formik https://github.com/jaredpalmer/formik Пока это упражнение для мазохистов. Но девиз всех мазохистов: «Боль ничто, по сравнению с последующим наслаждением» :-) Во всех упражнениях работа с библиотекой lodash https://lodash.com/ свелась к получению уникального значения ключа. Lodash мощнейшая библиотека для функционального программирования и сводить её функционал к получению уникальной цифры, всё равно, что русский язык сводить к спряжению неправильных глаголов, а химию к получению дурных запахов.

Вот хорошее видео по lodash.

Процесс обучения идёт, пока я полностью прошёл 13 уроков.

Кроме этого, посмотрел обучающее видео по фронтенду. Нашёл занимательные видео по CSS. Теперь Людмила Мжачих мой кумир :-) Оказывается есть многое то, что я не знаю в CSS.

  • CSS наносит ответный удар.
  • Найди 10 отличий, или Как и зачем тестировать верстку.

Людмила Мжачих

Кроме того, посмотрел очень хорошее видео «Фёдор Борщёв От джуниора до СТО. Правила построения карьеры в IT» Автор очень хорошо развивает тему построения карьеры IT-специалиста, как технические навыки, так и «мягкие» навыки.

Фёдор Борщёв

Технических навыков как ни странно нужно не сильно много, чем больше опыта, тем больше выход на передний план «мягкие» навыки: ведение переговоров, управление проектами. Т.е. чем больше специалист начинает решать проблемы фирмы, тем больше его рост и зарплата. И прежде, чем начинать приводить к успеху других, надо начинать с себя. В видео приведены конкретные инструкции по личной эффективности, общению с людьми, ведению переговоров, управлению проектами. Например, шаблон годового плана личностного роста в трелло

Рекомендую это видео на редкость хорошо прочищает мозги.

Аватар пользователя Олег Гребенёв
Олег Гребенёв 16 декабря 2019
7
Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Django
10 месяцев
с нуля
Старт 25 апреля
профессия
от 6 183 ₽ в месяц
Ручное тестирование веб-приложений
4 месяца
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка приложений на языке Java
10 месяцев
с нуля
Старт 25 апреля
профессия
от 5 025 ₽ в месяц
новый
Сбор, анализ и интерпретация данных
9 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Laravel
10 месяцев
с нуля
Старт 25 апреля
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 25 апреля
профессия
от 9 900 ₽ в месяц
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 25 апреля
профессия
новый
Автоматизированное тестирование веб-приложений на JavaScript
8 месяцев
c опытом
в разработке
Старт 25 апреля
профессия
Верстка с использованием последних стандартов CSS
5 месяцев
с нуля
Старт в любое время