JavaScript-разработчик: кто это, обязанности, зарплаты и как им стать в 2022 году. Обзор профессии.

Обучение
Содержание

Кто такой JavaScript-разработчик?

JavaScript-разработчик — это разработчик программного обеспечения, который специализируется на разработке, тестировании и внедрении программного обеспечения с использованием языка программирования JavaScript. JavaScript не следует путать с Java — несмотря на схожие названия, это два совершенно разных языка программирования.

Что делают JavaScript разработчики и чем занимаются?

Обязанности на примере одной из вакансий:

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

Что должен знать и уметь JavaScript разработчик? 

Требования к JavaScript разработчикам:

  • JavaScript
  • Знание ООП
  • Git
  • npm
  • Знание различных подходов к разработке
  • Владение инструментами отладки
  • Умение тестировать код на JavaScript

Востребованность и зарплаты JavaScript разработчиков

На сайте поиска работы в данный момент открыто 16 164 вакансии, с каждым месяцем спрос на JavaScript разработчиков растет.

Количество вакансий с указанной зарплатой JavaScript разработчика по всей России:

  • от 95 000 руб. – 4 826
  • от 175 000 руб. – 2 821
  • от 260 000 руб. – 1 337
  • от 340 000 руб. – 582
  • от 425 000 руб. – 205

Вакансий с указанным уровнем дохода по Москве:

  • от 90 000 руб. – 1 724
  • от 185 000 руб. – 1 140
  • от 275 000 руб. – 518
  • от 370 000 руб. – 187
  • от 460 000 руб. – 69

Вакансий с указанным уровнем дохода по Санкт-Петербургу:

  • от 85 000 руб. – 809
  • от 175 000 руб. – 514
  • от 265 000 руб. – 220
  • от 350 000 руб. – 105
  • от 440 000 руб. – 29

Как стать JavaScript разработчиком и где учиться?

Варианты обучения для JavaScript-разработчика с нуля:

  • Самостоятельное обучение – всевозможные видео на YouTube, книги, форумы, самоучители и т.д. Плюсы – дешево или очень недорого. Минусы – нет системности, самостоятельное обучение может оказаться неэффективным, полученные навыки могут оказаться невостребованными у работодателя;
  • Классическое оффлайн-образование в ВУЗах, колледжах и университетах. Диплом является преимуществом при устройстве на работу, при этом обучение обычно длится не менее четырех лет, часто дают устаревшие неактуальные знания;
  • Онлайн-обучение. Пройти курс можно на одной из образовательных платформ. Такие курсы рассчитаны на людей без особой подготовки, поэтому подойдут большинству людей. Обычно упор в онлайн-обучении делается на практику – это позволяет быстро пополнить портфолио и устроиться на работу сразу после обучения.

Ниже сделали обзор 15+ лучших онлайн-курсов.

15+ лучших курсов для обучения JavaScript разработчика: подробный обзор

Стоимость: Рассрочка на 34 месяца — 4 908 ₽ / мес
  • Программа из 12 курсов
  • Длительность 12 месяцев
  • 4 проекта в портфолио
  • Помощь в трудоустройстве

Кому подойдёт этот курс:

  • Тем, кто хочет начать карьеру программиста
    Вы с нуля научитесь верстать, программировать на JavaScript и разрабатывать полноценные сайты. Освоите полный цикл создания веб-проектов и сможете устроиться в IT-компанию.
  • Начинающим разработчикам
    Вы познакомитесь с Node.js и фреймворками и углубите свои знания. Сможете перейти на позицию fullstack-разработчика в веб-студии или создавать сайты «под ключ» на фрилансе.
  • Опытным специалистам
    Вы изучите Vue.js, React.js или Angular и сможете создавать сложные интерактивные интерфейсы. Получите soft skills для профессионального развития и поймёте, куда двигаться дальше.

Чему вы научитесь:

  • Верстать сайты
    Познакомитесь с HTML и CSS, сможете верстать лендинги и многостраничные адаптивные сайты. Научитесь находить ошибки в чужой вёрстке и исправлять уже готовый код.
  • Работать с фреймворками
    Изучите React.js, Vue.js или Angular и научитесь создавать динамичные интерактивные пользовательские интерфейсы.
  • Разрабатывать backend сайтов
    Узнаете принципы объектно-ориентированного программирования и сможете разрабатывать сайты с разным функционалом на JavaScript с помощью Node.JS.
  • Работать с базами данных
    Узнаете, чем различаются MySQL, Redis и MongoDB. Научитесь управлять большими объёмами данных и получать нужное с помощью запросов.
  • Использовать Git
    Научитесь работать с распределённой системой контроля версий, сможете легко вносить или откатывать изменения и работать над проектом в большой команде.
  • Работать с сетью
    Поймёте, как устроено клиент-серверное взаимодействие, научитесь работать с API и сможете настраивать связь frontend`а и backend`a в рамках одного проекта.

Программа:

Вас ждут онлайн-лекции и практические задания на основе реальных кейсов.
100+ тематических модулей, 500+ онлайн-уроков.

Основные курсы

  1. Веб-вёрстка. Базовый уровень
  • Введение
  • Базовый HTML
  • Базовый CSS
  • Работа с макетом
  • HTML-разметка
  • Flexbox
  • Стилизация
  • Продвинутый HTML
  • Продвинутый CSS
  • Сетки
  • Адаптивность. Десктоп и планшет
  • Адаптивность. Мобильные устройства
  • JavaScript для верстальщика
  • Доступность
  • Кросс-браузерность
  • База знаний
  • Работа с хостингом
  • Анимация
  • Курсовая (мини-проект) — КЕЙС
  1. Веб-вёрстка. Продвинутый уровень
  • Вёрстка HTML-писем
  • SVG
  • Анимация на JS
  • Оптимизация и процесс загрузки
  • Сборщики
  • Препроцессоры и Постпроцессоры
  • CSS Grid
  • CMS
  • База знаний 2 (возможно будет)
  • Будущее верстки
  • Диплом. Сайт из трех страниц (фрагмент интернет-магазина)
  1. Базовый уровень
  • Введение
  • Переменные и работа с числами
  • Строки, boolean и условные операторы
  • Массивы и циклы
  • Функции
  • Объекты
  • Введение в DOM
  • Константы, области видимости и замыкания
  • Преобразование типов и нестрогие сравнения
  • Обработка событий и пользовательский ввод
  • Разработчик и soft skills
  1. Продвинутый уровень
  • Модули
  • npm, package.json
  • Event loop и асинхронная разработка
  • Методы объекта и прототипы
  • Тестирование
  • Обработка ошибок
  • Общение с сервером, async/await
  • События
  • ООП и его реализация в JavaScript
  • ФП, работа с массивами и строками
  1. Node.js
  • Введение в курс
  • Подготовка рабочей среды
  • Пишем Hello, world!
  • Решаем базовые задачи
  • Асинхронный код
  • Express.js
  • Реляционные базы данных
  • Нереляционные базы данных
  • CLI-программы
  • Продвинутые понятия. Streams, генераторы, итераторы
  • Real-time & WebSockets
  • Pro tips

Курс на выбор

  1. JavaScript-фреймворкjs
  • Основы Vue
  • Создание проекта
  • Каталог товаров
  • Пагинация и фильтрация
  • Страница товара
  • Корзина
  • Работа с API. Список товаров
  • Работа с API. Оформление заказов
  1. React.js
  • Введение в React
  • Создание проекта
  • Компоненты на примере новостной карточки Reddit
  • Больше о компонентах и введение в тестирование компонентов
  • Работа с публичным API на примере Reddit
  • Введение в Redux на примере новостной ленты
  • Использование Redux-Thunk на примере бесконечной ленты
  • Сайдбар + роутинг
  • Формы на примере комментариев и карточки поста
  • Оптимизируем приложение
  • SSR + Next.JS
  • Бонусный модуль: MobX
  1. Angular
  • Введение в Angular
  • Вывод списка товаров
  • RxJS: поиск товаров
  • Работа с http. Улучшенный список товаров
  • RxJS & Components Advanced: корзина товаров
  • Роутинг: страница товара
  • Формы: checkout
  • Авторизация и защищённые зоны
  • Тестирование
  • Способы организации обмена данными
  • Advanced Practice
  • Advanced Practice: куда расти

Дополнительные курсы

  1. Универсальные знания программиста
  • Как стать первоклассным программистом
  • Как искать заказы на разработку
  • Личный бренд разработчика
  • Photoshop для программиста
  • Основы языка запросов SQL
  • Вёрстка email-рассылок. Советы на реальных примерах
  1. Курс по слепому методу печати
  • Руководство по возможностям тренажёра Ratatype
  1. Основы Photoshop
  • Установка Adobe Photoshop. Горячие клавиши
  • Введение в Photoshop
  • Инструменты
  • Работа с файлами и изображениями
  • Принципы работы со слоями и масками
  • Эффекты
  • Продвинутые приёмы обтравки/ретуши
  • Принципы построения растровых изображений
  • Бонус. Как освоить Pen Tool
  • Практика коллажирования для создания Key Visual
  • Бонус-модуль. Причиняй добро
  • Практика создания самых оригинальных мемов для социальных сетей
  1. Figma
  • Введение в Figma. Обзор возможностей
  • Работа с графикой
  • Редактор Figma — модульные сетки и монтажные области
  • Создание и настройка компонентов, работа с эффектами
  • Создание вложенных компонентов. Auto Layout
  • Организация рабочего пространства компонентов и стилей
  • Командная работа, контроль версий и передача макетов в разработку
  • Прототипирование
  • Figma Animate
  • Бонус-модуль. Обзор и применение Figma plugins
  1. Работа в командной строке Bash
  • Что такое командная строка
  • Работа с файлами и папками
  • Авторизация и права доступа
  • Процессы, сервисы и задачи
  • Конфигурация и инструменты
  • Написание скриптов на Bash
  • Использование Bash на примере настройки веб-сервера
  1. Система контроля версий Git
  • Версии программного кода
  • Установка Git
  • Индекс и частичные коммиты
  • Сравнение версий
  • Отмена изменений и откат версий
  • Репозитории и коллективная работа
  • Ветки — создание и управление
  • Слияние и разрешение конфликтов
  • Полезные инструменты
  • Правила работы с Git
  1. Английский для IT-специалистов
  • IT Resume and CV: составляем резюме на английском
  • Job interview: questions and answers. Проходим собеседование на английском
  • Teamwork: говорим о командной работе и процессах на английском
  • Workplace communication: английский для общения
  • Business letter: ведём переписку на английском
  • Software development: разбираем все этапы жизненного цикла программного обеспечения на английском
  • System concept development and SRS: составляем ТЗ на английском
  • Design: говорим об основных концепциях проектирования
  • Development and Testing: разбираем ключевые термины в разработке и тестировании
  • Deployment and Maintenance: обсуждаем типичные действия при развёртывании и дальнейшем сопровождении ПО
  1. Карьера и развитие программиста
  • Что нужно работодателю
  • Как создать резюме и искать работу
  • Как успешно пройти собеседование
  • Как пройти испытательный срок
  1. Soft skills для программиста
  • Курс для прокачивания коммуникативных навыков, самоорганизации, креативного мышления и стрессоустойчивости. Soft skills помогают эффективно работать в любой команде и строить успешную карьеру.

Дипломные проекты:

  1. Лендинг
    Сверстаете лендинг по брифу от заказчика с помощью HTML и CSS.
  2. Пользовательский интерфейс
    С помощью JavaScript разработаете веб-приложение — аналог Instagram.
  3. Сервис заметок
    Разработаете frontend и backend для сервиса личных заметок с помощью Node.js.
  4. Интернет-магазин
    Создадите полноценный интернет-магазин на фреймворке Vue.js.
  5. Интеграция с Reddit
    Настроите интеграцию постов с новостного сайта Reddit с помощью фреймворка React.js.
  6. Интернет-магазин
    Разработаете полноценный интернет-магазин на фреймворке Angular.

Диплом Skillbox

Подтвердит, что вы прошли курс, и станет дополнительным аргументом при устройстве на работу.

Стоимость: Рассрочка до 36 месяцев — от 3 220 ₽ / мес

Fullstack-разработчики — универсальные программисты, которые разрабатывают и серверную, и клиентскую часть проекта.

Программа обучения

Подготовительный блок

Kурсы

  1. Как учиться эффективно. Видеокурс от методистов GeekUniversity

Узнаете об особенностях обучения взрослых, научитесь ставить образовательные цели, строить карту компетенций, формулировать образовательные запросы.

  1. Основы программирования. Видеокурс

— Создание переменных
— Операции сложения, вычитания, деления и умножения
— Логические операции
— Работа с массивами
— Функции

  1. Базовый курс

— Введение в Git
— Установка и настройка Git
— Основные команды терминала
— Работа с репозиториями в Git
— Управление файлами репозитория
— История изменений
— Работа с ветками репозитория
— Публикация репозитория
— Слияния веток
— Управление версиями
— Создание pull-request
— Сложные операции
— Работа с Fork-репозиториями

I четверть — Frontend-разработка

Курсы

  1. HTML/CSS. Интерактивный курс

— Основные понятия в веб-разработке
— Основы языка разметки документов HTML
— Основы языка оформления стилей документа CSS
— Основные тэги для верстки, Псевдоклассы и псевдоэлементы
— Основы позиционирования, работа с Flexbox
— Работа с макетом дизайна в формате Figma
— Основы создания адаптивного сайта
— Стандарты web и вспомогательные инструменты

  1. Уровень 1

— Основы языка JavaScript
— Основные операторы JavaScript
— Циклы, массивы, структуры данных
— Объекты в JavaScript
— Введение в DOM
— Обработка событий в JavaScript
— Урок-практикум
— Анонимные функции, замыкания

  1. Продвинутый курс JavaScript

— Современный JavaScript
— ООП в JavaScript
— Асинхронные запросы
— Регулярные выражения
— Фреймворк Vue.js
— Компоненты Vue.js
— JavaScript на сервере
— Тестирование и сборка

  1. Базовый курс

— Настройка среды разработки и первое React-приложение
— Жизненный цикл React-компонента
— Погружение в React и подключение  UI-библиотеку
— Роутинг в React. Разбиваем мессенджер на чаты
— Redux
— Redux middlewares, подключение роутера к Redux и хранение данных с помощью Redux-persist
— Работа с API
— Progressive Web App

II четверть — Бэкенд-разработка на JavaScript
В этой четверти студенты научатся использовать большинство возможностей, предоставляемых языком.Смогут создавать backend-приложения, которые будут генерировать HTML на бэкэнде, используя данные из базы данных. Заодно будут изучены: базовые принципы сетевых протоколов, особенности HTTP-протокола, базовая структура HTML.

Курсы

  1. Рабочая станция

— Введение. Установка ОС
— Настройка и знакомство с интерфейсом командной строки
— Пользователи. Управление Пользователями и группами
— Загрузка ОС и процессы
— Устройство файловой системы Linux. Понятие Файла и каталога
— Введение в скрипты bash. Планировщики задач crontab и at
— Управление пакетами и репозиториями. Основы сетевой безопасности
— Введение в docker

  1. Node.js

— Знакомство с Node.js
— Консольные программы
— Работа с сетевыми запросами
— Фреймворк Express
— Работа с MySQL
— Аутентификация и авторизация
— REST API
— WebSockets

  1. Базы данных

— Введение в теорию реляционных баз данных
— Базовые понятия структуры базы данных
— Определение данных. Базовые операции с данными
— Выборка данных, агрегация данных
— Вложенные запросы и объединение Union
— Объединение Join
— Расширенные возможности SQL
— Оконные функции, индексы, работа в графическом клиенте

  1. Сетевой протокол HTTP

— Создание веб-сервера на Node.js
— Взаимодействие с http-сервером с помощью программы telnet
— Взаимодействие с http-сервером из браузера
— Отправка, обработка GET, POST, PUT, DELETE, OPTIONS запросов
— Работа с cookies
— Работа с сессией
— Перенаправления
— Создание WS-подключения, работа с ним
— Работа с заголовками CORS

III четверть — Фуллстек-разработка
Самый большой и самый технически сложный блок, после которого студенты уже смогут самостоятельно решать задачи средней сложности.

Курсы

  1. TypeScript

— Введение в TypeScript. Типы данных. Настройка связки TypeScript+Webpack
— Функции в TypeScript. Классы и интерфейсы
— Создание React приложения на TypeScript. Часть 1
— Создание React приложения на TypeScript. Часть 2. Итоги курса. Ответы на вопросы
— Завершающий вебинар
— Подведение итогов

  1. Разработка сайтов с использованием Nest.js

— Создание классов и методов контроллера с использованием декораторов
— Проброс в контроллеры контекста запроса с использованием декораторов
— Создание провайдеров, использование их в контроллерах и других провайдерах
— Организация контроллеров и провайдеров в модули, использование модулей
— Работа с TypeORM в связке с PostgreSQL, создание сущностей TypeORM, работа с ними (создание, удаление, выборка и изменение)
— Использование механизма авторизации и Guards
— Использование перехватчиков (interceptors)
— Использование middlewares
— Создание своих декораторов
— Создание шаблонов handlebars и динамическая генерация страниц на их основе
— Использование GraphQL
— Работа с WebSocket

  1. Разработка высоконагруженных бэкэнд-приложений

— Написание многопоточных приложений на Node.js
— Использование memcached в Node.js
— Использование Redis в качестве сервиса кэширования в Node.js
— Использование Redis в качестве NoSql-решения в Node.js
— Использование Redis в качестве брокера сообщений в Node.js
— Применение микросервисного подхода при написании backend-приложений на Node.js
— Использование apache benchmark (ab) для проведения локального нагрузочного тестирования

IV четверть — Soft skills
Расскажем о том, как взаимодействовать с командой и проходить собеседования.

Курсы

  1. Agile, Scrum. Теория

— Введение в Agile
— Scrum, Kanban
— Работа в команде по Scrum
— Подготовка к старту проекта
— Практика. Подготовка к проекту

  1. Выпускной проект

— Консультация
— Защита проекта

  1. Подготовка к собеседованию

Курсы вне четверти:

  • Разработка десктопных приложений на Electron.js
  • Разработка кросс-платформенных приложений на React Native
  • Алгоритмы и структуры данных
  • Управление состоянием SPA-приложения
  • Подготовка к поиску работы

Вы получите диплом о профессиональной переподготовке и электронный сертификат, которые можно добавить в портфолио и показать работодателю.

Стоимость: Рассрочка на 12 месяцев — 4 511 ₽ / мес
  • Длительность 6 месяцев
  • Онлайн в удобное время
  • Обучение на практике
  • Доступ к курсу навсегда

Кому подойдёт этот курс:

  • Начинающим фронтенд-разработчикам
    Вы научитесь создавать интерактивные страницы, которые взаимодействуют с сервером, и станете более высокооплачиваемым специалистом.
  • Тем, кто хочет научиться программировать
    Вы освоите язык JavaScript и его экосистему и сможете начать карьеру JavaScript-разработчика.

Чему вы научитесь:

  1. Писать код на JavaScript
    Изучите синтаксис, области применения и лучшие практики JavaScript.
  1. Работать с JavaScript и инструментами разработчика
    Узнаете, как работать с системой контроля версий Git, менеджером пакетов npm и отладчиком в браузере.
  2. Использовать разные подходы к разработке
    Научитесь писать код в императивном, объектно ориентированном и функциональном стилях.
  3. Использовать JavaScript в браузере
    Научитесь использовать JavaScript для взаимодействия с сервером, работать с DOM и событиями.
  4. Прокачать soft skills разработчика
    Узнаете, какие soft skills и личностные качества нужны junior-разработчику в различных компаниях, сможете развить их.

Программа:

Вас ждут онлайн-лекции и практические задания.
21 тематический модуль, 188 онлайн-уроков

Базовый уровень

  1. Введение
    Подробно познакомитесь с языком JavaScript, его областями применения и напишите свою первую программу на этом языке.
  2. Переменные и работа с числами
    Освоите математические операторы и операторы сравнения, встроенные функции для работы с числами и объект Math. Узнаете, как работать с дробными числами.
  3. Строки, boolean и условные операторы
    Узнаете о строковом и логическом (boolean) типах данных, сравнении простых типов данных. Познакомитесь с условными операторами if/else/switch, тернарным оператором, основами булевой алгебры.
  4. Массивы и циклы
    Научитесь работать с массивами, циклами for, while, do-while, операторами break и continue.
  5. Функции
    Узнаете, зачем нужны функции, как их писать, что такое аргументы и возвращаемое значение функции. Поймёте, что такое значение null и undefined.
  6. Объекты
    Научитесь работать с объектами JavaScript: создавать их, объявлять свойства, сравнивать объекты, делать циклы по свойствам, использовать оператор typeof.
  7. Введение в DOM
    Узнаете, что такое объектная модель HTML-документа DOM, объектами window, document, деревом узлов DOM.
  8. Введение в DOM. Часть 2
    Разработаете простой таск-трекер, с которым будете работать в дальнейших уроках.
  9. Константы, области видимости и замыкания
    Узнаете, что такое константы, ключевые слова const и var, области видимости, замыкания, и научитесь их использовать. Сможете пользоваться debug-инструментом в Google Chrome.
  10. Преобразование типов и нестрогие сравнения
    Освоите различные преобразования типов данных в JavaScript, узнаете о неявных преобразованиях и нестрогих сравнениях.
  11. Общение с сервером, async/await
    Научитесь взаимодействовать с сервером с помощью fetch API, передавать параметры запроса, отлаживать запросы в инструментах разработчика. Научите свой таск-трекер общаться с сервером.

Продвинутый уровень

  1. События браузера, контекст выполнения
    Научитесь работать с событиями браузера при помощи обработчиков, задавать функциям контекст выполнения.
  2. Модули
    Научитесь работать с модулями JavaScript. Узнаете, почему важно разделять код на модули, когда стоит это делать, какая структура должна быть у проекта. Разделите на модули свой таск-трекер.
  3. Event loop и асинхронная разработка
    Узнаете, что такое Event Loop. Сможете вызывать функция через определенный интервал времени. Поймете, как связаны события и Event Loop и научитесь работать с объектами promise.
  4. Обработка ошибок
    Освоите работу с ошибками, конструкции try/catch/throw/finally, window/process error event.
  5. Классы
    Узнаете, что такое класс и из чего он состоит и как выстроить иерархию классов. Сможете определять свойства класса
  6. События
    Научитесь работать с событиями мыши, клавиатуры, страницы, touch-событиями, Drag’n’drop, событиями загрузки ресурсов. Узнаете о взаимодействии с audio/video и синхронизации с CSS-анимациями и переходами.
  7. Экосистема JavaScript и npm
    Узнаете, из чего состоит экосистема JavaScript. Освоите работу с менеджером пакетов npm. Узнаете, что такое package.json, для чего нужны команды npm init, npm install. Научитесь использовать версии пакетов и правильно обновлять проект.
  8. Сборка
    Научитесь собирать свой код в готовый к использованию проект. Научитесь оптимизировать код и решать проблему несовместимости.
  9. Тестирование
    Познакомитесь с разными подходами к тестированию — модульное тестирование, TDD, e2e, тестирование на основе снэпшотов, на основе скриншотов — и узнаете, когда их стоит использовать. Научитесь писать тесты.
  10. База знаний
    Парадигмы: императивное, декларативное, функциональное и объектно-ориентированное программирование
  • Рекурсия
  • Чистые функции
  • Регулярки
  • TDD
  • Стандарты ECMAScript
  • Типы модулей: esm, amd, exports

Диплом Skillbox

Подтвердит, что вы прошли курс, и станет дополнительным аргументом при устройстве на работу.

Что даст вам этот курс:

Вы научитесь решать на JavaScript различные задачи фронтенда и бэкенда. Стек позволяет внести разнообразие в свою работу, открывает возможность участвовать в интересных проектах и стартапах, предлагать комплексные решения. Однозначно, Fullstack-специальность для тех, кто ищет драйва и хардкора в разработке!

После обучения вы сможете указать в резюме:

  1. Знание принципов работы современных JavaScript фреймворков и библиотек
  2. Знание подходов при проектировании, организации, контроле состояния и тестирования серверных и клиентских приложений
  3. Умение применять паттерны проектирования: Event Loop, Flux, Immutable, Virtual DOM, Dependency Injection, Observables
  4. Умение выбирать подходящие инструменты для проекта
  5. Умение тестировать проект unit-тестами на разных уровнях
  6. Умение создавать web-приложения с использованием современных технологий

Программа обучения:

В процессе обучения вы получите комплексные знания и навыки.

Модуль 1 — JavaScript

Тема 1. Введение в курс Modern JavaScript Frameworks

Тема 2. Возможности современного JavaScript

Тема 3. JavaScript — Работа с браузером

Тема 4. Введение в Node — Пакетный менеджер NPM и возможности package.json

Тема 5. Test Driven Development

Модуль 2 — Node.js

Тема 6. Основные концепции Node — Modules

Тема 7. Стандартная библиотека Node — EventLoop — Timers

Тема 8. Node Best Practices — Streams — Processes

Тема 9. Web-сервер с Express

Тема 10. Возможности MongoDB

Тема 11. Расширенные функции MongoDB — Aggregation Framework

Тема 12. Построение Rest API с Express, Mongoose

Тема 13. Основы GraphQL

Тема 14. Возможности GraphQL в реальности

Тема 15. Сборка и деплой проекта, CI/CD

Модуль 3 — Современный Стэк JavaScript

Тема 16. Web Components

Тема 17. Webpack

Тема 18. PWA

Тема 19. Service Workers

Тема 20. Функциональное программирование в JavaScript

Тема 21. Введение в TypeScript

Тема 22. Особенности TypeScript

Модуль 4 — React

Тема 23. Основы React и JSX

Тема 24. Компоненты React — Lifecycle, State & Props

Тема 25. Паттерны проектирования React (Higher-Order Components)

Тема 26. Обзор современных возможностей React

Тема 27. Состояние приложения — Flux и Redux

Тема 28. Routing в React — Оптимизация приложения

Тема 29. Подготовка React Приложения к Production, Best Practices

Тема 30. Микросервисная архитектура и аспекты SSR

Модуль 5 — Angular

Тема 31. Введение в Angular

Тема 32. Компоненты и директивы

Тема 33. Observables — RxJS

Тема 34. Сервисы и состояние приложения

Тема 35. Создание и управление формами в Angular

Тема 36. Routing, тестирование и сборка в Angular

Модуль 6 — Vue

Тема 37. Введение в SvelteJS

Тема 38. Особенности разработки приложений с SvelteJS

Тема 39. Основы Vue

Тема 40. Компоненты, шаблонизатор и формы

Тема 41. Routing и Vue3

Тема 42. Advanced Vue – Vuex

Модуль 7 — Проектная работа

Тема 43. Вводное занятие по проектной работе. Обзор пройденных фреймворков и технологий

Тема 44. Защита проектных работ

Выпускной проект

Заключительный месяц курса посвящен проектной работе. Его разработка нужна для окончательного закрепления знаний, которые были получены в рамках пройденных занятий. При успешном выполнении он станет образцом кода, который JavaScript разработчик сможет показывать будущим работодателям. В любом случае, проект — это хороший задел на будущее и возможность получить дополнительный опыт для любого, кто хочет стать более профессиональным разработчиком.

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

Примеры тем проекта:

  • Task Runner для создания части Continuous Integration цикла.
  • Reciept Roulette для управления и рекомендации рецептов.
  • Elements Dashboard — магазин web-компонент. Разработка выполняется с помощью одной из стандартных библиотек JavaScript. В приложении можно видеть рейтинг, демонстрацию и документацию зарегистрированных элементов.

После обучения вы:

  • Заберете с собой полный комплект обучающих материалов: видеозаписи всех вебинаров, презентации к занятиям, а также решение задач и проектов в виде кода на github и другие дополнительные материалы;
  • Получите сертификат о прохождении курса;
  • Приобретете опыт работы с актуальными технологиями, фреймворками и инструментарием;
  • Получите приглашение пройти собеседование в компаниях-партнерах (эту возможность получают самые успешные студенты).
Стоимость: нет информации

Учебный план:

Считается, что JavaScript сложнее изучить, чем связанные с ним технологии, наподобие HTML и CSS. Поэтому, перед изучением JavaScript, настоятельно рекомендуем сначала ознакомиться хотя бы с этими двумя технологиями. Начните с проработки следующих модулей:

  • Начало работы с Веб
  • Введение в HTML
  • Введение в CSS

Имеющийся опыт программирования на других языках также может помочь в обучении.

После изучения основ JavaScript вы будете готовы к ознакомлению с более сложными темами, например:

  • Углублённый курс JavaScript, изложенный в нашем Руководстве по JavaScript
  • Программный интерфейс WebAPI

Модули

Этот раздел содержит следующие модули, проходить которые рекомендуется в порядке перечисления.

  1. Первые шаги в JavaScript
    В нашем первом модуле, посвящённом JavaScript, мы сначала ответим на несколько главных вопросов, таких, как «Что такое JavaScript?», «На что он похож?» и «Что с его помощью можно сделать?», а затем перейдём к практике — расскажем, как писать и выполнять код на JavaScript. После чего подробнее рассмотрим некоторые ключевые конструкции JavaScript: переменные, строки, числа и массивы.
  2. Структурные элементы JavaScript
    В этом модуле мы продолжим изучение главных составных частей JavaScript и обратим внимание на повсеместно встречающиеся типы конструкций: условные операторы, циклы, функции и события. В ходе обучения вы уже сталкивались с ними, но только мимоходом. Теперь мы поговорим именно о них.
  3. Введение в объекты JavaScript
    Практически всё, что встречается в JavaScript, является объектом. Начиная с таких ключевых конструкций, как строки и массивы, и заканчивая интерфейсом взаимодействия с браузером, который построен поверх JavaScript. Вы даже можете создавать собственные объекты, заключая взаимосвязанные функции и переменные в готовые пакеты. Если вы хотите продолжить изучение языка и писать более эффективный код, то очень важно понять объектно-ориентированную природу JavaScript. Чтобы помочь вам в этом, мы представляем этот модуль. В нем мы подробно рассматриваем основы и синтаксис ООП (объектно-ориентированного программирования), показываем, как создавать свои объекты, и объясняем, что такое данные в формате JSON и как с ними работать.
  4. Клиентский Web API
    При написании клиентского JavaScript для сайтов или приложений вы не обойдётесь без использования API — то есть интерфейсов для работы с различными функциями браузера или операционной системы, на которой работает сайт, или даже для работы с данными, получаемыми с других сайтов или сервисов. В этом модуле мы изучим, какие это API и как использовать некоторые наиболее распространённые API, которые вам будут часто попадаться во время разработки.
  5. Решение общих проблем на JavaScript.
Стоимость: 64 900 ₽ / мес

По окончании курса Вы будете понимать и уметь:

  • Вы владеете JavaScript, свободно разрабатываете и отлаживаете программы на этом языке.
  • Вы умеете создавать компоненты и объединять их в интерфейсы средней сложности.
  • Ваши интерфейсы работают стабильно, без глюков, их можно удобно дорабатывать и развивать.
  • Понимать возможности JavaScript для манипуляции элементами HTML-страниц
  • Управлять элементами HTML-страниц с помощью JavaScript
  • Реализовывать различные эффекты (drag’n’drop, анимационные эффекты, запоминание информации в cookie, работа с окнами)

Программа курса:

Модуль 1. Введение в JavaScript, основные сведения, синтаксис

  • Краткая история JavaScript, текущая версия (1.5)
  • Внедрение сценариев в HTML
  • Синтаксис, зарезервированные слова
  • Понятие операторов
  • Практика: Первый сценарий
  • Понятие переменной, литерала
  • Классификация типов данных, оператор typeof
  • Краткое описание всех типов данных
  • Глобальный объект
  • Тривиальные типы данных null, undefined
  • Базовые типы String, Number, Boolen
  • Работа с числами — объект Math, функции (методы глобального объекта) parseInt(), parseFloat()
  • Практика: Изучение методов экземпляров String
  • Практика: Изучение методов экземпляров Number, методов глобального объекта и объекта Math

Модуль 2. Инструкции и функции

  • Понятие инструкции
  • Объединение инструкций, оператор «,»
  • Блок инструкций {}
  • Условные инструкции (if, if/else, if/else if/else)
  • Инструкции цикла (while, do/while, for, for/in)
  • Инструкция переключения (switch/case/default)
  • Инструкции continue, break
  • Инструкция перехвата и обработки исключения (try/catch/finally, тип данных Error)
  • Практика: Построение таблицы в цикле (использование элемента <style> и правил CSS для модификации внешнего вида таблицы)
  • Практика: Определение правильного окончания слова с разными числительными
  • Функции
  • Имена функций, их создание и вызов
  • Область видимости переменных
  • Аргументы функций, объект arguments, рекурсивный вызов
  • Инструкция return
  • Практика: Использование функции для модернизации предыдущего примера с окончанием слова
  • Практика: Создание функции для работы с любым количеством переданных аргументов
  • Практика: Создание функции, возвращающей значение

Модуль 3. Массивы и объекты

  • Массивы, тип данных Array
  • Свойства и методы экземпляров Array
  • Практика: Изучение методов массивов
  • Объекты в JS, тип данных Object
  • Свойства и методы экземпляров Object
  • Углубление понятия свойств и методов любого объекта в JavaScript
  • Контекст исполнения функции в качестве метода объекта
  • Практика: Вызов глобальной функции как метода объекта, ключевое слово this
  • Пользовательские объекты
  • Понятие класса-конструктора, оператор instanceof, свойство constructor
  • Механизм наследования, prototype
  • Практика: Создание пользовательского класса-конструктора, передача аргументов
  • Практика: Модификация пользовательского класса-конструктора с помощью prototype

Модуль 4. Регулярные выражения и даты

  • Шаблоны для поиска в строках, тип данных RegExp
  • Синтаксис регулярных выражений
  • Спецсимволы, неалфавитные символы (управляющие последовательности)
  • Классы символов
  • Повторение
  • Альтернатива, группировка и ссылки (внутри вне шаблона)
  • Флаги
  • Свойства экземпляров RegExp
  • Методы экземпляров RegExp и String для поиска с использованием шаблонов
  • Практика: Использование рассмотренных методов для поиска
  • Практика: Составление шаблона для проверки корректности e-mail
  • Создание дат, тип данных Date
  • Свойства и методы экземпляров Date
  • Практика: Получение текущей и заданной дат
  • Практика: Получение даты с заданным смещением (неделя — 7 суток, месяц — 30 суток)
  • Практика: Использование экземпляров Date в качестве «секундомера»
  • Заключительная часть – закрепление знаний про объекты, их свойства и методы, синтаксис доступа к ним

Модуль 5. Глобальный объект Window

  • DOM как связь базового JavaScript и HTML страницы
  • Краткая история развития DOM, текущая версия (2)
  • Глобальный объект Window, его свойства и методы
  • Объекты, доступные как свойства Window, их свойства и методы:
  • location
  • history
  • navigator
  • screen
  • document
  • Практика: Использование методов prompt(), confirm(), alert() для задания условия выполнения действий и информирования пользователя
  • Практика: Отложенный вызов кода (setTimeout(), setInterval()), использование методов для счетчиков времени
  • Практика: Открытие окна, работа с его положением, получение и потеря фокуса, скроллирование, закрытие окна
  • Практика: Отслеживание свойства closed открытого окна, взаимодействие окон с помощью переменной и свойства opener
  • frames[] и понятие HTML коллекции
  • Взаимодействие окон (глобальных объектов) во фреймовой структуре
  • Практика: Работа с переменными в разных окнах (top, parent, self), закрепление понимания, что глобальные переменные — свойства объекта window, глобальные функции — методы этого объекта

Модуль 6. Объект Document, базовая модель событий

  • Свойства и методы объекта Document
  • Доступ к отдельным элементам страницы с помощью свойств объекта Document:
  • body
  • title
  • forms
  • images
  • links
  • anchors
  • applets
  • embeds
  • Доступ к атрибутам элементов страницы
  • Способ сохранения информации для посещенной страницы – cookie
  • Практика: Модификация работы по открытию окна: добавление формирования содержимого
  • Практика: Чтение и запись cookie
  • Базовая или исходная модель событий
  • Список событий и элементы страницы, где они могут возникнуть
  • Применение кода в качестве обработчика события
  • Вызов функций в значении атрибута
  • Регистрация функций-обработчиков в качестве свойства элемента, ключевое слово this
  • Передача ссылок на событие и элемент, в котором оно возникло
  • Практика: Регистрация обработчиков событий в HTML коде, недостатки этого способа
  • Практика: Регистрация обработчиков событий в коде скрипта, передача ссылки на событие

Модуль 7. Отдельные HTML элементы и работа с ними

  • Таблицы и ее элементы
  • Свойства и методы таблицы, ее элементов
  • Практика: Динамическое создание таблицы (модификация примера из 2 модуля курса «Базовый JavaScript»)
  • Формы и элементы управления
  • Свойства и методы формы, ее элементов
  • События, связанные с формой и ее элементами
  • Практика: Правильная организация формы, ее проверка перед отправкой, фильтрация ввода с клавиатуры
  • Изображения
  • Свойства изображений
  • События, связанные с изображениями
  • Практика: Динамическое создание изображения, организация просмотра увеличенных изображений

Модуль 8. Объектная модель документа (DOM)

  • Реализация W3C DOM различными браузерами
  • Архитектура DOM, дерево элементов
  • Типы узлов, работа с атрибутами
  • Свойства и методы различных типов узлов
  • Доступ к значению атрибутов через свойства
  • Работа со встроенными стилями (атрибут style (inline))
  • Работа с таблицами стилей (элементы <link> для внешних таблиц (linking) и <style> для встроенных таблиц (ebbedding))
  • Методы экземпляров RegExp и String для поиска с использованием шаблонов
  • Практика: Динамическое создание таблицы (модификация примера из 2-го модуля курса «Базовый JavaScript»)
  • Практика: Поиск элементов страницы и манипуляции с ними
  • Практика:
  • Построение списка со ссылками из массива
  • Практика:
  • Изменение внешнего вида посредством работы с таблицами стилей

Модуль 9. Модель событий в объектной модели документа

  • Отличия целевых элементов для некоторых событий по сравнению с базовой моделью
  • Модель возникновения, распространения и обработки событий в W3C DOM и IE
  • Использование всплытия событий для регистрации единственного обработчика, исключения
  • Свойства события
  • Кроссбраузерное назначение функций-обработчиков событий
  • Практика: Принципы построения кроссбраузерного служебного кода
  • Практика: Реализация drag’n’drop
  • Практика: Построение раскрывающегося по клику списка

Модуль 10. Основы использования библиотеки jQuery

  • Обзор jQuery;
  • jQuery селекторы;
  • Манипуляции DOM;
  • Манипуляции CSS;
  • Использование jQuery для создания обработчиков событий;
  • Использование jQuery для создания визуальных эффектов.
  • Основы применения анимации
  • Практика: по теме

Модуль 11. Асинхронное программирование в JavaScript:

  • Асинхронное программирование;
  • Преимущества асинхронного программирования;
  • Функция обратного вызова — основа асинхронного программирования
  • XMLHttpRequest;
  • Использование XML для AJAX;
  • Использование JSON для AJAX;
  • Использование jQuery для AJAX вызовов;
  • Отложенные (deferred) объекты.

Модуль 12. Model-View-Controller библиотеки (frameworks) для JavaScript:

  • Что такое MVC?
  • Типичные возможности MVC-библиотек;
  • js;
  • Другие MVC-библиотеки.

Модуль 13. JavaScript -инструменты:

  • Отладка JavaScript;
  • Сжатие кода;
  • Тестирование приложений на JavaScript.

Модуль 14. Будущее JavaScript:

  • ECMAScript 6.

Курс направлен на повышение скиллов web-разработчиков, укрепление основной базы знаний. Если возникает необходимость увереннее чувствовать себя при работе с JavaScript, а также освоить React, Redux и Node.js, то этот курс подойдет как нельзя кстати. Еще больше frontend и backend для каждого web-разработчика.

Программа курса:

1 месяц

  • Введение в ООП Классы Методы Свойства
  • Статические и динамические методы this
  • Постулаты ООП Наследование Инкапсуляция Полиморфизм
  • Разработка игры с использованием ООП
  • Фреймворки Обзор современных фреймворков Отличия от библиотек. Введение во Vue.js Vue объекты из чего состоят и как работают
  • Что такое компоненты и как создать. Виды компонентов
  • Валидация Props
  • Передача массивов и сложных объектов
  • Взаимодействие между компонентами
  • Миксины
  • Навигация и ссылки. Переадресация.

2 месяц

  • Что такое Node.js. Начало работы
  • События работа с файлами Асинхронность в Node.js
  • Создание сервера
  • Отправка файлов. Передача параметров приложению
  • Введение в Express
  • Отправка форм. Переадресация. Маршрутизация
  • JSON и AJAX. Создание API

3 месяц

  • j-RPC. Основные правила
  • Введение в React. Рендеринг
  • JSX и Babelю. React Developer Tools
  • Компоненты
  • Props
  • Redux — работа с хранилищами
  • События. State
  • Работа с формами . Валидация
  • Введение в Redux
  • Введение в Flux

4 месяц

  • Создание ссылок. Парсинг строки запроса. Передресация
  • Покупка хостинга и домена. Работа с FTP
  • Настройка рабочего окружения проекта на сервере
  • Git Github Создание репозиториев Основные команды Ветвление
  • Git Слияние. Разрешение конфликтов
  • Деление на команды. Распределение ролей. Выбор темы проекта. Разработка Архитектуры
  • Создание MVP
  • Доработка проекта
  • Доработка проекта, Создание резюме

По окончании обучения вы получите документ, в котором будут указаны:

  1. стек освоенных технологий;
  2. объем курса в академических часах;
  3. средний балл за весь курс;
  4. количество решенных домашних заданий;
  5. финальный проект.
Стоимость: 49 950 ₽ — 72 450 ₽

Программа курса:

1 Модуль. Вёрстка сайтов

  • Занятие №1

Введение в веб-разработку. Сайтостроение. Элементы веб-разработки: блочные и строчные. Поток документа.

  • Занятие №2

Каскадные таблицы стилей CSS. Синтаксис и простые селекторы. Вложенность и наследование.

  • Занятие №3

Язык разметки HTML. Теги оформления, комментарии, гиперссылки, изображения, списки и другие элементы веб-страницы.

  • Занятие №4

Селекторы. Псевдоклассы и псевдоэлементы. Работа с текстом на веб-странице.

  • Занятие №5

Фон. Табличная сетка и списки. Работа с данными на сервере, создадим форму обратной связи.

  • Занятие №6

Блочная верстка и Box Model.

  • Занятие №7

Внешний вид: отступы, обтекания, позиционирование и рамки.

  • Занятие №8

Вёрстка интернет-каталога. Сверстаем карточку товара.

Чёткое понимание структуры Web-а. Приобретён навык вёрстки кроссбраузерного сайта.

2 Модуль. Адаптивная вёрстка

  • Занятие №1

Photoshop и Вёрстка сайтов. Настройка рабочей среды Photoshop для верстальщика. Введение в HTML 5. Начало вёрстки сайта по PSD-макету.

  • Занятие №2

Элементы сайта и работа с ними: чекбокс, радио-кнопка, переключатели. Введение в адаптивную вёрстку.

  • Занятие №3

Desktop и Mobile First подходы. Основные сходства и отличия.

  • Занятие №4

Работа с изображениями на веб-странице. SVG и WEBP. Слайдеры.

  • Занятие №5

Введение в jQuery. Создадим слайдер для сайта. Обзор Animate.css.

  • Занятие №6

Методологии вёрстки: БЭМ, OOCSS, SMACSS, Atomic CSS. Особенности работы с Figma.

  • Занятие №7

Препроцессоры LESS, SASS, PostCSS. Обзор фреймворка Bootstrap.

  • Занятие №8

Git и Gulp. Сборка финального проекта — многостраничного адаптивного и кроссбраузерного сайта.

Умение создавать крутые адаптивные макеты веб-страниц. Приобретено умение создавать адаптивную, мобильную и кроссбраузерную вёрстку веб-страниц.

3 Модуль. Javascript основы

  • Занятие №1

Введение в Javascript. Обзор среды разработки – WebStorm. Первый проект на Javascript. Первая программа на Javascript. Система управления версиями – Git.

  • Занятие №2

Синтаксис Javascript. Переменные и операторы. Идентификаторы, литералы. Типы данных в Javascript. Выражения и операторы в Javascript. Типы операторов и их взаимодействие.

  • Занятие №3

Функции в Javascript. Функциональные выражения. Стрелочные функции. Анонимные функции.

  • Занятие №4

Массивы в JavaScript. Создание и инициализапция массива. Команды Pop/Push, Shift/Unshift.

  • Занятие №5

DOM (Дерево). Определение и функции DOM в Javascript. Навигация по DOM-элементам (getElement* и querySelector*). Основы работы с событиями. Библиотека jQuery.

  • Занятие №6

Технология Ajax. Загрузка данных в фоне. Фоновая отправка формы.

  • Занятие №7

Прототипное программирование. Объектно-ориентированное программирование в Javascript. Классы в ООП Javascript.

  • Занятие №8

Модули в Javascript. NodeJS. WebPacker.

Глубокое понимание основ Javascript и Front-End разработки. Пониманием объектно-ориентированной модели JavaScript. Навык работы с модулями и сборщиком WebPacker.

4 Модуль. JavaScript фреймфорки: VueJS

  • Занятие №1

Знакомство с VueJS. Установка VueJS на странице. Первое приложение «Hello world». Директивы: v-if, v-for, v-on, v-model.

  • Занятие №2

Компоненты во VueJS. Структура компонента. Входящие данные: props. События компонента: $emit. Значения по-умолчанию для props. Составные компоненты. Распределение зон ответственности между компонентами. Mixins. Однофайловые компоненты. Приложение «Список дел».

  • Занятие №3

Принцип DRY. Повторное использование кода. Примеси Mixins.

  • Занятие №4

Навигация в приложениях на VueJS. Подключение библиотеки VueRouter. Схема маршрутов приложения. Вложенные маршруты. Ссылки перехода router-link. Программная навигация. Передача параметров в машруте. Props и параметры маршрута

  • Занятие №5

Паттерн управления состоянием приложения. Библиотека Vuex. Подключение и настройка хранилища. Мутации. Геттеры. Приложение “Складской учет”.

  • Занятие №6

Взаимодействие с сервером. Библиотека VueResource. Архитектура приложения, работающего с API. Обработка ответа сервера.

  • Занятие №7

Авторизация в приложении на VueJS.

  • Занятие №8

Шаблон проекта на VueJS. Утилита vue-cli. Сборка проекта для публикации на хостинге.

Комплексные знания VueJS, готовый проект на VueJS — “Интернет магазин спортивных товаров”, размещенный на хостинге.

Программа курса может быть изменена исходя из трендов it-индустрии.

Стоимость: 48 100 ₽ или рассрочка — 10 700 ₽ / мес

Программа онлайн курса

Блок 1 — WEB, HTML, CSS, BOOTSTRAP

Вводный курс по web технологиям

  • технология клиент сервер.
  • сеть интернет, провайдер, домен, хостинг, web сервер.
  • http запросы, типы запросов POST, GET.
  • протоколы передачи данных: http, tcp/ip, ftp, ssh и другие.

Базовый синтаксис html

  • базовый синтаксис css.
  • создания кроссбраузерной html страницы с учетом отображения её на мобильных устройствах.

Основы javascript

Введение

  • История javascript, область применения, программы для написания кода подключение к html странице.

Основы синтаксиса

  • Типы данных и переменные.
  • операторы сравнения и логические значения.
  • Условные операторы if и else.
  • Циклы while, do while, for, for in, each.
  • функции, замыкания и область видимости.
  • массивы и объекты.

Работа с DOM моделью

  • Выборка html элементов со страницы по названию класса, id, имени тега и другие способы.
  • Вставка, изменение и создание html элементов на странице.
  • События браузера, click, mouseover, mousedown, mousemove и другие.
  • События браузера, click, mouseover, mousedown, mousemove и другие.
  • Создание обработчиков событий в ответ на действия пользователя.
  • Регулярные выражения

Блок 2 — Объектно ориентированное программирование (ООП).

ООП при процедурном программировании

  • Конструктор объекта.
  • Понятие интерфейса.
  • Методы работы с интерфейсом (сеттеры, геттеры).
  • Функциональное наследование.

ООП в прототипном программировании

  • Прототип объекта.
  • Классы.
  • Наследование.
  • Свои ошибки, наследование от Error.

Продвинутый javascript, ES-2015/ES6 , NODE js

ES-2015/ES6

  • переменные let и const
  • Деструктуризация.
  • Новые возможности объявления функций и работы со строками.
  • Работа с объектами и прототипами.
  • Работа с классами и наследованием между ними, extends, constructor, super, static, геттеры, сеттеры.
  • Тип данных Symbol, итераторы, Set, Map, WeakSet и WeakMap.
  • Promise, асинхронный javascript.
  • Генераторы, модули, proxy

NODE JS

  • Установка и запуск
  • Работа с модулями
  • NPM и Yarn менеджеры установки пакетов для node js
  • Подключение базы данных, post и get запросы
  • Сборщик проектов Webpack, Babel

Работа с API

  • Работа с http запросами, технология клиент — сервер
  • Изучение ajax запросов и формата передачи данных JSON
  • XMLHttpRequest и fetch
  • Принципы работы REST API

Блок 3 — Изучение современной javascript библиотеки REACT JS.

REACT JS

  • Базовая концепция, для чего и где используется.
  • Настройка окружения, создание структуры приложения.
  • Изучение JSX — синтаксиса.
  • React Virtual DOM.
  • Рендеринг элементов.
  • Компоненты и реквизит
  • Оформление компонентов, работа с CSS.
  • Жизненный цикл React-компонентов.
  • Состояние и жизненный цикл.
  • Обработка событий.
  • Условный рендеринг.
  • Списки и ключи.
  • Формы.
  • Обратный поток данных, подъём состояния.
  • Отладка.

Блок 4 — Изучение современной javascript библиотеки REACT JS.

REDUX JS

  • Базовая концепция, единственный источник истины, для чего использовать с react.
  • Подключение к react.
  • События, асинхронные события.
  • Reducers, создание и обновление хранилища, иммутабельность данных.
  • Connect метод.
  • Отладка.
  • Разработка фронтенд приложения на REACT JS.

Изучение написания end-to-end и unit тестов для тестирования Frontend приложений на react

  • Jest js.
  • Enzyme
  • Nightwatch

Разработка фронтенд приложения на REACT JS и написание серверной его части на NODE JS

После онлайн курса:

  1. Ты научишься создавать веб-страницы и полноценные веб-приложения.
  2. Наработаешь свое стартовое портфолио.
  3. Сможешь добавлять анимацию и графические эффекты на веб-страницы.
  4. С помощью JavaScript научишься взаимодействовать с пользователями через веб-интерфейс.

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

Стоимость: 24 000 ₽ — 30 000 ₽

Учебная программа по модулям:

1 модуль. Основы языка JavaScript

  1. Введение в курс
  • Приветствие, организационные моменты
  • Прежде чем начнем
  • Настройка инструментов
  1. Основы языка JavaScript
  • Введение
  • Первые шаги
  • Введение в JS
  • Переменные и типы данных
  • Мутации переменных и приведение типов
  • Базовые операторы
  • Приоритеты операторов
  • Практическое занятие
  • Условия if / else
  • Булевая логика true и false
  • Тернарный оператор
  • Switch выражения
  • Истинные и ложные значения, операторы равенства
  • Практическое занятие
  • Функции
  • Объявление функции и выражение функции
  • Массивы
  • Практическое занятие
  • Объекты и свойства
  • Объекты и методы
  • Практическое занятие
  • Циклы и итерации
  • Практическое занятие
  • Версии JavaScript: ES5, ES6 / ES2015, ES6+
  1. Как на самом деле работает JavaScript
  • Как выполняется JS код. JS парсер и движок
  • Контекст вызова и исполнения
  • Контекст выполнения saeyrwbb в деталях: Создание и Фазы выполнения, Всплытие (Hoisting).
  • Область видимости и замыкание
  • Ключевое слово this

2 модуль. JavaScript в браузере

  1. JavaScript в браузере. Манипуляция DOM элементами и События.
  • Объекты DOM и манипуляция DOM объектами
  • Практический проект
  • Получение DOM элементов и манипууляция
  • События и обработка событий
  • Программирование практического проекта
  • Практическое задание

3 модуль. Продвинутый JavaScript

  1. Продвинутый JavaScript: Объекты и функции
  • Объекты. Наследование и Прототипное наследование.
  • Создание объектов. Функции конструкторы
  • Прототипное наследование
  • Метод Object.create
  • Примитивы и Объекты
  • Функции высшего порядка: Передача функции в качестве аргумента
  • Функции высшего порядка: Функции возвращающие функции
  • Самовызывающаяся функция IIFE
  • Замыкания
  • Привязка и передача контекста. Bind, Call и Apply
  • Практическое занятие
  1. Соединяем все вместе. Практический проект.
  • Практический проект
  • Паттерн Модуль
  • Прослушка событий
  • Чтение входных данных
  • Создание функции инициализации приложения
  • Конструкторы функций
  • Программирование проекта

4 модуль. Современный JavaScript

  1. Современный стандарт JavaScript. Введение в ES6 / ES 2015
  • Изменения в ES6 / ES2015
  • Объявление переменных let и const
  • Блоки и IIFE
  • Строки в ES6 / ES2015
  • Стрелочный функции
  • Стрелочный функции и this
  • Деструктуризация
  • Массивы в ES6 / ES2015
  • Spread оператор
  • Rest параметры
  • Параметры по умолчанию
  • Map
  • Классы
  • Классы и подклассы
  • Практическое упражнение
  1. Асинхронный JavaScript: Promise, Async/Await функции, AJAX и Fetch запросы
  • Асинхронный JS
  • Понимание асинхронного кода. Цикл событий
  • Асинхронный JS и коллбеки
  • Callback hell и Промисы
  • Промисы и Async/Await
  • AJAX и API
  • AJAX запросы с Fetch и Промисы
  • AJAX запросы с Fetch и Async/Await

5 модуль. Финальный проект

  1. Современный JavaScript: ES6, NPM, Babel и Webpack
  • Обзор нововведений
  • Краткое введение в командную строку
  • Установка Node.JS и NPM
  • Настройка WebPack
  • Настройка WebPack Dev Server
  • Настройка Babel
  • Практический проект
  • MVC архитектура проекта
  • Работа с модулями в ES6
  • Работа с API
  • Серия практических уроков по реализации проекта
  • Поиск
  • Загрузка страниц
  • Модели в проекте
  • Пагинация
  • Контроллеры
  • View и шаблоны
  • Работа с localStorage
  1. Завершение курса. Экзамен.

Программа обучения

Неделя 1 — Основы JavaScript, переменные и функции

— Знакомимся со своим личным наставником и группой.
— Узнаём, как работает JavaScript и что такое переменные и функции.

  • Введение
  • Открытие курса
  • GIT
  • Как работает JavaScript
  • Переменные и функции
  • Разбор заданий #1

Неделя 2 — Объекты и массивы, обработка ошибок

— Разбираем базовые операции с объектами и массивами, изучаем деструктуризацию и spread-оператор.
— Изучаем динамические свойства массивов, учимся создавать proxy.
— Разбираем инструменты разработчика, изучаем принципы обработки исключений.

  • Объекты и массивы
  • Обработка ошибок и отладка
  • Разбор заданий #2

Неделя 3 — DOM, асинхронность

— Учимся создавать, выбирать и модифицировать элементы DOM, изучаем механизм DOM-событий.
— Рассматриваем, что такое обработчик событий, делегирование.
— Изучаем асинхронность в JS, разбираем Promise, Async/await.

  • DOM
  • Асинхронность
  • Разбор заданий #3
  • Вопрос-ответ

Неделя 4 — Работа с сетью, Browser API

— Рассматриваем работу с сетью на примере WebSocket, ServiceWorks.
— Изучаем Local/Session Storage, HTML 5 Drag and Drop.
— Рассматриваем принцип взаимодействия между окнами и iframe.

  • Работа с сетью
  • Browser API
  • Разбор заданий #4

Неделя 5 — Работа с VK API, ООП

— Изучаем документацию по работе с VK API. Рассматриваем шаблонизацию.
— Рассматриваем основы ООП в JavaScript. Изучаем полиморфизм, наследование, инкапсуляцию, конструкторы и классы.

  • Работа с VK API и шаблонизация
  • ООП
  • Разбор заданий #5

Неделя 6 — MV*, модули

— Изучаем шаблоны проектирования MVС и MVVM.
— Рассматривается перевод проекта на модули, изучаются ES6 модули.

  • MV*
  • Модули
  • Разбор заданий #6
  • Вопрос-ответ

Неделя 7 — Node.js, тестирование

— Знакомимся с Node.js. Рассматриваем работу с файлами и сетью.
— Определяемся с необходимостью тестирования JS-кода.
— Знакомимся с библиотеками для тестирования.

  • js (краткое знакомство)
  • Тестирование JS-кода
  • Разбор заданий #7
  • Как получить работу в IT: фишки и советы.

На курсе ты научишься:

  • Использовать прототипно-ориентированную модель программирования
  • Понимать логику работы клиент-серверной архитектуры в контексте написания реальных приложений
  • Управлять DOM через использование JavaScript
  • Работать с локальными хранилищами данных

Твой полный план обучения на курсе:

  1. Прототипное наследование
  • Прототип объекта
  • Свойство «prototype»
  • Встроенные классы
  • Функция «конструктор»
  • Наследование классов
  • Внутреннее устройство метода «extend» и полифилл «Object.create»
  • Функциональное наследование
  1. Объектно-ориентированное программирование (ООП)
  • Общая информация про ООП
  • Инкапсуляция
  • Полиморфизм
  • Наследование
  • Абстракция данных
  • Понятие класса
  1. Контекст вызова и замыкания
  • Работа с «this» (4 способа использования)
  • Использование «call», «apply»
  • Работа с «bind», карринг и полифилл
  • Дескрипторы, геттеры и сеттеры свойств
  • Шаблон проектирования «Singletone» через замыкание
  • Сборщик мусора
  1. Глобальный объект Window и работа с DOM
  • Общая информация о “window”, “navigator”, “document”, “location”, “history”
  • Навигация по DOM элементам
  • Свойства узлов
  • Добавление и удаление узлов
  • Работа со стилями
  • Работа с координатами
  1. События
  • Введение в браузерные события
  • Порядок обработки событий (Event Loop)
  • Асинхронные события
  • Работа с SetTimeout / SetInterval
  • Всплытие и перехват
  • Делегирование событий
  • События с использованием мыши, клавиатуры и прокрутка
  • Загрузка документа
  1. Работа с системой контроля версий
  2. Формирование страницы в браузере
  • Формирование DOM пошагово
  • Формирование Render Tree
  • Порядок формирования CSSOM
  • Оптимизация, минификация, работа с Http Cache.
  1. Способы хранения данных в браузере
  • Cookies
  • Localstorage / Sessionstorage
  • IndexedDB
  • Manifest
  • ServiceWorker
  • Progressive Web Application
  1. HTTP
  • Введение в HTTP-протокол
  • Преимущества и недостатки протокола
  • Работа с AJAX
  • Общая информация про RESTful API
  • JSON
  • CORS
  • Работа с WebSocket
  • Протокол JSONP.

На базовом онлайн-курсе изучаем JavaScript с нуля.

 Курс включает 2 блока: основы языка JavaScript, объектную модель документа (DOM) и jQuery.

Содержание курса:

  • Основы языка JavaScript

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

  • Объектная модель документа (DOM) и jQuery

Изучаем объектную модель документа (основы, событийная модель, манипуляции с DOM-деревом, DOM-эффективность) и библиотеку jQuery (основы, плагины, популярные библиотеки).

Стоимость: нет информации

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

В уроках Javascript/jQuery вы узнаете:

  1. Что такое язык Javascript и как его используют
  2. Базовый синтаксис классического Javascript (ES5)
  3. Как пользоваться переменными в Javascript
  4. Какие бывают виды циклов в Javascript и для чего они нужны
  5. Что такое массивы и как работать с массивами в Javascript
  6. Что такое JSON
  7. Функции для работы со строками и массивами в Javascript
  8. Как создавать собственные функции
  9. Как создавать и обрабатывать события при клике на кнопку
  10. Как изменять CSS-стили при клике на кнопку
  11. Что такое библиотека jQuery
  12. Как встроить jQuery в html-страницу

ПЛАН КУРСА

План мини-курса Javascript/JQuery включает в себя уроки Javascript (видео), тесты Javascript, интерактивные задания Javascript в браузере

  1. Знакомство с Javascript и jQuery
  2. Первый код на Javascript
  3. Подключение и обращение к DOM
  4. Первый код на jQuery
  5. Работа с классами и CSS-стилями
  6. Обращение к классам
  7. Функция fadeOut
  8. Обращение к классам
  9. Тест по пройденным урокам
  10. Как задавать CSS стили с помощью Javascript или Jquery
  11. Javascript, jQuery задать CSS-стили
  12. Массивы, циклы и собственные функции
  13. Виды массивов в Javascript
  14. Функции для работы с массивами в Javascript
  15. Циклы for и forEach в Javascript для работы с массивами
  16. Циклы и методы для работы с массивами в Javascript
  17. Создание собственных функций в Javascript
  18. Создание собственных функций в Javascript
  19. Тест по пройденным урокам
  20. Работа с событиями (events) в Javascript

После успешного прохождения уроков и заданий курса Javascript/jQuery вы получите сертификат на пяти языках.

Стоимость: нет информации

Изучим основы языка: переменные, типы данных, условия, циклы, функции, массивы, объекты. Познакомимся с алгоритмами и структурами данных. Разберёмся, как правильно называть переменные, отлаживать и улучшать код.

Часть 1: Основы программирования на JavaScript

Начнём изучать основные принципы программирования на JavaScript. Разберёмся с типами данных, переменными и операциями.

Часть 2: Условия

Научимся использовать условия на полную. Разберёмся с логическими операциями и сравнениями. Попробуем комбинировать операторы.

Часть 3: Циклы

Создадим драйвер для печати страниц со множеством режимов. В этом нам помогут циклы, с которыми мы познакомимся в этой части.

Часть 4: Массивы

Научимся работать с действительно массивными данными и проведём настоящее аналитическое расследование. А для этого изучим работу с массивами.

Часть 5: Функции

Отправим Кекса в путешествие, посчитаем зарплаты и доходы, научимся разделять код на отдельные смысловые блоки. И в конце концов научимся работать с функциями.

Часть 6: Объекты

Будем читать из объектов, использовать встроенные и кастомные методы, узнаем, что такое словари и контекст вызова, отправим котов играть в кости, напишем конфигуратор компьютера.

Стоимость: нет информации

Основная цель курса — практика изучения JavaScript на реальных примерах для frontend-разработчиков. Каждый теоретический блок заканчивается практикой. Создадите реальные проекты в процессе прохождения курса. Исходные коды к заданиям для сверки прилагаются.

Чему вы научитесь:

  • Изучите основы программирования и алгоритмов, объектно ориентированное программирование (ооп)
  • Познакомитесь с самыми основами языка JavaScript, основными концепциями и принципами JS на практических примерах и заданиях
  • Изучите популярные технологии: AJAX, JSON и т.д.
  • Научитесь работать с Git и GitHub
  • Разберетесь, как работать с npm, Babel, Browserify, Webpack и т.д.
  • Узнаете, какой фрэймворк или библиотеку выбрать в дальнейшем и познакомитесь с React, Angular, Vue, Jquery

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

  • Разберетесь в задачах на понимание основ JS взятые с реальных собеседований для вакансии фронтенд-разработчик
  • Также научитесь работать в редакторе кода VS Code, установите и подключите все нужные плагины
  • Бонус. Узнаете основные концепции и напишите свое приложение на React. Научитесь писать автотесты

План курса:

  1. Подготовка к работе
  2. Основы JAVASCRIPT
  3. JAVASCRIPT в работе
  4. Продвинутый JAVASCRIPT
  5. Бонус. Дополнительные технологии.
Стоимость: нет информации

План курса:

За курс мы будем изучать Javascript с нуля для начинающих. Начать курс js для начинающих нужно с переменных, а далее постепенно изучать более сложные конструкции.

В ходе изучения javascript (или же Ява скрипт) мы изучим все основные концепции, научимся работать с HTML при помощи языка JS, а также разработаем несколько мини проектов. К концу курса у вас будет достаточно знаний чтобы начать использовать Java Script внутри ваших проектов.

Стоимость: разная стоимость

JavaScript — один из самых популярных языков программирования. Его используют в веб-разработке для работы с фронтендом и бэкендом. Онлайн-курсы Хекслета — это путь от основ программирования на JavaScript до работы с популярными и востребованными инструментами, включая React, Redux, Webpack, Express.

  1. Введение в программирование
  2. JS: Массивы
  3. JS: React
  4. JS: Настройка окружения
  5. JS: Redux (React)
  6. JS: Асинхронное программирование
  7. Тестирование фронтенда
  8. JS: Автоматическое тестирование
  9. JS: DOM API
  10. JS: Функции
  11. JS: Введение в ООП
  12. JS: Объекты
  13. Продвинутое тестирование
  14. JS: Погружаясь в классы
  15. JS: Полиморфизм
  16. JS: Абстракция с помощью данных
  17. JS: Архитектура фронтенда
  18. JS: Предметно-ориентированное проектирование
  19. JS: Объектно-ориентированный дизайн
  20. JS: Обработка ошибок
  21. JS: Деревья
  22. Основы программирования
  23. JS: Составные данные
  24. JS: Программирование, управляемое данными
  25. JS: Прототипы
  26. JS: Последовательности
  27. JS: Разработка абстракций для асинхронности
  28. JS: Синхронная асинхронность
  29. JS: Функциональное программирование
  30. JS: Коллекции
  31. JS: Автоматное программирование
  32. JS: HTTP Server
  33. JS: Express.
Стоимость: разная стоимость

Курсы по профессиональному JavaScript и смежным технологиям. С теорией, ответами на вопросы, практикой, обратной связью по коду («code review»). Каждый курс ведёт преподаватель — опытный действующий разработчик.

  1. Курс «JavaScript/DOM/Интерфейсы» для новичков
  2. Курс «JavaScript/DOM/Интерфейсы» для программистов
  3. Курс по современной вёрстке
  4. Курс по Node.js
  5. Курс по Angular
  6. Курс по React
  7. Курс по Vue.js
  8. Интенсив по TypeScript
  9. Интенсив по RxJS.
Стоимость: разная стоимость

Квалифицированные веб-разработчики, способные создавать динамические веб-страницы, на рынке труда в цене. Если вы решили развиваться в области веб-разработки, начните с профессиональных курсов JavaScript в учебном центре «Специалист».

Преподаватели «Специалиста» – сертифицированные разработчики с большим практическим опытом, успешно запустившие не один веб-проект. Под их руководством вы узнаете многочисленные тонкости разработки на JavaScript, научитесь создавать интерфейсы и веб-приложения, познакомитесь с частыми проблемами и способами их решения. На занятиях упор делается на практическое применение возможностей JavaScript для ваших проектов.

Курсы JavaScript в «Специалисте» — начало успешной карьеры веб-разработчика.

Стоимость: разная стоимость

Онлайн курсы по JavaScript

  1. JavaScript для начинающих
  • Актуальные стандарты качества: не нужно переучиваться после курса.
  • Понимание полного цикла работы разработчика.
  • Фундаментальные и структурированные знания необходимых технологий.
  • Опыт работы с дедлайнами и планирования работы.
  1. JavaScript для начинающих
  • Изучите синтаксис, области применения и лучшие практики JavaScript.
  • Узнаете, как работать с Git, npm и отладчиком в браузере.
  • Научитесь писать код в императивном, объектно ориентированном и функциональном стилях.
  • Научитесь использовать JS для взаимодействия с сервером, работать с DOM и событиями.
  1. Fullstack-разработчик JS c нуля
  • Вебинары проходят в Zoom: вы задаёте вопросы преподавателю, получаете ответы и общаетесь с однокурсниками.
  • Вы освоите программу обучения даже без технического образования.
  • Преподаватели — ведущие специалисты из GeekBrains и Delivery Club.
  • Обучение приближено к рабочей среде. Вы создадите проект вместе с другими разработчиками.
  1. JavaScript Developer Basic
  2. JavaScript для начинающих — подготовительный курс
  3. Специализация Frontend-разработчик.
Стоимость: разная стоимость

Менторы по обучению Javascript:

  1. Мария Белогубова
  • JavaScript
  • HTML
  • CSS
  • Less
  • Sass
  • Gulp
  • Grunt
  • Bootstrap
  • Pug
  • SCSS
  • Figma
  • Git
  • БЭМ
  • Кроссбраузерная оптимизаци
  • Mobile first
  • Jade
  • Верстка
  • GitHub
  1. Геннадий Кондратьев
  • JavaScript
  • HTML
  • CSS
  • Webpack
  • Angular
  • AngularJs
  • RxJs
  • TypeScript
  • UI
  • SCSS
  • JS
  • REST API
  • Тестирование
  • Unit Tests
  • Фронтенд
  1. Владимир Грузинцев
  • JavaScript
  • HTML
  • CSS
  • PHP
  • Laravel
  • MongoDB
  • PostgreSQL
  • Git
  • SQL
  • Clean Architecture
  • REST API
  • Бэкенд
  • Rabbitmq
  • Elasticsearch
  • MySQL
  • Symfony
  • js
  • Структуры данных
  • Прохождение собеседований
  • Паттерны проектирования
  1. Дмитрий Злобин
  • JavaScript
  • HTML
  • CSS
  • PHP
  • Базы данных
  • Git
  • SQL
  • Java
  • REST API
  • Бэкенд
  • Spring
  • Управление командой
  • MySQL
  • jQuery
  • Maven
  • Apache
  • TeamCity
  • Oracle
  • PL SQL
  • Openapi
  • СУБД
  • Postman
  1. Роман Чистяков
  • JavaScript
  • HTML
  • CSS
  • Webpack
  • React
  • Redux
  • js
  • TypeScript
  • PHP
  • Unity
  • Разработка игр
  • SCSS
  • UX
  • Jest
  • Git
  • SQL
  • Браузеры
  • REST API
  • Network
  • Кроссбраузерная оптимизаци
  • Mobile first
  • UI kit.

И др.

Стоимость: разная стоимость

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

В курсе представлены все темы, необходимые для соискания уровня junior разработчика и 3 проекта. Один проект — получение погоды по API, второй — touch slider, и клавиатура. 5 юнитов посвящены работе с AJAX. В курсе сделан большой упор на массивах.

Программа:

  1. Настраиваем VScode для работы с курсом
  2. Стартуем и пишем первую
  3. Основы ввода данных
  4. Оператор If, else, switch case — выбор в JavaScript
  5. Работаем с формами: input, range, textarea, checkbox
  6. Циклы в JavaScript (часть 1)
  7. Вложенные циклы в JavaScript (часть 2
  8. Функции и все о них
  9. Цикл While, Do While
  10. Работаем с DOM
  11. Массивы в JavaScript
  12. Добавление и удаление элементов в массиве, pop, push,splice
  13. Двумерные массивы
  14. Ассоциативный массив (объект) в JavaScript
  15. Практика по массивам — получаем прогноз погоды по API
  16. Set в JavaScript
  17. Перебор массивов: for, for in, for of
  18. Методы массивов: map, filter (часть 1)
  19. Методы массивов: join, split, forEach (часть 2)
  20. События мыши в JavaScript
  21. События клавиатуры в JavaScript
  22. Краткий обзор touch событий
  23. Обрабатываем ошибки с помощью Try Catch
  24. Сохраняем все
  25. Немного теории — работа с POST, GET запросами
  26. AJAX — асинхронный JavaScript
  27. Учим FETCH на практике
  28. Работаем с промисами (Promise)
  29. ООП в ES6
  30. Бонусы — замыкания
  31. Бонус – Рекурсия.

Javascript самый популярный язык программирования в мире.

  • Javascript идеально подходит в качестве первого языка программирования, если вы планируете развиваться в веб-разработке;
  • Язык прост в изучении, а писать код на нем можно в любом текстовом редакторе;
  • Знание Javascript – самое частое требование в вакансиях веб-разработчиков
  • После изучения Javascript вам будет легче освоить С#, С++, Java, PHP, поскольку они имеют похожий синтаксис;
  • Ваша продуктивность в работе вырастет, если использовать различные библиотеки, типа jQuery.

Краткая программа курса:

  1. Сложные веб технологии
  2. Технология AJAX. Создание формы
  3. Основы Javascript
  4. Работа с localstorage
  5. Библиотека JQUERY. Создание стильных эффектов.
Стоимость: от 8 200 ₽ / мес

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

Ты уже знаком с html-разметкой сайта и уверенно верстаешь? Тогда выбирай javascript. Ставишь перед собой цель вырасти как фронтент-специалист? Выбирай изучение angular, react, JS advanced и других продвинутых технологий, помогающих прокачать скилы.

Цель курса:

Научить спокойно и без лишней нервотрёпки решать типичные javascript-овые задачи.

Полученные навыки можно использовать как для решения задач при вёрстке страницы, так и в качестве опоры для перехода к frontend-разработке и миру современных javascript-фреймворков.

Программа курса

  1. Основы языка.
  • Способы подписки на события
  • On vs addEventListener
  • Области видимости переменных
  • Замыкания, работа с контекстом
  • События для группы элементов
  • Работа с data-атрибутами
  1. Работа с событиями.
  • Атрибуты vs свойства
  • Работа с событиями
  • Изучение event-объекта
  • Отмена стандартной реакции
  • Всплытие событий
  • this, target и currentTarget
  1. Решение типовых задач.
  • Валидация формы
  • Меню и плавная прокрутка страницы
  • Javascript и CSS-анимации
  • Функция animate
  • Анимации и кроссбраузерность
  1. Оптимизация решения задач.
  • Оптимизация нагрузки
  • Throttling и debouncing
  • Создание ЧАВО
  • Создание слайдера фотографий
  • Блокировка на время анимации
  1. Понимание ООП.
  • Основы ООП в ES6+
  • Классы и объекты
  • Свойства и методы
  • Пример таймера обратного отсчёта
  • Фокусы с потерей контекста
  1. Практика и нюансы ООП.
  • Контекст и стрелочные функции
  • Старое и новое ООП в javascript
  • Prototype и __proto__
  • Наследование классов
  • Объекты и прототипы
  1. Работа с библиотеками.
  • Велосипеды vs поиск готовых решений
  • Изучение типичной документации
  • Параметры, события и коллбэки
  • Примеры популярных инструментов
  • Чистый js vs экосистема jQuery
  1. Сборка проекта.
  • js и webpack, работа с npm
  • Сборка проекта с webpack + babel
  • Основы работы с ES-модулями
  • Подведение итогов курса
  • Траектории дальнейшего развития.
Стоимость: 2 650 ₽ — 14 650 ₽
  • живые разборы домашних заданий
  • подходит для абсолютных новичков
  • от разработчика с опытом более 14 лет
  • сертификат об окончании курса
  • самые актуальные технологии.

Программа курса:

Часть 1. Beginner

  • История и эволюция JavaScript
  • Подключение JavaScript
  • Переменные
  • Типы данных
  • Операторы
  • Преобразование типов
  • Условные операторы
  • Циклы

Часть 2. Middle

  • Функции и их виды
  • Область видимости и замыкание
  • Расширенные возможности функции
  • Глобальные функции
  • Объекты
  • Встроенные объекты в JavaScript
  • Массивы
  • Итераторы массивов
  • DOM
  • Работа с DOM
  • Отладка скрипта
  • BOM
  • Основы работы с событиями
  • Приемы для работы с событиями
  • Работа с this
  • Модуль, конструктор и потеря контекста

Часть 3. Advanced

  • ООП и прототипы
  • Наследование
  • Классы и наследование в ES6
  • Регулярные выражения
  • Сеть и обмен данными
  • AJAX
  • Асинхронный JavaScript
  • Паттерны проектирования
  • Структурные шаблоны и фреймворки
  • Инструментарий Frontend разработчика. Часть 1
  • Инструментарий Frontend разработчика. Часть 2.
Стоимость: бесплатно

Этот бесплатный онлайн-курс по JavaScript познакомит с базовыми понятиями языка. Вы выучите основы и напишете свои первые программы на JS.

  • 90 уроков с практикой в браузере

Программа:

Основы JavaScript

  1. Привет, Мир!
  2. Комментарии
  3. Инструкции (Statements)
  4. Как мы проверяем ваши решения
  5. Синтаксические ошибки
  • JavaScript – один из самых популярных языков программирования в мире. Он используется для создания интерактивных веб-страниц, мобильных приложений, в серверной разработке. Изучать JS мы будем с нуля, с самых азов. Первый модуль – плацдарм для написания осмысленных программ. В нем мы разберем, как написать свой первый код на JS. Расскажем, что такое комментарии и зачем они нужны. На примере проверки ваших решений рассмотрим, что такое тестирование и как читать вывод тестов.

Арифметика

  1. Арифметические операции
  2. Операторы
  3. Коммутативная операция
  4. Композиция операций
  5. Приоритет операций
  6. Числа с плавающей точкой
  7. Бесконечность (Infinity)
  8. NaN
  9. Линтер
  • Современные программы создаются для обслуживания бизнесов, помощи в ежедневной жизни и развлечений. Но в основе их работы по-прежнему лежат вычисления. Наиболее простая и базовая тема в программировании — арифметика. В этом модуле мы переведем арифметические действия на язык программирования, поговорим о приоритете операций и операциях с дробным числами. Вспомним школьные правила из уроков математики и узнаем, что получится, если делить на ноль в JavaScript. А под конец расскажем, что такое линтер и почему он может «ругаться».

Строки

  1. Кавычки
  2. Экранирующие последовательности
  3. Конкатенация
  4. Кодировка
  • Текст в программировании называется «строками», и эта тема не так проста, как может показаться. Как вывести фразу, в которой есть и одинарные, и двойные кавычки? Как вообще быть с текстом, ведь компьютер не знает ничего о буквах! Модуль посвящен разным аспектам написания текста – от кавычек и экранирования до кодировки.

Переменные в языке JavaScript

  1. Что такое переменная
  2. Изменение переменной
  3. Выбор имени переменной
  4. Ошибки при работе с переменными
  5. Выражения в определениях
  6. Переменные и конкатенация
  7. Именование переменных
  8. Магические числа
  9. Константы
  10. Интерполяция
  11. Извлечение символов из строки
  • Информацию можно помещать в специальные «хранилища» — переменные. Это позволяет переиспользовать уже существующие данные и не дублировать их в разных частях кода. В этом модуле мы разберем как изменять переменные и именовать их, чтобы чтение вашего кода было понятным для любого разработчика. Вы поймете, что придумать название переменной не так-то просто! А еще расскажем, как использовать переменные для упрощения сложных вычислений.

Типы данных JavaScript

  1. Типы данных
  2. undefined
  3. Неизменяемость примитивных типов
  4. Слабая типизация
  • JavaScript — язык со слабой типизацией и неизменяемыми примитивными типами данных. Что произойдет, если мы попробуем умножить число на строку? Каким образом JavaScript понимает, что за тип данных перед ним? И что делает JavaScript, когда видит несоответствие типов? Ответы на эти вопросы вы найдете в текущем модуле.

Вызов функций

  1. Функции и их вызов
  2. Математические функции JavaScript
  3. Сигнатура функции
  4. Аргументы по умолчанию
  5. Функции с переменным числом параметров
  6. Вызов функции — выражение
  7. Аргументы как выражения
  8. Вызов функций в аргументах функций
  9. Детерминированность
  10. Побочные эффекты
  11. Стандартная библиотека
  • Для выражения любой произвольной операции в программировании существует понятие «функция». Функции — кирпичики, из которых программисты строят системы. В этом модуле мы научимся пользоваться уже созданными функциями. Посмотрим на сигнатуру функции в документации и разберемся, как её использовать. Познакомимся со стандартными библиотеками, которые хранят тысячи функций. Все функции невозможно выучить, но каждый программист должен знать, где искать документацию по ним.

Свойства и Методы

  1. Свойства
  2. Методы
  3. Неизменяемость
  4. Свойства и методы как выражения
  5. Цепочка вызовов
  • Данные, которыми мы оперируем в своих программах, могут обладать важными свойствами. В JavaScript свойства встроены прямо в язык. Кроме свойств у данных существуют методы — функции, находящиеся внутри свойств. Свойства и методы — такие же выражения, как переменные, константы или вызовы функции, а значит, их можно всячески комбинировать. Глубже эти темы разбираются на отдельных курсах, посвященных объектно-ориентированным возможностям JavaScript. Мы же в этом модуле изучим основы.

Определение функций

  1. Создание (определение) функции
  2. Передача одного аргумента
  3. Передача нескольких аргументов
  4. Возврат значений
  5. Возврат по умолчанию
  6. Параметры по умолчанию
  7. Именование
  8. Упрощенный синтаксис функций
  • Определение собственных функций значительно упрощает написание и поддержку программ. Например, умение определять функции позволяет объединять сложные (составные) операции в одну – вся сложность может быть скрыта за одной простой функцией. Научившись писать функции, вы сделаете первый шаг на пути к построению по-настоящему полезных программ. И мы вам в этом поможем. В этом модуле вы создадите свою первую функцию и научитесь давать ей (а заодно переменным и константам) понятные названия.

Логика

  1. Логический тип
  2. Предикаты
  3. Комбинирование операций и функций
  4. Логические операторы
  5. Отрицание
  6. Логические операторы 2
  7. Слабая типизация — 2
  • Логические выражения позволяют отвечать на вопросы, которые возникают во время работы программы. Пользователь аутентифицирован? Подписка оплачена? Год високосный? В этом модуле изучаем функции-предикаты – те, которые задают вопрос и отвечают на него – правда это или ложь. Попрактикуемся в написании таких функций и перейдем к более сложным логическим выражениям.

Условные конструкции

  1. Условная конструкция (if)
  2. else
  3. Конструкция else if
  4. Тернарный оператор
  5. Конструкция Switch
  • Задача функции-предиката — получить ответ на вопрос, но обычно этого недостаточно и нужно выполнить определенное действие в зависимости от ответа. If и Switch – конструкции JavaScript, с помощью которых программист может выбирать необходимое поведение программы в зависимости от разных условий: пропускать одни инструкции и выполнять другие. Их и разберем на практике в этом модуле.

Циклы

  1. Цикл While
  2. Агрегация данных (Числа)
  3. Агрегация данных (Строки)
  4. Обход строк
  5. Условия внутри тела цикла
  6. Формирование строк в циклах
  7. Синтаксический сахар
  8. Инкремент и декремент
  9. Возврат из циклов
  10. Цикл For
  • Любой код может повторяться десятки, тысячи, миллионы раз. В комбинации с другими известными нам инструментами — переменными и условиями — это открывает множество возможностей по построению программ и сложных систем. Приведем простой пример. Вам нужно найти конкретную фразу в учебнике из 500 страниц. Фразу вы помните, а вот номер страницы нет. Самый простой (и долгий) способ — последовательно просматривать страницы до тех пор, пока не найдете нужную. Для выполнения таких повторяющихся действий и нужны циклы.
Стоимость: бесплатно

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

  • JavaScript #0 Введение в курс
  • JavaScript #1 Массив перебирающие методы – forEach
  • JavaScript #2 Массив перебирающие методы – map
  • JavaScript #3 Массив перебирающие методы – filter
  • JavaScript #4 Массив перебирающие методы – every и some
  • JavaScript #5 Массив перебирающие методы – reduce и reduceRight
  • JavaScript #6 Функции: псевдомассив arguments
  • JavaScript #7 Функции: Типы функций Function esxpression, Function declaration & NFE
  • JavaScript #8 Функции: this контекст вызова
  • JavaScript #9 Функции: Замыкания, области видимости, лексическое окружение
  • JavaScript #10 Функции: модуль через замыкание
  • JavaScript #11 Объекты: Метод call
  • JavaScript #12 Объекты: Метод apply
  • JavaScript #13 Объекты: Метод bind
  • JavaScript #14 Объекты: Каррирование (Currying)
Стоимость: бесплатно

JavaScript для начинающих

Список уроков:

Урок 1

  • Введение в язык JavaScript.

Урок 2

  • Основные моменты при работе с JS

Урок 3

  • Вывод информации и Работа с консолью

Урок 4

  • Переменные и типы данных в JavaScript

Урок 5

  • Математические действия в JS

Урок 6

  • Условные операторы JS

Урок 7

  • Массивы данных. Одномерные и многомерные массивы

Урок 8

  • Циклы в JavaScript. Операторы циклов

Урок 9

  • Всплывающие окна (alert, prompt, confirm)

Урок 10

  • Функции в языке JavaScript

Урок 11

  • События и обработчик событий в JavaScript

Урок 12

  • Управление HTML и обработка форм при помощи JS

Урок 13

  • Создание таймеров и интервалов

Урок 14

  • Создание объектов. Встроенные функции

Урок 15

  • Заключительный урок.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 5 / 5. Количество оценок: 85

Оценок пока нет. Поставьте оценку первым.

Автор статьи. Ответственный за актуальный контент, текст и редактуру сайта. Эксперт по выбору профессии, курсов и профессий с 2016 года. Делюсь личным практическим опытом.

Оцените автора
Блог Романа Семенцова
Добавить комментарий