Web Programming
0%
Course Title: Web Programming
Course No: ENCT 330
Nature of the Course: Theory + Lab
Semester: 5
Full Marks: 60 + 0 + 0
Pass Marks: 24 + 0 + 0
Credit Hours: 3
Course Objectives
Course Contents
1. Introduction
6 hrs
2.1. JavaScript essentials
- Data types, variables, control structures, functions
- Dom manipulation, events, and form validation
- Local storage and session storage
- GUI interactions
- JavaScript library: jQuery
2.2. Modern JavaScript (ES6+)
- Arrow functions, destructuring, spread/rest operators
- Callbacks, promises, async/await
- Modules and imports
2.3. Client-side applications
- Client-side web application development using React JS library
- Traditional multi-page apps vs. single-page apps (SPAs)
- Component-based UI and props
- State management and data flow
- Client-side routing and navigation without reloads
- Fetch API: Fetching, displaying data, handling errors and loading states
- Comparison of modern JavaScript libraries: React, Angular, Vue
Laboratory Works
- 1.Build a responsive personal portfolio page
- 2.Create a dynamic to-do list app
- 3.Develop a CRUD application using a server-side framework
- 4.Create a frontend in React that fetches data from backend API
- 5.Extend the CRUD app with user authentication
Reference Books
- 1.Copes, F. (2019). The JavaScript Handbook. (https://flaviocopes.com/the-javascript-handbook-2019-edition/)
- 2.Nixon, R. (2025). Learning PHP, MySQL & JavaScript: A Step-by-Step Guide to Creating Dynamic Websites. O'Reilly Media.
- 3.Vincent, W. S. (2025). Django for Beginners: Build websites with Python and Django.
- 4.Richardson, L., & Amundsen, M. (2013). RESTful Web APIs: Services for a Changing World. O'Reilly Media.
- 5.Hoffman, A. (2024). Web Application Security: Exploitation and Countermeasures for Modern Web Applications (2nd ed.). O'Reilly Media.