Структура за темами
- Загальне
Загальне
Метою викладання навчальної дисципліни «Фреймворки JavaScript» є формування теоретичних та практичних знань сучасних інструментів, мов програмування, технологій та підходів розробки веб-додатків.
Основними завданнями вивчення дисципліни «Фреймворки JavaScript» є:
– засвоєння принципів клієнт-серверної взаємодії та протоколу HTTP;
– набуття уміння застосування мови програмування PHP та фреймворку Laravel;
– використання стандартів автозавантаження та оформлення коду
Назви змістових
модулів і тем
Кількість годин
Усього
У тому числі
лекц.
лаб.
самост.
1
2
3
4
5
Модуль 1. Взаємодія клієнта та сервера в Інтернет.
Змістовий модуль 1. Взаємодія клієнта та сервера в Інтернет.
Тема 1 Взаємодія клієнта та сервера в Інтернет.
4
2
2
Тема 2. Передача даних між клієнтом та сервером.
6
2
4
Тема 3. Налагодження роботи веб-сервера.
12
8
4
Разом за змістовим
модулем 1
22
4
8
10
Модуль 2. Основи мови програмування PHP.
Змістовий модуль 2. Основи мови програмування PHP.
Тема 4. Основи мови програмування PHP. Об’єктно-орієнтоване програмування у PHP.
6
2
4
Тема 5. Збереження даних на стороні клієнта та сервера. Менеджер залежностей.
6
2
4
Тема 6. Передача та обробка параметрів форми.
8
4
4
Тема 7. Створення composer пакету.
8
4
4
змістовим модулем 2
28
4
8
16
Модуль 3. Каркаси веб-додатків.
Змістовий модуль 3. Каркаси веб-додатків.
Тема 8. Сучасний стан розвитку каркасів веб-додатків.
4
2
2
Тема 9. Основи фреймворка Laravel.
6
2
4
Тема 10. Архітектурі концепції Laravel.
6
2
4
Тема 11. Інсталяція та перший запуск проекту Laravel.
6
2
4
Тема 12. Інсталяція сторонніх пакетів Laravel.
8
4
4
Тема 13. Постачальники сервісів та ін’єкція залежностей.
8
4
4
змістовим модулем 2
38
6
10
22
Модуль 4. Обробка даних користувачів.
Змістовий модуль 4. Обробка даних користувачів.
Тема 14. Робота з формами. Робота з базою даних.
6
2
4
Тема 15. Обробка подій та використання черг.
6
2
4
Тема 16. Створення міграцій та заповнення бази даних (seeding).
8
4
4
Тема 17. Робота з формами та валідація вхідних даних.
6
2
4
Тема 18. Події, задачі та широкомовлення.
6
2
4
змістовим модулем 4
32
4
8
20
Усього годин
120
18
34
68
Змістовий модуль 1. Взаємодія клієнта та сервера в Інтернет.
Архітектура та принципи функціонування Internet. Алгоритм взаємодії клієнта та сервера у глобальній комп’ютерній мережі Інтернет. Сучасний стан розвитку клієнтських та серверних технологій. Поширені веб-сервери: огляд, характеристики, переваги та недоліки. Огляд та хронологія розвитку серверних мов програмування. Протокол HTTP. Структура протоколу: стартовий рядок, заголовки, тіло повідомлення. Значення та складові елементи URL. Методи протоколу HTTP (GET, POST, PUT, DELETE та ін.) та їх основне призначення. Коди відповідей на запити HTTP: інформаційні, успішне виконання, пере направлення, помилки клієнта та сервера. Формат відповіді. Інструментарій для моніторингу HTTP трафіку.
Змістовий модуль 2. Основи мови програмування PHP.
Методи вбудовування PHP-коду. Оператори для виводу результатів роботи скрипта. Змінні у PHP. Типи даних та ініціалізація змінних. Перевірка існування змінних. Видалення змінних. Створення та використання констант. Оператори PHP: математичні, присвоювання, двійкові, конкатенації строк, виклику зовнішніх програм. Перетворення типів даних. Масиви (одномірні, багатомірні, асоціативні) та робота з ними. Створення класів. Визначення властивостей класів. Робота із методами. Визначення конструкторів. Аргументи та типи. Управління доступом до класів та елементів класів. Статичні методи та властивості. Постійні властивості. Абстрактні класи та методи. Інтерфейси. Виключення. Final класи та методи. Клонування об'єктів. Простори імен. Автозавантаження. Reflection API. Cookie, їх обробка та встановлення. Методи встановлення та знищення Cookie. Термін придатності Cookie. Методи захисту даних, що зберігаються на боці клієнта. Механізм управління сеансом користувача. Способи ідентифікації сесії (сеансу). Ініціювання сесії. Додавання та видалення даних (змінних) в сесії. Взаємозв’язок між Cookie та сесіями. Загальна інформація про менеджер залежностей. Файл маніфесту composer.json. Призначення файлу composer.lock. Основні команди composer. Створення composer пакету. Встановлення та оновлення залежностей. Стандарти автозавантаження PSR-0 та PSR-4.
Змістовий модуль 3. Каркаси веб-додатків.
Огляд та особливості архітектурних паттернів, що використовуються в архітектурі фреймворків веб-додатків. Особливості розвитку та порівняння поширених PHP фреймворків. Створення додатку Laravel. Встановлення через composer. Конфігурація проекту. Конфігурація но основі параметрів середовища. Структура каталогів проекту. Конвенції іменування. Стандарті пакети для налагодження середовища розробки. Життєвий цикл запиту. Ядро для обробки HTTP-запитів та консольних команд. Утиліта командного рядка artisan. Постачальник служб та ін’єкція залежностей. Основи маршрутизації. Посередники. Контроллери.
Змістовий модуль 4. Обробка даних користувачів.
Створення та валідація запитів. Перелік стандартних валідаторів. Отримання інформації про помилки. Створення форми. Шаблонізатор Blade. Підключення до бази даних. Вираз SQL та його виконання. Використання транзакції бази даних. Обробка результатів запиту.Реєстрація подій та прослуховувачів. Генерація подій та прослуховувачів. Анонімні прослуховувачі. Кешування подій. Визначення подій. Створення черг. Генерація класів завдань. Параметри виконання завдань. Пакетна обробка завдань.
Самостійна робота студентів є складовою частиною навчального процесу та однією з умов глибокого засвоєння та тривалого закріплення знань з навчальної дисципліни "Фреймворки javascript". В зв’язку з цим самостійна робота має два щодо виконання нею студентами:
– розв`язування додаткових задач;
– розгляд та опрацювання додаткового матеріалу.
А саме складається з:
1) самостійного вивчення за інформаційними джерелами теоретичних питань, рекомендованих викладачем відповідно до робочої навчальної програми;
2) підготовки до виконання лабораторних робіт та оформлення звітів відповідно до вимог;
3) підготовки до занять та розв’язок задач за темою заняття і прикладами вирішення задач, наведеними на заняттях, та оформлення їх окремим звітом з занять відповідно до вимог.
Перевірка самостійної роботи студентів здійснюється регулярно на лекційних та лабораторних заняттях, під час проведення контрольних робіт і проміжного тестового контролю.
Діагностика знань, умінь та навичок студентів полягає в оцінювані рівня сформованих загальних та фахових компетентностей, дає змогу з’ясувати ступінь опанування тем дисципліни та рівень підготовки здобувачів освіти до професійної діяльності.
Оцінювання знань студентів з навчальної дисципліни здійснюється за 4-бальною шкалою, шляхом проведення контрольних заходів, які включають:
- поточний контроль,
- підсумковий контроль.Поточний контроль здійснюється під час проведення лекційних та практичних занять і має на меті перевірку знань студентів з окремих тем та рівня їх підготовленості до виконання завдань.
Ключовими формами та методами демонстрації студентами результатів навчання при поточному контролі є:- захист лабораторних робіт: демонстрація результатів виконання завдань із обгрунтуванням обраних методів та інструментів;
- презентація - виступи перед аудиторією для висвітлення окремих питань, індивідуальних завдань, реферативних досліджень, захист міні-проектів тощо;
- дискусія - обґрунтування власної позиції у вирішенні проблемних питань;
- кейс-метод - аналіз конкретних ситуацій, що дає змогу наблизити процес навчання до реальної практичної діяльності;
- тести - містить питання з варіантами відповідей стосовно певної теми, або декількох тем дисципліни;
- контрольні роботи - включають як перевірку теоретичних положень курсу, так і розв’язування практичних завдань. Контрольна робота може містити тестові завдання та практичні задачі, виконується на основі знань, вмінь і навичок, отриманих у процесі вивчення теми, декількох тем чи дисципліни в цілому.
Основні:
-
Marijn Haverbeke. Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming — No Starch Press, 2018. — 472 p. Also available online https://eloquentjavascript.net/
-
David Flanagan. JavaScript: The Definitive Guide: Master the World's Most-Used Programming Language. — 7th Edition — O'Reilly Media, 2020. —706 p.
-
Boris Cherny. Programming TypeScript: Making Your JavaScript Applications Scale. — O'Reilly Media, 2019. — 324 p.
-
Aristeidis Bampakos, Pablo Deeleman. Learning Angular: A no-nonsense beginner's guide to building web applications with Angular 10 and TypeScript. — 3rd Edition — Packt Publishing, 2020. — 430 p.
-
Alex Banks, Eve Porcello. Learning React: Modern Patterns for Developing React Apps. — 2nd Edition O'Reilly Media, 2020. — 310 p.
-
Heitor Ramon Ribeiro. Vue.js 3 Cookbook: Discover actionable solutions for building modern web apps with the latest Vue features and TypeScript. — Packt Publishing , 2020. — 562 p.
- Thomas Gamborg Nørgaardю Build an API with Laravel by Wacky Studio. 2019, 746 р.
Додаткові:
-
Jon Duckett. Web Design with HTML, CSS, JavaScript and jQuery Set. — Wiley, 2014. — 1152 p.
- Matt Stauffer. Laravel: Up & Running. A Framework for Building Modern PHP Apps. URL : http://oreilly.com/catalog/errata.csp?isbn=9781492041214
-
MDN web docs. https://developer.mozilla.org
-
Angular. https://angular.io/
-
React. https://reactjs.org/
-
Vue.js. https://vuejs.org/
-
- Секція 1
Секція 1
- Секція 2
Секція 2
- Секція 3
Секція 3