[JavaScript, Программирование, Учебный процесс в IT, Карьера в IT-индустрии, Читальный зал] Библиотека Frontend-разработчика, часть 3: Литература уровня «Middle» и выше
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
ПредисловиеЯвление деления разработчиков на уровни очень распространено. Даже в вакансиях чаще всего пишут не просто "Frontend-разработчик", а более развернуто - "Junior/Middle/Senior/${место для вашей должности} Frontend-разработчик". Для чего? С помощью такого деления легче делегировать задачи в команде. У каждого разработчика своя особая матрица компетенций, свои навыки, которые он оттачивал месяцами, а то и годами. С помощью такого деления процесс разработки ускоряется в разы.
Вообще на рынке (я смотрю на рынок стран СНГ) по состоянию на начало 2021 года среди Frontend-разработчиков имеют место быть такие должности (от низшего уровня, к наивысшему и без привязки к инструментам/библиотекам)
- Intern Frontend-developer - другими словами - стажер
- Junior Frontend-developer - уровень выше начального, уже более менее самостоятельная единица
- Middle Frontend-developer - самостоятельная единица, командный игрок, много умеет, но чаще всего в одной сфере / направлении. Через тернии к звездам или стремится к Senior
- Senior Frontend-developer* - старший, чаще всего в компаниях самый опытный. Человек, который попробовал многие инструменты, много может, много пробует.
- Architector Frontend-developer** - человек, который часто занимается вопросами выбора технологий, решений в вопросах архитектуры будущего приложения
- TeamLead - глава команды - распределеяет задачи, связующее звено между командой разработки и бизнесом. Хороший управленец и разработчик
* - он может быть также ведущим разработчиком, который выполняет все те же функци, что и выполнял senior, но при этом отчасти может выполнять функции архитектора. Я видел компании, где понятия "ведущий разработчик" и "Senior developer" отождествлялись. ** - Архитектор - достаточно размытое понятие. Иногда, в командах нет архитектора, но при этом есть techlead. Если загуглить, то он решает все те же задачи, что и архитектор.
Из списка выше и примечаний можно сказать одно - все эти "звания" относительны. И действительно, разработчик от компании к компании может занимать разные должности - "уровни". Например, в больших компаниях чаще всего занижают уровень - требования там выше в профессиональном плане, в плане знаний и умений. Но даже несмотря на все эти условности, существует литература по уровням. Стажеру нет смысла брать книги с полки техлида о микросервисной архитектуре - все придет постепенно. Сейчас у стажера есть свои, не менее важные задачи, важные книги, материалы, интернет-ресурсы, которые он должен изучить. Эта статья как раз о том сборнике книг для разработчиков уровня "Middle и выше". Секреты Javascript Ниндзя. Джон Резиг, Беэр Бибо, Иосип МарасУ каждой книги есть своя цель, и у этой книги она тоже есть. Цель - напомнить вам о том, что есть в чистом js, что есть в браузере, что такое DOM и какие есть возможности у него.
Она буквально вам говорит: "Отвлекитесь от фреймворков и библиотек - посмотрите что умеет язык без этого!".
На страницах есть краткая информация для повторения основных понятий в js, некоторых стандартных приемов работы, например, с событиями. Все это приправлено от души хорошими примерами кода.
Книга хороша своим грамотным делением на главы и простым языком изложения. Тот самый случай, когда на ночь можно почитать не только с удовольствием, но и с пользой. Рефакторинг кода на Javascript. Мартин ФаулерМы поняли как работают события, что такое замыкания, как использовать генераторы, как убежать от адской пирамиды вызовов и самое главное - с помощью чего. Теперь время писать код. Вот только мы не знаем самого главного в любом коде - способов его организации.
На просторах интернета и в книгах, о которых я напишу ниже вы сможете увидеть такие понятия как DRY, SOLID, KISS, YAGNI - это все общие положения, немного размытые, о построении архитектуры кода, приложения.
В Книге Фаулера идет полное описание каждого действия в момент рефакторинга кода. И да, Мартин Фаулер описал все способы - поверьте, Фаулер докопался и описал даже способ рефакторинга "Вынос в функцию". По факту - книга полноценный справочник или очень хорошая настольная энциклопедия, которая служит на благо архитектуры вашего кода. Javascript для профессионалов. Джон Резиг. Джон Резиг решил не вдаваться в подробности и не стал делать как многие авторы - описывать в первых главах все ключевые зарезервированные слова, встроенные методы перебора массивов и т. д.
Книга Резига имеет скорее обзорный характер, она рассказывает о языке в целом, о его перспективах, некоторых интересных и уже всеми забытых методах валидации форм, об интересных моментах в работе с событиями в браузерах и о браузерах в целом. Не скажу, что это мега-полезная книга. Книга скорее служит исторической справкой об языке. Может быть, у меня сложилось такое ощущения, потому что я первой прочел "Секреты Javascript ниндзя". В той книге информации было как-то больше, но обращу внимание на начало второго абзаца - Труд Резига имеет обзорный характер. Возможно, в этом есть свои плюсы. Погружение в Паттерны Проектирования от RefactoringGuruА что такое паттерны?
Паттерн проектирования — это типичный способ решения какой-либо часто встречающейся проблемы, возникающей при проектировании программ. Паттерны не являются готовыми решениями, которые можно сразу скопировать в свой код. Они представляют собой общее описание решения проблемы, которое после некоторой доводки можно использовать в самых разных ситуациях.Взято с RefactoringGuru
Я уже говорил об DRY, SOLID, KISS, YAGNI. В электронной книге или на официальном сайте вы сможете ознакомиться с данными понятиями более подробно.
Авторов можно поддержать - купить электронную версию, что я советую всем сделать. Труд был проделан огромадный. Я всегда был сторонником идеи "Если можешь объяснить ребенку что-то - значит ты владеешь этим на все 100". Книга "Погружение в Паттерны Проектирования" будет понятна наверное даже ребенку, потому что все очень подробно описано как в главах об архитектуре кода, так и в главах про устройство и построение архитектуры всего приложения.Естественно вся книга приправлена хорошими примерами реализации на псевдокоде, сравнительной характеристикой паттернов, выделением плюсов и минусов каждого решения и уместностью его использования. Чистая архитектура. Искусство разработки программного обеспечения. Роберт МартинДа, последние книги про архитектуру, но иначе никак - разработчик не должен писать код ради кода, он должен думать о пригодности этого кода в будущем. Даже не так - разработчик должен писать код ради бизнеса. А чтобы он был ради бизнеса, он должен быть поддерживаемым в будущем.
Роберт Мартин писал книгу не для Frontend-developer`ов, а для всех разработчиков и им сочувствующих. Мартин объяснил почему стоит уделять внимание архитектуре, как проводить архитектурный рефакторинг, с основными принципами, о которых также написано в refactoringGuru. (в refactoringGuru, как по мне, более подробно раскрыты некоторые моменты).
Вопрос архитектуры приложений всегда для нас будет стоять ребром, потому что размер приложений с каждым днем увеличивается, а следовательно увеличивается их сложность. Если мы изначально будем строить неструктурированный продукт - бизнес загнется, а вместе с ним и мы с вами. ЗаключениеЛучший код там, где нас нет. Лучший код тот, который мы не писали. Любой код, который напишет один человек всегда будет заставлять другого напрягать голову и читать его.
Именно поэтому в этой части, я уделил больше внимания архитектуре приложений, а не возможностям функционального, структурного, объектно-ориентированного программирования на javascript.
Уделите время на архитектуру - она поможет другому разработчику чувствовать себя увереннее в вашем коде.
Спасибо за внимание!
===========
Источник:
habr.com
===========
Похожие новости:
- [Разработка веб-сайтов, JavaScript, SvelteJS] Компилируем Svelte в уме. Часть 1/3 (перевод)
- [Программирование микроконтроллеров] STM32 Assembler Editor: Гора так и не сдвинулась с места, Магомед идет к ней
- [Промышленное программирование, Программирование микроконтроллеров] Программирование Modbus RTU Master на примере Simatic S7-1200 и ПЧ Sinamics V20
- [Программирование, Алгоритмы, Компиляторы] Модификация исполняемого кода как способ реализации массивов с изменяемым границами
- [Big Data, Машинное обучение, Карьера в IT-индустрии] Самообучение в Data science, с нуля до Senior за два года
- [Программирование, Читальный зал] Дао программирования (перевод)
- [Программирование, Читальный зал, История IT, Софт, Старое железо] Программистское везение
- [Семантика, Программирование, Prolog, Бизнес-модели] Проектируем мультипарадигменный язык программирования. Часть 5 — Особенности логического программирования
- [Читальный зал, Научно-популярное, Химия, Экология] Экологически чистое освещение: люминесцентная гидрофобная древесина
- [Разработка веб-сайтов, JavaScript, Программирование, Проектирование и рефакторинг] Как я реализовал MVC в JavaScript (перевод)
Теги для поиска: #_javascript, #_programmirovanie (Программирование), #_uchebnyj_protsess_v_it (Учебный процесс в IT), #_karera_v_itindustrii (Карьера в IT-индустрии), #_chitalnyj_zal (Читальный зал), #_javascript, #_professionalizm (профессионализм), #_frontendrazrabotka (frontend-разработка), #_knigi_po_programmirovaniju (книги по программированию), #_karera_programmista (карьера программиста), #_javascript, #_programmirovanie (
Программирование
), #_uchebnyj_protsess_v_it (
Учебный процесс в IT
), #_karera_v_itindustrii (
Карьера в IT-индустрии
), #_chitalnyj_zal (
Читальный зал
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 05:59
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
ПредисловиеЯвление деления разработчиков на уровни очень распространено. Даже в вакансиях чаще всего пишут не просто "Frontend-разработчик", а более развернуто - "Junior/Middle/Senior/${место для вашей должности} Frontend-разработчик". Для чего? С помощью такого деления легче делегировать задачи в команде. У каждого разработчика своя особая матрица компетенций, свои навыки, которые он оттачивал месяцами, а то и годами. С помощью такого деления процесс разработки ускоряется в разы. Вообще на рынке (я смотрю на рынок стран СНГ) по состоянию на начало 2021 года среди Frontend-разработчиков имеют место быть такие должности (от низшего уровня, к наивысшему и без привязки к инструментам/библиотекам)
* - он может быть также ведущим разработчиком, который выполняет все те же функци, что и выполнял senior, но при этом отчасти может выполнять функции архитектора. Я видел компании, где понятия "ведущий разработчик" и "Senior developer" отождествлялись. ** - Архитектор - достаточно размытое понятие. Иногда, в командах нет архитектора, но при этом есть techlead. Если загуглить, то он решает все те же задачи, что и архитектор.
Она буквально вам говорит: "Отвлекитесь от фреймворков и библиотек - посмотрите что умеет язык без этого!". На страницах есть краткая информация для повторения основных понятий в js, некоторых стандартных приемов работы, например, с событиями. Все это приправлено от души хорошими примерами кода. Книга хороша своим грамотным делением на главы и простым языком изложения. Тот самый случай, когда на ночь можно почитать не только с удовольствием, но и с пользой. Рефакторинг кода на Javascript. Мартин ФаулерМы поняли как работают события, что такое замыкания, как использовать генераторы, как убежать от адской пирамиды вызовов и самое главное - с помощью чего. Теперь время писать код. Вот только мы не знаем самого главного в любом коде - способов его организации. На просторах интернета и в книгах, о которых я напишу ниже вы сможете увидеть такие понятия как DRY, SOLID, KISS, YAGNI - это все общие положения, немного размытые, о построении архитектуры кода, приложения. В Книге Фаулера идет полное описание каждого действия в момент рефакторинга кода. И да, Мартин Фаулер описал все способы - поверьте, Фаулер докопался и описал даже способ рефакторинга "Вынос в функцию". По факту - книга полноценный справочник или очень хорошая настольная энциклопедия, которая служит на благо архитектуры вашего кода. Javascript для профессионалов. Джон Резиг. Джон Резиг решил не вдаваться в подробности и не стал делать как многие авторы - описывать в первых главах все ключевые зарезервированные слова, встроенные методы перебора массивов и т. д. Книга Резига имеет скорее обзорный характер, она рассказывает о языке в целом, о его перспективах, некоторых интересных и уже всеми забытых методах валидации форм, об интересных моментах в работе с событиями в браузерах и о браузерах в целом. Не скажу, что это мега-полезная книга. Книга скорее служит исторической справкой об языке. Может быть, у меня сложилось такое ощущения, потому что я первой прочел "Секреты Javascript ниндзя". В той книге информации было как-то больше, но обращу внимание на начало второго абзаца - Труд Резига имеет обзорный характер. Возможно, в этом есть свои плюсы. Погружение в Паттерны Проектирования от RefactoringGuruА что такое паттерны? Паттерн проектирования — это типичный способ решения какой-либо часто встречающейся проблемы, возникающей при проектировании программ. Паттерны не являются готовыми решениями, которые можно сразу скопировать в свой код. Они представляют собой общее описание решения проблемы, которое после некоторой доводки можно использовать в самых разных ситуациях.Взято с RefactoringGuru
Авторов можно поддержать - купить электронную версию, что я советую всем сделать. Труд был проделан огромадный. Я всегда был сторонником идеи "Если можешь объяснить ребенку что-то - значит ты владеешь этим на все 100". Книга "Погружение в Паттерны Проектирования" будет понятна наверное даже ребенку, потому что все очень подробно описано как в главах об архитектуре кода, так и в главах про устройство и построение архитектуры всего приложения.Естественно вся книга приправлена хорошими примерами реализации на псевдокоде, сравнительной характеристикой паттернов, выделением плюсов и минусов каждого решения и уместностью его использования. Чистая архитектура. Искусство разработки программного обеспечения. Роберт МартинДа, последние книги про архитектуру, но иначе никак - разработчик не должен писать код ради кода, он должен думать о пригодности этого кода в будущем. Даже не так - разработчик должен писать код ради бизнеса. А чтобы он был ради бизнеса, он должен быть поддерживаемым в будущем. Роберт Мартин писал книгу не для Frontend-developer`ов, а для всех разработчиков и им сочувствующих. Мартин объяснил почему стоит уделять внимание архитектуре, как проводить архитектурный рефакторинг, с основными принципами, о которых также написано в refactoringGuru. (в refactoringGuru, как по мне, более подробно раскрыты некоторые моменты). Вопрос архитектуры приложений всегда для нас будет стоять ребром, потому что размер приложений с каждым днем увеличивается, а следовательно увеличивается их сложность. Если мы изначально будем строить неструктурированный продукт - бизнес загнется, а вместе с ним и мы с вами. ЗаключениеЛучший код там, где нас нет. Лучший код тот, который мы не писали. Любой код, который напишет один человек всегда будет заставлять другого напрягать голову и читать его. Именно поэтому в этой части, я уделил больше внимания архитектуре приложений, а не возможностям функционального, структурного, объектно-ориентированного программирования на javascript. Уделите время на архитектуру - она поможет другому разработчику чувствовать себя увереннее в вашем коде. Спасибо за внимание! =========== Источник: habr.com =========== Похожие новости:
Программирование ), #_uchebnyj_protsess_v_it ( Учебный процесс в IT ), #_karera_v_itindustrii ( Карьера в IT-индустрии ), #_chitalnyj_zal ( Читальный зал ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 05:59
Часовой пояс: UTC + 5