Lectures
Video recordings of the lectures will be available in Moodle.
Materials for each week are added as a branch of this repo
0. Course Introduction
- Covers: Course Description, Scope of the course, Structure of the Course, Grading, Exam, Instructors, etc.
1. Web Applications – Basic concepts (6/9/2024)
- Covers: Three-tier architecture, client-server architecture, HTTP, and REST architecture.
2. HTML (Hypertext Markup Language) - (13/9/2024)
- Covers: History of HTML, What HTML is, HTML Elements, Tags, attributes, etc. HTML5, etc.
3. CSS (Cascading Style Sheets) (20/9/2024)
- Covers: What CSS is, CSS Syntax, How we can use CSS to style our webpages, etc.
- CSS
- Homework #1 release
4. JavaScript I & II (27/9/2024)
- Covers: JavaScript history, JavaScript key aspects, JavaScript data types, and their related properties and methods, JavaScript functions, Scopes, High-order Functions, Objects, Classes, Generators, and Regular expressions.
5. Bootstrap 5 (4/10/2024)
- Covers: key componenets of Bootstrap such as grids, navigation bars, buttons, forms, cards, etc.
6. JavaScript III (11/10/2024)
- Covers: Document Object Model (DOM), DOM Elements, locating, creating and appending DOM elements, DOM Traversing, DOM Events and Event Listeners, Browser Object Model (BOM), etc.
7. JavaScript IIII (18/10/2024)
- Covers: Synchronous vs Asynchronous programming, JavaScript Promises, JavaScript Call Stack, Event loop, Callback and Job queues, AJAX (Asynchronous JavaScript and XML), Fetch API, and JSON (JavaScript Object Notation).
8. Vue.js I (25/10/2024)
- Covers: The Single-Page Applications (SPA) concept, Vue core concepts such as Routers & Views, Single File Components (SFC), Data, Props and Methods, Vue Directives, Computed and watched properties, and Vue elements Lifecycle hooks.
9. Vue.js II - Vuex (1/11/2024)
- Covers: Vuex and its core concepts (state, getters, mutations, and actions).
- Vue.js 2 (Vuex)
- Homework #3 release
10. UI/UX design (8/11/2024)
- Covers: what is Design , and why it is important, Human centered design (HCD), how to approach User Interface (UI) and User Experience (UX) design
11. Node.js I (15/11/2024)
- Covers: How the back-end works, what is Node.js and how it works, Node.js core modules (e.g., fs, HTTP), creating a basic server, and the Express Framework.
12. Node.js II – database (22/11/2024)
- Covers: Model-View-Controller (MVC) design pattern, Representational state transfer (REST) API (Application Programming Interface), CRUD operations, and building an MVC Node-based application.
- Node.js 2
13. Node.js III - Security/Authentication (29/11/2024)
- Covers: System security (Authentication & Authorization), Cookies, and JSON Web Token (JWT)
- Node.js 3
- Homework #4 release
14. Testing (6/12/2024)
- Covers: Software testing, Software testing levels, testing approaches, testing types, Test-Driven Development (TDD), and Cypress.
- Testing
15. Consultation for the Exam and Exam method description (13/12/2024)
- Covers: Course summary, exam structure and method, and an exam example
- Exam method description
16. The first Exam (20/12/2024)