Онлайн-курс
занятий
занятий в неделю
старт
За неделю записалось
Осталось
Научись разрабатывать приложения с нуля!
На курсе Full-Stack ты сможешь быстро усвоить навыки разработки JavaScript с обеих сторон — клиентской и серверной.
Подробные уроки и практические проекты позволят узнать, что такое Node.js, Express и React, как их применять, как создавать полноценные веб-приложения с нуля, разрабатывать RESTful API.
Ты научишься разбираться в базах баз данных MongoDB и получишь все необходимые навыки для решения сложных задач программирования и разработки веб-проектов.
Цели курса
- Научиться разрабатывать полноценные веб-приложения на JavaScript с нуля
- Разобраться в основах серверной и клиентской разработок на Node.js, Express и React
- Ознакомиться с основными инструментами и библиотеками, использующими Full-Stack разработчики
- Научиться создавать и использовать RESTful API для построения веб-приложений
- Научиться работе с базами данных на примере MongoDB и решению задач с их помощью
Изучаемые технологии
-
React
-
Nodejs
-
expressjs
-
JavaScript
-
MongoDB
-
HTML5
-
CSS
-
Git
-
Github
-
DOM
-
TypeScript
Full-Stack рарзработка
Программа онлайн-курса
Full-Stack

-
Введение. Установка необходимого ПО
- Знакомство и план курса
- Типы файлов
- Браузер
- Языки программирования
- Редакторы кода
-
HTML
- Структура HTML-документа
- Теги, атрибуты тегов
- Разметка текста с помощью HTML
- Ссылки, списки, таблицы
- Изображение. Форматы изображений
- Формы
- СМИ (video, audio). Iframe
- Теги-ориентиры (header, main, aside, nav, section, article)
-
Git. Github
-
CSS
- Каскадность. Наследование
- Подключение CSS
- Родной стиль. Normalize.css Reset.css
- Селекторы
- Стилизация текста, шрифты
- Блоковая модель
- Float. Float layout. Clearfix
- Position
- Псевдоклассы. Псевдоэлементы
- Flexbox. Flexbox layou
- CSS Grid. Grid layout
- CSS препроцессоры, фреймворки, методологии
-
Продвинутая работа с графикой
- SVG
- SVG спрайты
- Иконочные шрифты
- Адаптивная графика. Тег picture
- Оптимизация графики
-
Адаптивная верстка
- Viewport. @media
- Единицы измерения vh, vw, vmin, vmax, rem
- Знакомство с концепцией Responsive Web Design
- Mobile-first/Desktop-first
- Оптимизация страницы
-
Семантика и доступность
- Семантическая разметка
- Доступность пользовательских интерфейсов
-
CSS анимации
Transform
Transition
Filter
Animation
-
Знакомство с JS
- Знакомство и план курса
- Ввод в технологию веб-разработки
- Подключение скриптов, первый запуск программы
- Взаимодействие с пользователем через примитивные функции
- Git, Github
-
Переменные и операторы
- Комментарии
- Объявление переменных
- Всплыв переменных
- Сравнение var, let, const
- Типы данных
- Операторы
-
Условные конструкции
- Условная конструкция if/else if/else
- Условная конструкция switch
- Тернарный оператор
- Практика
-
Циклы
- Введение в циклы
- Виды циклов
- Циклы while, do…while, for
- Инструкции break и continue
- Вложенные циклы
- Бесконечные циклы
- Практика
-
Массивы
- Основы работы с массивами
- Варианты создания массивов
- Методы работы с массивами
- Перебор масс с помощью циклов for, for…in, for…of
- Удаление элементов из массива
- Создание простых объектов
- Практика
-
Основы функций
- Основы работы с функциями
- Варианты создания функций
- Параметры функций, значение по умолчанию
- Область видимости функции
- Передача параметров в функцию по значению и по ссылке
- Возврат значения из функции
- Замыкание
- Лексическая область видимости
- Рекурсия
-
Контекст выполнения функции
- Глобальный объект window
- Функциональный контекст
- Функции в объектах — методы
- Методы подмены контекста
- Стрелочные функции и их отличия от обычных
-
Функции
- Функция-коллбек
- Функция высшего порядка
- Перебор массивов с помощью методов forEach, find, map, filter, reduce
-
DOM
- Что такое DOM?
- Получение существующих DOM-элементов
- Динамическое создание и удаление новых DOM-элементов
- Управление атрибутами и содержанием DOM-элементов
- Возможные события
- Добавление обработчиков событий DOM-элементов
-
Events
- Фазы обработки событий
- Делегирование событий
- Объект event и его методы
- BOM-объекты
-
Работа с формами
- Основные элементы управления
- Базовые навыки динамической работы с элементами управления
- Валидация полученных данных от пользователя
-
WebStorages
Cookies
LocalStorage
SessionStorage
Практика
-
Регулярные выражения
- Создание регулярного выражения
- Работа с регулярными выражениями с помощью методов
- Модификаторы регулярных выражений
- Структура шаблонов. Метасимволы. Скобки. Квантификаторы
-
Библиотеки и фреймворки
- Обзор популярных библиотек и фреймворков
- Установка библиотек с помощью NPM
- Примеры работы с распространенными библиотеками
-
Асинхронное исполнение кода
EventLoop
Функции отложенного исполнения кода
-
ESNext
- EcmaScript
- Babel
- Spread & Rest операторы
- Деструктуризация массивов и объектов
- Оператор Nullish coalescing
- Оператор Optional chaining
- Другие новейшие операторы
-
HTTP
- Обзор клиент-серверной архитектуры
- Что такое протокол HTTP и как он работает
- Обзор технологии Ajax
- Методы работы с сервером по технологии Ajax
- Примеры открытых API
- Технология WebSockets
-
Promise
- Введение в Promise
- Состояние Promise
- Обработка Promise с помощью методов then, catch, finally
- Одновременная обработка нескольких Promise
- Livecoding
-
ООП
- Основные понятия ООП
- Функции-конструкторы
- Прототипное наследование
- Создание объекта с определенным прототипом
- Создание сущностей с помощью class
- Наследование сущностей созданных через class
- Частные свойства
- Статические свойства за методы
- Практика
-
Работа с асинхронными функциями
- Создание собственных асинхронных функций
- Обработка асинхронных функций с инструкцией await
- Обработка ошибок
-
Системы сбора кода
- Обзор современных систем сбора кода
- Основы работы с Gulp
- Компиляция и сборка файлов sass
- Транспиляция и сборка js-файлов
- Плагин ESLint
-
Webpack
- Обзор возможностей Webpack
- Установка и конфигурация Webpack
- Настройка базовых лоадеров и плагинов в Webpack
- Запуск локального сервера с помощью Webpackя
-
React
- Обзор понятия SPA
- Введение в React
- Основные концепции React
- Создание первого React-приложения
- Основы работы с JSX
- Варианты создания компонентов
- Передача props к компонентам
- Обработка событий в React-компонентах
-
Компоненты React
- Этапы жизненного цикла компонентов
- Сравнение классовых и функциональных компонентов
- Работа с классовым компонентом
- Методы жизненного цикла классового компонента
- Работа со state
-
Функциональные компоненты в React
- Основы работы с функциональным компонентом
- Особенности работы с хуками: useState, useEffect, useRef, useCallback, useMemo, useContext
- Создание собственных хуков
-
Работа с формами в React
- Работа с основными элементами управления формы
-
Маршрутизация в React
- Основы работы с библиотекой react-router-dom
-
Библиотеки для работы с React-компонентами
- Обзор библиотек-компонентов AntD/Material UI
- Работа со стилями в React с помощью CSS-модулей и библиотек styled-components
- Обзор библиотеки для создания таблиц данных Ag Grid
-
Redux
- Что такое state management?
- Введение в Redux и основные понятия
- Основные этапы data flow у Redux
- Интеграция Redux с React-приложением
- Работа с хуками useDispatch и useSelector
- Middlewares на примере redux-thunk
- Livecoding
-
Redux-Toolkit
- Оптимизация работы с Redux с помощью Redux-Toolkit
- Основные понятия Redux-Toolkit
- Создание и использование RTK Query
-
TypeScript
- Введение в TypeScript — преимущества и недостатки
- Статическая типизация в TypeScript
- Типы и интерфейсы
- Алиасы, возможные значения, необязательные параметры
- Generics
- Работа с TypeScript в React-приложении
-
Тестирование React-приложений
- Основные понятия тестирования программного обеспечения
- Модульное тестирование с помощью библиотеки Jest
- Тестирование React-приложений с помощью библиотеки React-Testing-Library
-
NodeJS
- Eventloop
- Поддерживаемые стандарты (ECMAscript 5, ECMAscript 6)
- Core
- Streams
- Event emitter
-
Знакомство с асинхронностью
Callback
Promise
Async (caolan)
Sync/await
-
Знакомство с промежуточными обработчиками
Connect
-
Создание веб-сервера
HTTP
Express
-
Использование шаблонизаторов
Pug
Nunjucks
-
Работа с MongoDB
Query
Aggregation
-
Подключение авторизации и аутентификации
-
Тестирование и написание документации
Бонусы курса
Выпускники получают сертификат об окончании курса
Каждый сертификат имеет уникальный номер, по которому потенциальный работодатель может проверить его валидность и увидеть базовые показатели успеваемости.
Как проходит обучение
Преимущества онлайн-обучения в Компьютерной школе Hillel
-
Группы по 17 человек Преподаватель уделяет время каждому студенту
-
Преподаватели практики У нас преподают только практикующие специалисты из топовых IT-компаний.
-
Система личных кабинетов Эффективное и удобное обучение.
-
Оперативная служба поддержки студентов Срочный вопрос — своевременное решение.
-
Доступ к видеозаписям занятий Записи уроков остаются у студентов после окончания курса.
-
Практические занятия Большая часть занятий ориентирована на практику.
-
Что мы делаем для того, чтобы вы достигли успеха?
-
Проводим мастер-классы по подготовке резюме и поиску работы
-
Регулярно обновляем программы курсов под требования рынка
-
Приглашаем преподавать только лучших практикующих специалистов
-
Развиваем нашу сеть партнеров среди топовых IT-компаний
-
Наши преподаватели часто сами забирают к себе наших лучших Студентов ;)
Наши преподаватели и выпускники работают в топовых IT-компаниях мира
Часто задаваемые вопросы
-
Как я могу оплатить обучение?
Оплата производится через выставление инвойса на E-mail через сервисы LiqPay и Fondy.
-
Как работает оплата частями?
Мы предлагаем возможность разбить стоимость курса на ежемесячные платежи до 12 частей посредством рассрочки в ПриватБанк или Монобанк. При этом вам не нужно платить дополнительные комиссии или проценты банкам, поскольку Школа оплачивает эту комиссию за вас.
Если вы хотите воспользоваться оплатой частями, пожалуйста, обратитесь к нашему менеджеру любым удобным для вас способом.
Подробнее об оплате по частям в нашем материале.
-
Выдается ли сертификат об окончании курса Full-Stack международного уровня?
Наш сертификат о прохождении курсов внутреннего образца. В первую очередь мы вам предоставляем знания, отвечающие требованиям существующих вакансий на рынке труда. В IT-сфере при приеме на работу на должности начального уровня абсолютно не важно, какие у вас есть дипломы и какую сертификацию вы прошли. В первую очередь работодатель на собеседовании будет рассматривать то, что вы умеете и в чём есть опыт, а не какой диплом вы сможете принести с собой. Это касается как Украины, так и компаний, находящихся за границей.
К тому же многие наши курсы вам могут дать знания, которые вам понадобятся для прохождения сертификации удаленным образом через интернет. Данную сертификацию можно пройти только удаленно и самостоятельно.
-
Будут ли задавать домашние задания на курсе Full-Stack? Проверяется ли выполненное задание?
Да! Ведь это обязательная и очень важная часть процесса вашего обучения, так как каждый Студент должен закрепить весь полученный на занятии материал дома, выполняя домашние задания. Каждое заданное ДЗ будет проверяться преподавателем, и по нему вы будете получать фидбэк. Также некоторые задания разбираются на следующем занятии. Без выполнения домашний заданий никто не сможет добиться желаемого результата.
-
Какой нужно иметь компьютер, чтобы обучаться на курсе Full-Stack?
Требования к компьютеру для обучения на курсе Full-Stack.
Операционная система:
- Windows 10 64-бит
- macOS 10.13 или выше
- Linux: Ubuntu 16.04 - 20.04
Процессор* :
- Минимум intel core i5 4-го поколения
- Рекомендуется i5 8-го
*Допустимы аналоги от AMD
Оперативная память:
- Минимум 8 Гб
- Рекомендуется 16 Гб
Память:
- Минимально 500 Гб HDD и более
- Рекомендуется 200 Гб SSD и более
- Верстка сайта с помощью HTML + CSS
- 123819
- 1761
Верстка сайта с помощью HTML + CSS
смотреть 121 мин-
Савелий Сычев Software Engineer в Microsoft
- Как пройти собеседование по JS? И зачем?
- 88563
- 3530
Как пройти собеседование по JS? И зачем?
смотреть 71 мин-
Юрий Федоренко Senior Front-end Developer в MacPaw
- Как создать правильное выпадающее меню - HTML/CSS (float и flexbox верстка)
- 61507
- 868
Как создать правильное выпадающее меню - HTML/CSS (float и flexbox верстка)
смотреть 130 мин-
Савелий Сычев Software Engineer в Microsoft
- Замыкания в JavaScript
- 48472
- 3125
Замыкания в JavaScript
смотреть 6 мин-
Юрий Федоренко Senior Front-end Developer в MacPaw
- Создание чата на Node.js за 3 часа
- 37706
- 657
Создание чата на Node.js за 3 часа
смотреть 182 мин-
Юрий Чихрай NodeJS Backend Developer
- Как пройти собеседование по JS? И зачем? vol.2
- 31770
- 1898
Как пройти собеседование по JS? И зачем? vol.2
смотреть 69 мин-
Юрий Федоренко Senior Front-end Developer в MacPaw