10 курсов от СЕО «Хекслет» по JavaScript для опытных разработчиков
Глава школы программирования «Хекслет» Кирилл Мокевнин опубликовал в Twitter тред с подборкой полезных курсов по JavaScript для опытных разработчиков. Рассказываем, кому и зачем они пригодятся.
Глава школы программирования «Хекслет» Кирилл Мокевнин опубликовал в Twitter тред с подборкой полезных курсов по JavaScript для опытных разработчиков. Рассказываем, кому и зачем они пригодятся.
На Хекслете довольно много материалов для опытных разработчиков, но из-за объема курсов, их не всегда легко увидеть. Мучу тред, где делаю краткий обзор развивающих курсов для опытных разработчиков. Сначала JavaScript (front/back). Поехали =>
Подписка на курсы «Хекслет» обойдется в 3900 RUB (131 BYN) в месяц.
Содержание
Трек «Тестирование в JS»
«Два курса + проект по тому как тестировать код. Без привязки к фронту, просто общие концепции и смыслы. Цель курсов в обучении практикам бережливого тестирования. Плюс работа с эффектами, моки, стабы, файлы, асинхронность — вот это все».
Кирилл
Трек — это набор курсов по определенной теме для повышения квалификации и развития инженерного мышления. Треки подходят как для разработчиков с опытом, так и для новичков в качестве задания «со звёздочкой».
На занятиях вы изучите основы автоматизированного тестирования, познакомитесь с подходами и принципами написания тестов, напишете свои первые юнит и функциональные тесты, освоите работу с асинхронным кодом, таймерами и ошибками, а также настроите непрерывную интеграцию и измерите покрытие кода тестами.
«SICP — как много в этом слове. Книга, которая действительно учит писать качественный код и понимать, что такое хорошо и плохо (сорри, Мартин, ты проиграл). На базе этой книги я сделал аж 5 курсов, которые заставят посмотреть на программирование другими глазами».
Кирилл
В основе трека лежит книга Харольда Абельсона и Джеральда Сассмана «Структура и интерпретация компьютерных программ», выпущенная издательством Массачусетского технологического института в далеком 1985 году. Программа включает 47 текстовых уроков, 70 упражнений в тренажере и 240 проверочных тестов.
Курс «JS: Разработка абстракций для асинхронности»
«Самый сок тут в заданиях. Вам придется писать свою собственную абстракцию для работы с асинхронностью (оборачиваем колбеки). Очень мозгодробительно и больно. Задачки вам будут сниться».
Кирилл
Асинхронное программирование — особенно на колбеках — это целое искусство. Но для упрощения кодинга существуют специальные библиотеки с полезными функциями — их вы сможете освоить в процессе работы над собственной абстракцией.
«Курс по ключевым принципам организации кода в объектных языках (там где объекты + методы). Тут есть офигенная тема про связь замыканий с ООП. Немного паттернов builder, proxy, fluent interface. Все это придется реализовать самостоятельно».
Кирилл
На этом курсе вы рассмотрите базовые принципы дизайна ОО-кода и познакомитесь с популярными ООП-библиотеками. Кроме того, вы узнаете, как правильно писать и структурировать код в классовых языках, конфигурировать его в зависимости от задачи, а также создавать удобные интерфейсы объектов для своей предметной области.
«Как продолжение предыдущего курса. Единственный в своем роде курс по полиморфизму (подтипов в первую очередь). Динамическая диспетчеризация, инверсия зависимостей, композиция вместо наследования и многое другое».
Кирилл
Полиморфизм (подтипов) — главная отличительная черта современного ООП. Он помогает значительно уменьшить количество условных конструкций и сделать код расширяемым. Это большая и глубокая тема, требующая серьезной подготовки. Например, нужно разобраться в шаблонах проектирования и принципах SOLID, которые пригодятся каждому JavaScript-разработчику. Вы научитесь понимать разницу между разными видами полиморфизма, а также распознавать и применять шаблоны проектирования, такие как стратегия, фабрика, состояние, декоратор и нулл-объект.
«Ну и завершает тему ООП курс про глубокое погружение в смысл классов. Все про наследование, различные принципы (привет, Барбара!) и то, как правильно структурировать связи в коде».
Кирилл
Наследование — одна из самых сложных концепций в объектно-ориентированном программировании. Это не только новые синтаксические конструкции, но и особый способ структурирования кода. Говоря о наследовании, нужно понимать его ограничения и применять принцип там, где он наиболее уместен. Курс также разбирает абстрактные классы, принцип подстановки Лисков, паттерн «шаблонный метод» и многое другое.
«Курс по обработке ошибок. Сквозь весь курс придется реализовывать свою собственную файловую систему работающую в памяти. Придется покрутить деревьями и сделать кучу рекурсивных ФВП. Задания для любителей поломать мозг».
Кирилл
Этот курс посвящён обработке ошибок в программах на JavaScript. Рассматриваются такие темы, как коды возврата и исключения. В течение курса идёт работа над собственной файловой системой в памяти.
«Один из моих любимых курсов про ключевые принципы организации кода на фронте. MVC model 1, организация состояния, конечные автоматы, I18n, тестируемость. Все практики без фреймворков — все что вы учите тут, применяется абсолютно к любым толстым клиентам».
Кирилл
Несмотря на обилие различных фреймворков и способов разработки фронтенд приложений, существуют фундаментальные принципы, которые используются повсеместно и практически не меняются. Они касаются разбиения приложения на слои (например, MVC), выделения состояния и его организации, работы с текстами, контроля данных форм. Этот курс рассказывает о том, как строить архитектуру приложения без привязки к конкретным решениям и их особенностям.
На курсе вы научитесь, создавать модульные и легко расширяемые фронтенд-приложения, правильно разделять их на слои и структурировать, а еще использовать теорию автоматов для описания происходящих в коде процессов.
«Курс, где надо будет серьезно пожонглировать прототипами. Практика выносит мозг и заставляет потеть».
Кирилл
Этот курс посвящён реализации объектно-ориентированного программирования в JavaScript — прототипам. Он включает 10 уроков (видео и/или текст), 10 упражнений в тренажере и 35 проверочных тестов.
Курс «JS: Предметно-ориентированное проектирование»
«Ну и, наконец, DDD (Предметно-ориентированное программирование). Как проектировать домен, что такое репозитории, зачем нужны сервисы. На эти и многие другие вопросы отвечает этот курс. В практике создается система продажи билетов в кинотеатре».
Кирилл
Курс посвящен процессу создания программных абстракций — моделей предметных областей. На примере онлайн-системы для продажи билетов в кинотеатр вы рассмотрите выделение правильных сущностей и нахождение связей между ними, а также инверсии контроля, принципе инверсии зависимостей и конечных автоматах. А также научитесь использовать ПО-дизайн в своей повседневной практике и правильно строить архитектуру сложных бизнес-приложений, разделяя код на слои в соответствии с шаблоном Service Layer.
С маленьким ребёнком на удалёнке: сколько стоит час тишины дома, в коворкинге и в мини-офисе
Индийская IT-компания во время пандемии отправила больше 10 тысяч сотрудников по домам. Сидеть за работой они стали дольше, в основном сверх обычных часов, а успевали примерно столько же или чуть меньше: продуктивность упала на 8–19%. Сильнее всех просели те, у кого дома были дети.
Кто садится за ноутбук первый раз за день, уложив ребёнка, знает это и без исследований. Но стол на кухне бесплатный, а коворкинг стоит денег. Поэтому уходить из дома или нет, обычно решают финансы.
Вы много сделали, но никто этого не заметил. Как показать, на что повлиял ваш код
«Руководитель, каким бы замечательным он ни был, вероятно, тоже не помнит всего, что вы сделали», — пишет Джулия Эванс, разработчица и автор блога о программировании. Она советует записывать все результаты и рядом с каждым ответ на вопрос, можно ли привязать к нему цифры.
Попробуем разобраться, как найти такие цифры для кода, что мерить, если работа не про выручку, и о чем рассказать на грейд-ревью вместо списка тикетов.
Агенты пишут код, который приходится читать разработчикам. Как не утонуть в ревью
На бумаге использование агентов выглядит отлично: в компаниях, внедривших AI в разработку, строк кода стало больше на 30%, а запросов на слияние на 23%. Но эти метрики никак не учитывают, дошло ли что-нибудь до пользователей. Исследователи из Гарварда заглянули в Jira и не нашли значимого роста закрытых задач — разница застревает в ревью.
В статье попробуем разобраться, что считать вместо строк кода и как разгрузить ревьюеров.
«Этот код выглядит ужасно, но работает». Что чинить первым, а что лучше не трогать
«Худшая стратегическая ошибка, какую может совершить софтверная компания», — так в апреле 2000 года Джоэл Спольски, сооснователь Fog Creek Software, назвал решение Netscape переписать код с нуля. С выхода версии 4.0 прошло почти три года, а версии 5.0 так и не случилось. Соблазн снести «ужасный» модуль знаком каждому, кто открывал чужой код ради мелкой правки.
Хотите сообщить важную новость? Свяжитесь с редакцией через страницу контактов
Главные события и полезные ссылки в нашем Telegram-канале
Абмеркаванне
Каментуйце без абмежаванняў
Рэлацыраваліся? Цяпер вы можаце каментаваць без верыфікацыі акаўнта.
Рэлацыраваліся? Цяпер вы можаце каментаваць без верыфікацыі акаўнта.