Study program: F3 Computer Science
Degree: Bachelor
Type of module: lectures, practical work
Lecturer: Senior lecturer Iryna Kyrychenko
Language: English
Credit Points: 3 ECTS
Description:
This JavaScript course covers both fundamental and advanced programming topics. It begins with connecting JS to a webpage, variables, strict mode, and data types. Then it moves on to exercises involving variable creation, conditions, loops, and functions. The course explores objects, arrays, closures, recursion, algorithms, and passing by reference or value. Special focus is given to working with the DOM, events, mobile interaction, and asynchronous operations (async, defer, Promise, async/await). Modern ES6+ features are introduced, including destructuring, arrow functions, the nullish coalescing and optional chaining operators (??, ?.), classes, and modules. Practical projects include building a slider, calculator, timer, and modal window. The course covers server communication using Fetch, AJAX, and axios, as well as handling JSON and localStorage. It dives deeper into project bundling (Webpack, Babel), version control with Git and GitHub, and SSH setup. The course concludes with portfolio creation, quizzes, and exposure to popular libraries and animations.