Програма інтенсиву
Розділ 1: Вступ
Теорія:
- інструменти роботи з JavaScript: браузер, консоль, IDE.
- введення в роботу з системою контролю версій.
- робочий процес на інтенсиві.
- Вступ до JavaScript.
- області застосування JavaScript.
- функції, типи даних, змінні.
- умовні оператори, цикли.
- діалогові вікна.
- Інтерпретованість мови, черговість виконання команд.
- винятки.
- Консоль.
Клонування репозиторію.
Вибір IDE.
Налаштування робочого оточення.
Розділ 2: знайомство з DOM
Теорія:
- введення в роботу з DOM. Форма.
- події. Модель Dom Level 0.
- Cookies.
- Javascript. Контекст функції.
Валідація даних, введених у форму.
Збереження останніх валідних даних у формі в cookies.
Розділ 3: занурення в DOM
Теорія:
Створення Dom-дерева на основі заданої структури даних.
Додавання обробників помилок і таймерів на завантаження зображень.
Розділ 4: передача та обробка даних
Теорія:
Завантаження структури даних з минулого тижня з сервера по AJAX.
Фільтрація списку.
Збереження стану фільтрів в LocalStorage.
Розділ 5: події
Теорія:
Додавання фотогалереї до навчального проекту, початок.
Розділ 6: вступ до ООП
Теорія:
Продовження роботи з фотогалереєю.
Розділ 7: медіа та графіка
Теорія:
Завершення фотогалереї, додавання відеоплеєра як одного зі слайдів.
Початок роботи над інтерактивним компонентом навчального проекту.
Розділ 8: робота зі станами додатка
Теорія:
Збереження стану програми в адресному рядку браузера і відновлення після перезавантаження сторінки.
Рефакторинг коду, відповідно до шаблону MVC.
Розділ 9: кращі практики та оптимізація
Теорія:
Завершення роботи з інтерактивним компонентом.
Доведення проекту до фінального стану.
Теорія:
- Просунута робота з DOM: створення, видалення елементів, DocumentFragment.
- введення в шаблонізацію.
- Робота з зображеннями.
- Базові структури даних: масиви та об'єкти.
- бібліотеки jQuery, lodash/underscore, mout.
- інтервали і таймаути.
- асинхронність JavaScript, черговість виконання коду, втрата оточення.
Створення Dom-дерева на основі заданої структури даних.
Додавання обробників помилок і таймерів на завантаження зображень.
Розділ 4: передача та обробка даних
Теорія:
- Вступ до HTTP: методи, коди стану, заголовки.
- введення в AJAX.
- Об'єкт XMLHttpRequest.
- GlobalFetch.
- jQuery.ajax.
- Cross-Origin Resource Sharing (CORS).
- Робота з колекціями.
- зберігання даних у localStorage.
Завантаження структури даних з минулого тижня з сервера по AJAX.
Фільтрація списку.
Збереження стану фільтрів в LocalStorage.
Розділ 5: події
Теорія:
- модель подій DOM Level 2.
- обробники подій. Створення, видалення обробників.
- Об'єкт Event. Фази події.
- Контекст функції. Завдання контексту.
- замикання.
- делегування подій.
- обробка подій у jQuery.
Додавання фотогалереї до навчального проекту, початок.
Розділ 6: вступ до ООП
Теорія:
- введення в об'єктно-орієнтоване програмування (ООП).
- особливості ООП у JavaScript: прототипи. Конструктор. Ланцюжок прототипів. Успадкування в JavaScript.
Продовження роботи з фотогалереєю.
Розділ 7: медіа та графіка
Теорія:
- HTMLMediaElement на прикладі audio і video.
- графіка на SVG.
- введення в графіку на Canvas.
Завершення фотогалереї, додавання відеоплеєра як одного зі слайдів.
Початок роботи над інтерактивним компонентом навчального проекту.
Розділ 8: робота зі станами додатка
Теорія:
- Робота з адресним рядком. window.location. document.location.
- введення в роботу з історією браузера. pushState/popState.
- введення в MVC. Бібліотека backbone.js
Збереження стану програми в адресному рядку браузера і відновлення після перезавантаження сторінки.
Рефакторинг коду, відповідно до шаблону MVC.
Розділ 9: кращі практики та оптимізація
Теорія:
- найкращі практики JavaScript. Модульність. Патерни проектування.
- введення в роботу з пам'яттю, профілювання.
Завершення роботи з інтерактивним компонентом.
Доведення проекту до фінального стану.
https://privatelink.de/?https://htmlacademy.ru/