Комментарии 28
А вот что безусловно нужно изучать — так это принципы работы браузера. Хороший разработчик не просто что-то фигачит, пока не заработает, а знает, почему те или иные вещи работают или нет, еще до того, как начнет писать код. Через JS, скорее всего, потому что именно JS позволяет «пощупать» работу браузера как следует.
А еще нужно сразу же внимательно смотреть на способы code reuse: компонентный подход к UI, модульный код, и вот это всё. Фигачить лендинги на условном реакте — это отличный способ провести десяток+ лет на грани джуна и миддла. Знать, как писать UI, который можно перекомпоновать (и стилизовать иначе) с минимальными трудозатратами — путь к профессиональному росту. Просто потому что, совершенно банально, нормальная архитектура и модульность в UI позволяет написать и потом довольно быстро подправлять, а не написать и долго переписывать с каждым изменением требований, коих будет много.
Я думаю, ты во многом прав, и новичкам действительно стоит обратить внимание на базовые принципы работы браузера. На том же learn.javascript.ru они прекрасно раскрываются.
Однако я вижу важность изучения HTML и CSS в том, что после написания пары тегов и нескольких CSS-свойств ты сразу получаешь некий результат. Ты уже видишь интерфейс, и уже немного понимаешь, как он создается. Возникает моментальный отклик между тем, что ты что-то делаешь и тем, что ты видишь результат. Этот отклик провоцирует продолжать изучать и развиваться в этом еще больше.
И после этого, зарядившись желанием вдохнуть в свой интерфейс жизнь, ты уже с большим интересом читаешь теорию и изучаешь дополнительные материалы.
Рассуждая из личного опыта, новички редко видят ценность в компонентном подходе и других архитектурных стилях, когда они еще почти ничего не умеют. Однако когда они уже попробовали написать простой сайт и смотрят на его код – они сами начинают интересоваться новыми решениями. Поэтому я считаю важным писать об этом.
Однако я вижу важность изучения HTML и CSS в том, что после написания пары тегов и нескольких CSS-свойств ты сразу получаешь некий результат.
Я бы называл это «поиграться», а не «изучать», но согласен. Просто искать информацию о том, что вообще можно сделать, как типа с сайтов css-tricks и подобных — тоже полезно. Просто чтоб знать о том, что сделать можно, а что нет. Но я бы не сказал, что это прям «изучение». Скорее, сопутствующая деятельность. Ей не обязательно быть структурированной и всеохватной.
Во-первых, не Javascript, а JavaScript. Это все-таки не Elasticsearch.
А во-вторых, «какой заяц, какой орел, какая блоха...». JQuery в «если бы я учил фронтенд сегодня», серьезно? React нужно и еще лучше Next.js (для начинающих).
Для начинающих нужно сначала изучить чистый js. Иначе они потом воспринимают другой фреймворк, как что-то совершенно новое и не похожее на предыдущее.
Почему именно их, а не (к примеру) Vue/Angular?
React.js проще чем Angular в разы. jsx проще чем темплейты от ангуляра, меньше всяких элементов синтаксиса. Нету всяких injections, с ними столько слез можно пролить. Толпы декораторов в Ангуляре, на каждый чих — сложна для новичка. Функциональные компоненты писать проще. Все как то интуитивное. Ну и можно выбирать между JavaScript и Typescript. TS хорошо конечно, но JS для начала проще и понятнее. Декларации типов посмотришь в библиотеках ангуляра и поседеешь, для неопытного глаза может показаться сущим кошмаром. Напоминает C++ STL библиотеку в начале нулевых -абракадабра.
Большая часть проектов, с которыми я работаю, написана с помощью JQuery.
И начинающему вряд ли доверять сразу писать что-то в новых проектах, скорее — в старом и малоинтересном для опытных разработчиков добавить слайдер или исправить форму.
Не соглашусь насчет кнопки.
Все можно построить и на чистом js.
Более того я удивляюсь какие костыли гордятся, иногда ведь достаточно повесить стили на скрытый checkbox.
Должно быть, я не до конца ясно изъяснился по поводу JQuery.
Я не считаю его необходимым, однако он часто встречается в проектах, и на то есть свои причины. Он значительно проще в освоении, нежели крупные реактивные фреймворки, и его часто достаточно для реализации базового функционала лендинг-страницы или корпоративного сайта.
Здесь можно возразить, что можно писать на ванильном js. Это действительно так, но когда код разрастается и к нему приходится возвращаться спустя год – разбираться в самописных хелперах становится тяжело.
Также, изучение JQuery на первых этапах обучения помогло мне понять суть js-библиотек и то, как ими пользоваться. Полагаю, это сделало изучение более сложных технологий для меня менее болезненным.
Спасибо за прикрепленный роудмап, в данный момент изучаю реакт (без знания JS приходится подглядывать в learn.javascript.ru), достаточно интересно наблюдать, как после нескольких уроков учишься взаимодействию html, css и реакта. Во мноих случаях возникают сложности с чистым JS, синтаксис у фронта достаточно сильно отличается от бэка в некоторых моментах.
Для таких же, как я, изучающих реакт, советую посмотреть CSS Modules, дико удобная вещь, которая позволяет с легкостью добавить стили к отдельным элементам и оставить код читаемым и красивым.
Наес в общем, не в обиду автору кнш, но что-то нето: с
Вполне вероятно, что ты просто перерос эту информацию. И те статьи, которые были бы полезны тебе, оказались бы слишком сложными для других.
В будущем я постараюсь это учесть. Спасибо за твой комментарий.
А как вошёл в профессию? Начал со студии, или фриланс, что умел, когда устраивался?
Если бы я учил Frontend сегодня. Советы начинающим