Lectures
Video recordings of the lectures will be available in Moodle.
Lectures' material will be added as we progress
Materials for each week will be added as a branch of this repo
Course Introduction Course Description, Scope of the course, Structure of the Course, Grading, Exam, Instructors, etc.
1. Web Applications – Basic concepts (2/9/2022)
Covers: Three-tier architecture, client-server architecture, HTTP, and REST architecture.
2. HTML (Hypertext Markup Language) - (9/9/2022)
Covers: History of HTML, What HTML is, HTML Elements, Tags, attributes, etc. HTML5, etc.
3. CSS (Cascading Style Sheets) (16/9/2022)
Covers: What CSS, CSS Syntax, How we can use CSS to style our webpages, etc.
4. JavaScript I (23/9/2022)
Covers: JavaScript history, JavaScript key aspects, JavaScript data types, and their related properties and methods, etc.
5. JavaScript II (30/9/2022)
Covers: JavaScript functions, Scopes, High-order Functions, Objects, Classes, Generators, and Regular expressions.
6. JavaScript III (7/10/2022)
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 (14/10/2022)
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 (21/10/2022) - Room 1025
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 workshop - (28/10/2022) - Guest lecturer
The workshop will be in two parts:
- Part 1 - 12:15-13:45 - (Room 1037) ; and
- Part 2 - 14:15-15:45 - (Room 1037): this part is optional, but it is also very recommended to attend it.
10. Vue.js II (Vuex) (4/11/2022)
Covers: Vuex and its core concepts (state, getters, mutations, and actions).
11. Node.js I (11/11/2022)
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 (18/11/2022)
Covers: Model-View-Controller (MVC) design pattern, Representational state transfer (REST) API (Application Programming Interface), CRUD operations, and building an MVC Node-based application.
13. Node.js III - Security/Authentication (25/11/2022)
Covers: System security (Authentication & Authorization), Cookies, and JSON Web Token (JWT)
14. Testing I (2/12/2022)
Covers: Software testing, Software testing levels, testing approaches, testing types, Test-Driven Development (TDD), and Cypress.
15. Consultation for the Exam and Exam method description (9/12/2022)
Covers: Course summary, Exam structure and method.
The exam example is already available in Moodle
- GitHub repo of the exam example: https://github.com/M-Gharib/WAD2022-Exam-Example