10 курсов от СЕО «Хекслет» по JavaScript для опытных разработчиков

Глава школы программирования «Хекслет» Кирилл Мокевнин опубликовал в Twitter тред с подборкой полезных курсов по JavaScript для опытных разработчиков. Рассказываем, кому и зачем они пригодятся.

Оставить комментарий
Подписка на курсы «Хекслет» обойдется в 3900 RUB (131 BYN) в месяц. 
Содержание

Трек «Тестирование в JS»

«Два курса + проект по тому как тестировать код. Без привязки к фронту, просто общие концепции и смыслы. Цель курсов в обучении практикам бережливого тестирования. Плюс работа с эффектами, моки, стабы, файлы, асинхронность — вот это все».

Кирилл

Трек — это набор курсов по определенной теме для повышения квалификации и развития инженерного мышления. Треки подходят как для разработчиков с опытом, так и для новичков в качестве задания «со звёздочкой».

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

Узнать больше и записаться

Трек «СИКП на JS»

«SICP — как много в этом слове. Книга, которая действительно учит писать качественный код и понимать, что такое хорошо и плохо (сорри, Мартин, ты проиграл). На базе этой книги я сделал аж 5 курсов, которые заставят посмотреть на программирование другими глазами».
Кирилл

В основе трека лежит книга Харольда Абельсона и Джеральда Сассмана  «Структура и интерпретация компьютерных программ», выпущенная издательством Массачусетского технологического института в далеком 1985 году. Программа включает 47 текстовых уроков, 70 упражнений в тренажере и 240 проверочных тестов.

Узнать больше и записаться

Курс «JS: Разработка абстракций для асинхронности»

«Самый сок тут в заданиях. Вам придется писать свою собственную абстракцию для работы с асинхронностью (оборачиваем колбеки). Очень мозгодробительно и больно. Задачки вам будут сниться».

Кирилл

Асинхронное программирование — особенно на колбеках — это целое искусство. Но для упрощения кодинга существуют специальные библиотеки с полезными функциями — их вы сможете освоить в процессе работы над собственной абстракцией.

Узнать больше и записаться

Курс «JS: Объектно-ориентированный дизайн»

«Курс по ключевым принципам организации кода в объектных языках (там где объекты + методы). Тут есть офигенная тема про связь замыканий с ООП. Немного паттернов builder, proxy, fluent interface. Все это придется реализовать самостоятельно».

Кирилл

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

Узнать больше и записаться

Курс «JS: Полиморфизм»

«Как продолжение предыдущего курса. Единственный в своем роде курс по полиморфизму (подтипов в первую очередь). Динамическая диспетчеризация, инверсия зависимостей, композиция вместо наследования и многое другое».

Кирилл

Полиморфизм (подтипов) — главная отличительная черта современного ООП. Он помогает значительно уменьшить количество условных конструкций и сделать код расширяемым. Это большая и глубокая тема, требующая серьезной подготовки. Например, нужно разобраться в шаблонах проектирования и принципах SOLID, которые пригодятся каждому JavaScript-разработчику. Вы научитесь понимать разницу между разными видами полиморфизма, а также распознавать и применять шаблоны проектирования, такие как стратегия, фабрика, состояние, декоратор и нулл-объект.

Узнать больше и записаться

Курс «JS: Погружаясь в классы»

«Ну и завершает тему ООП курс про глубокое погружение в смысл классов. Все про наследование, различные принципы (привет, Барбара!) и то, как правильно структурировать связи в коде».

Кирилл

Наследование — одна из самых сложных концепций в объектно-ориентированном программировании. Это не только новые синтаксические конструкции, но и особый способ структурирования кода. Говоря о наследовании, нужно понимать его ограничения и применять принцип там, где он наиболее уместен. Курс также разбирает абстрактные классы, принцип подстановки Лисков, паттерн «шаблонный метод» и многое другое.

Узнать больше и записаться

Курс «JS: Обработка ошибок»

«Курс по обработке ошибок. Сквозь весь курс придется реализовывать свою собственную файловую систему работающую в памяти. Придется покрутить деревьями и сделать кучу рекурсивных ФВП. Задания для любителей поломать мозг».

Кирилл

Этот курс посвящён обработке ошибок в программах на JavaScript. Рассматриваются такие темы, как коды возврата и исключения. В течение курса идёт работа над собственной файловой системой в памяти.

Узнать больше и записаться

Курс «JS: Архитектура фронтенда»

«Один из моих любимых курсов про ключевые принципы организации кода на фронте. MVC model 1, организация состояния, конечные автоматы, I18n, тестируемость. Все практики без фреймворков — все что вы учите тут, применяется абсолютно к любым толстым клиентам».

Кирилл

Несмотря на обилие различных фреймворков и способов разработки фронтенд приложений, существуют фундаментальные принципы, которые используются повсеместно и практически не меняются. Они касаются разбиения приложения на слои (например, MVC), выделения состояния и его организации, работы с текстами, контроля данных форм. Этот курс рассказывает о том, как строить архитектуру приложения без привязки к конкретным решениям и их особенностям.

На курсе вы научитесь, создавать модульные и легко расширяемые фронтенд-приложения, правильно разделять их на слои и структурировать, а еще использовать теорию автоматов для описания происходящих в коде процессов.

Узнать больше и записаться

Курс «JS: Прототипы»

«Курс, где надо будет серьезно пожонглировать прототипами. Практика выносит мозг и заставляет потеть».

Кирилл

Этот курс посвящён реализации объектно-ориентированного программирования в JavaScript — прототипам. Он включает 10 уроков (видео и/или текст), 10 упражнений в тренажере и 35 проверочных тестов.

Узнать больше и записаться

Курс «JS: Предметно-ориентированное проектирование»

«Ну и, наконец, DDD (Предметно-ориентированное программирование). Как проектировать домен, что такое репозитории, зачем нужны сервисы. На эти и многие другие вопросы отвечает этот курс. В практике создается система продажи билетов в кинотеатре».

Кирилл

Курс посвящен процессу создания программных абстракций — моделей предметных областей. На примере онлайн-системы для продажи билетов в кинотеатр вы рассмотрите выделение правильных сущностей и нахождение связей между ними, а также инверсии контроля, принципе инверсии зависимостей и конечных автоматах. А также научитесь использовать ПО-дизайн в своей повседневной практике и правильно строить архитектуру сложных бизнес-приложений, разделяя код на слои в соответствии с шаблоном Service Layer.

Узнать больше и записаться

Ищем авторов полезных материалов об ИТ. Откликнись на вакансию


Читать на dev.by