Данный курс предназначен как для начинающих, так и для практикующих фронтенд-разработчиков, которые хотят научиться использовать JavaScript-фреймворки в своей профессиональной деятельности. Обучение будет проходить на примере работы с фреймворком Ember.js.  Что будет в курсе: – Архитектура веб-приложений: концепции SPA, MVC и REST API.  – Фреймворк Ember.js: роутинг, шаблоны, компоненты, сервисы, контроллеры, аддоны, сборка приложений.  – Библиотека Ember Data: сервис store, модели, адаптеры, сериализаторы, работа со связями.  – Аутентификация и авторизация: использование JWT, разграничение прав в приложении. Необходимые знания и навыки для прохождения курса:  – Базовые знания HTML, CSS и навыки верстки HTML-страниц.  – Базовые навыки программирования, в том числе пониманием основ ООП. – Навыки программирования на языке JavaScript, в том числе с использованием свежих стандартов языка.  – Опыт работы с СУБД и понимание принципов функционирования бэкенда. 
  • 1. Введение в курс
    • 1. Знакомство и цели курса (03:33)
    • 2. Обзор разрабатываемого приложения в рамках курса (03:48)
    • 3. Архитектура web-приложений (56:03)
    • 4. Введение в NodeJS (06:45)
  • 2. Основы современного JavaScript
    • 5. Переменные и функции (02:55)
    • 6. Ключевые слова let и const (03:47)
    • 7. Стрелочные функции (07:05)
    • 8. Особенности при описании методов JavaScript (02:08)
    • 9. Массивы (04:25)
    • 10. Ресурсы о JavaScript (00:54)
    • 11. Ссылочные типы (06:16)
    • 12. Операторы spread и rest (07:11)
    • 13. Деструктуризация (02:57)
    • 14. Асинхронный код и promise (15:34)
    • 15. Шаблонные строки (01:15)
    • 16. Модули (08:03)
    • 17. Транспиляция и сборка кода для работы в браузере (05:28)
  • 3. Введение в Ember.js 
    • 18. Сравнительная характеристика популярных фреймворков (12:22)
    • 19. Знакомство с фреймворком Ember.js (20:39)
    • 20. Структура Ember-приложения (28:58)
  • 4. Сборка и запуск Ember-приложений  
    • 21. Система сборки Ember-приложений (06:17)
    • 22. Движок V8 (02:06)
    • 23. Пакетный менеджер npm (36:25)
    • 24. Основы управления сборкой Ember-приложений (10:46)
    • 25. Установка Bootstrap (14:24)
    • 26. Подключение сторонних библиотек в процессе сборки Ember-приложения (15:25)
    • 27. Развертывание Ember-приложения на GitHub Pages (50:45)
  • 5. Разработка Ember-приложений: анатомия и ключевые концепции фреймворка 
    • 28. Анатомия Ember-приложения (08:46)
    • 29. Роутинг и иерархия шаблонов (14:17)
    • 30. Добавление изображений с учетом публикации на сторонних ресурсах (17:32)
    • 31. Удаление npm-пакетов (04:52)
    • 32. Загрузка и отображение данных для роута (32:16)
    • 33. Организация слоя работы с данными (03:31)
    • 34. Сервисы (12:17)
    • 35. Вложенные роуты и динамические сегменты URL (09:07)
    • 36. Получение значений динамических сегментов URL в хуке model (04:27)
    • 37. Навигация и компонент LinkTo (09:46)
    • 38. Понятие CRUD-операций (02:25)
    • 39. Принцип Convention over configuration (10:20)
    • 40. Контроллеры (27:13)
    • 41. События (actions) в Ember-приложениях (08:16)
    • 42. Получение значений полей с формы в событиях (14:10)
    • 43. Еще раз об использовании сервисов (01:01)
    • 44. Реализация операции изменения данных (03:24)
    • 45. Сохранение данных с формы на сервере и переход на другой роут (06:50)
    • 46. Срабатывание хука model при переходе между родительским и дочерним роутом (12:06)
    • 47. Реализация операции добавления данных. Стратегии сброса данных на формах (31:33)
    • 48. Реализация операции удаления данных. Использование хелпера fn (10:40)
    • 49. Шаблоны loading, error и 404 (12:47)
    • 50. Сервисы работы с данными (03:43)
    • 51. Обработка параметров URL. Реализация поиска данных (44:36)
    • 52. Асинхронная догрузка данных после рендеринга шаблона роута (18:00)
    • 53. Двусторонний биндинг данных. Декоратор tracked (06:50)
    • 54. Особенности использования элементов input (08:01)
    • 55. Компоненты (31:31)
    • 56. Паттерн DDAU (10:35)
    • 57. Иммутабельность данных в компонентах (16:18)
    • 58. Обработка ошибок (27:31)
    • 59. Анимация и анимированные переходы между роутами (03:31)
    • 60. Обертывание сторонних компонентов в Ember-компоненты (36:34)
  • 6. Использование библиотеки Ember Data 
    • 61. Базовые концепции Ember Data (05:58)
    • 62. Реализация паттерна Adapter в Ember Data (04:34)
    • 63. Сериализация и десериализация данных (15:44)
    • 64. Основы работы с библиотекой Ember Data (01:01:56)
    • 65. Обзор функционала приложения, реализованного с использованием Ember Data (06:24)
    • 66. Реализация CRUD-операций с использованием Ember Data (59:00)
    • 67. Удаление связанных записей (08:54)
    • 68. Установка связей при сохранении моделей (19:05)
    • 69. Десериализация данных с использованием JSONSerializer (01:09:03)
    • 70. Иерархия вызовов при десериализации данных с использованием JSONSerializer (14:19)
    • 71. Повторная загрузка асинхронных связей в программном режиме (04:01)
    • 72. Использование синхронных связей (18:23)
    • 73. Сериализация данных с использованием JSONSerializer (23:19)
    • 74. Механизм преобразования имени модели во множественное число при формировании запросов (06:20)
  • 7. Аутентификация и авторизация 
    • 75. Понятие аутентификации и авторизации. Аутентификация на основе сессий (43:02)
    • 76. Аутентификация с использованием токенов (25:02)
    • 77. Реализация механизма регистрации пользователя (46:38)
    • 78. Валидация данных на сервере при выполнении регистрации пользователей (11:39)
    • 79. Механизмы входа пользователей (42:45)
    • 80. Реализация механизма аутентификации с использованием JWT (42:45)
Евгений Хаберев
Разработчик и руководитель отдела обучения в ООО "Новая платформа"
Опыт профессиональной разработки и преподавания более 10 лет. Разрабатывал на C#, JavaScript и других языках. С 2015 года работал в роли тимлида и технического эксперта по направлению Ember.js.
Ember.js
Стоимость:   
3800
2290