Найти в Дзене
BadProger

Что изучать начинающему "верстальщику" и front-end разработчику?

Оглавление

На дворе 2019 год, а людей,которые подрубают Node Js  и используют стандарты EcmaScript называют "верстальщики". Как по мне, это уже оскорбительно, не правда ли? Я считаю,что данных специалистов пора бы называть Front-end разработчики. Да, тут можно развести на эту тему холивар,но все-равно это ни к чему не приведет,а задницы уже будут гореть.

Чтобы понять в какую сторону двигаться, нам нужно вернуться лет так на 10 - 15 назад. В то время понятие "верстальщик" было как никогда актуально. Ведь проделывалась громоздкая работа и танцы с бубном,чтобы решить каку-либо задачую.  Технологий,как сейчас, в принципе не было. Тогда считалось,что исполнение языка js было исключительно на клиенте. Если бы мы вернулись в прошлое и рассказали специалисту о нынешних возможностях js,то он просто бы поугарал над нами и затраллил. К счастью, мы видим прогресс этого языка, за что ему низкий поклон.

Мы что-то отошли от темы. Вернемся к сути. Кто же такие верстальщики

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

Осторожно! Дальше идет субъективное мнение.

Так чем же должны заниматься верстальщики и что они должны знать?

Основная задача верстальщика -  верстка макета,т.е. перенос спроектированного дизайна в кодовое представление, для дальнейшего адекватного восприятия этого кода браузером. Не понятно? Попробую попроще. Тебе прислали макет в формате psd (загуглишь,что за формат такой) и тебе нужно на основе его переписать всё в код,который поймут все браузеры.

В этом то и заключается глобальная задача верстальщика. А что нужно знать для этого?

  • HTML 5. Это каркас страницы,который представляет из себя некий язык в виде тегов,который понятен браузеру. Тут же напрашивается понятие семантического кода. Семантический код - логически правильно построенный html-код. А как понять правильно ли построен код? Для этого уже есть стандарт и специальные html-теги,которые подчеркивают ту самую семантику. К сведению, семантический код является помошником для поисковых роботов,потому что он правильно передает логику построенных блоков. Если у тебя указан тег <header> , то робот и воспримент его как шапку сайта.
  • CSS3. Вот есть у нас каркас страницы,но он отображается,как обычный текст.  - Я ничего не вижу! Почему я написал в html файле form, но я не вижу этой формы? Чет ты дичь гонишь мне. Нет, просто есть еще такой язык стилей. Этот самый язык сложен в понимании,но если ты начинающий,то быстро наговнокодишь и будешь доволен результатом. Так же,как и с HTML5 , в CSS есть стандарт,который недопускает говнокода и делает масштабируемым код. Об этом есть даже книжки. С помощью CSS ты можешь превратить ссылку в кнопку или список в слайдер. 
  • Javascript. Снова этот javascript. Сразу скажу,что данный язык выполняется на клиенте,если при этом не используется Node JS.  Javascript  -  язык,который относится непосредственно к языкам программирования. На данный момент активно набирает популярность Ecma Script. Это новый стандарт языка Javascript. Шутки про отличия js от ecmascript придутся по душе. Обычно на помощь к нативному js приходит библиотека jQuery. Она помогает быстро кодить. Как говорят.

Одни стандарты. Как жить то вообще?

Ответ очевиден - по стандарту. На самом деле все приходит с опытом + мониторинг форумов и сообществ по этой тематике. Больше верстаешь - больше получаешь. В смысле опыта.Вместе с опытом и денег. Гуд? Гуд.

- Погоди, а что там с Front-end разработчиками?

Ах, да. Вот смотри. Проекты становятся похожими друг на друга ,и вот бы сделать шаблон-заготовку,которую можно было бы перетаскивать из проекта в проект. Это бы сократило время на верстку. У меня есть для тебя ответ, мой друг. Подрубай Node JS ,после чего ты станешь уже Front-end разработчиком.

Тут тебе webpack в помощь, или gulp .  Описал задачи и пересобирай проект каждый раз. Вот тебе решение!

- ..........ЧТО?!

Ладно, ладно. Сейчас я тебе все расскажу. Кто такие Front-end разработчики?

Front-end - визуал, т.е. то,что ты видишь в браузере.По сути, это то,что ты сверстал, но тут главная мысль в том,что как ты его сверстал. Front-end - очень глубокая тема,которая требует отдельного поста, поэтому я скажу здесь коротко и ясно. Front-end разработчики  - раса,которая перешла на следующий этап эволюции и они стали выше чем просто верстальщики.Они стали разработчиками.

Инструментарий,который используют front-end разработчики можно использовать для обычной автоматизации верстки. Например, минификация файлов,т.е. их сжатие. Удобно? Естественно.Особенно,если этот процесс происходит при сохранении файла.

В наше время front-end разработчики в большей степени пишут веб-приложения,которые даже можно инсталлировать на телефон (progressive web applications).

Чтобы познать всю прелесть front-end разработки нужно получить знания следующих технологий:

  • NodeJs. Сервер построенный на javascript
  • NPM. Менеджер пакетов. Обычно через него устанавливаются библиотеки.
  • Webpack/Gulp. Сборщики проектов. Все волшебство выполняют они. 
  • Git. Нужно поддерживать версию проектов. Плюс еще в том,что проект будет хранится на бесплатном сервере.
  • Sass/Less/Stylus. Это препроцессоры,которые генерят css код.Просто прими понятие препроцессор. 
  • Pug/Haml. HTML шаблонизатор.
  • EcmaScript. Новый стандарт языка Javascript

Когда все поймешь,то разрабатывать станет проще. Поначалу будет трудно,но после будет эйфория. После поймешь,что тебе будет интересно и в каком направлении развиваться. Мне стало интересно развиваться в направлении web приложений,где используется ReactJS, а тебе в чем-то другом. Решать только тебе.

Подытожим

Так почему же верстальщика нужно называть Front-end разработчиком? Все просто. Потому что разработка происходит визуальной части сайта. Отсюда и следует Front-end.