Web Programming I
Course Introduction
Basic Course Information
Course Name Web Programming I
ECTS 7
Duration 16 Weeks
Lecture 32 Hours (2 hrs/week)
Lab 48 Hours (3 hrs/week)
Tutorial 16 Hours (1 hr/week)
Home Study 96 Hours (6 hrs/week)
Course Objective
Learn how to develop enterprise web applications
Learning outcomes
● Describe Web Technologies
● Explain the components involved in enterprise web application
development
● Design and Architect Enterprise Applications
● Design web solutions using MVC and related design pattern
● Build modern database-backed web application
● Explain Web Services
Learning outcomes
● Design and implement RESTful APIs
● Explain and address performance and scalability issues
● Secure web applications and REST APIs
● Test web applications
● Deploy web application in different production environments
Concepts Covered
● Web Technologies
● HTTP Versions
● HTTP request/response
● Sessions and Cookies
● Routing, Templating, Forms
● Web Services
○ SOAP, REST API, GraphQL, gRPC
● Securing Web Applications
Concepts Covered
● Data storage, Serving Files, JSON/XML processing
● Concurrency, Performance and Scalability
● Testing
● Deployment Options
○ Standalone, Cloud and Container-Based Deployment
Language and Frameworks Used
Language - Python
Frameworks - Flask and Django
Prerequisites
Web Design using HTML, CSS, and JavaScript
Python Programming
Large-scale web development requirements
● Scalability
○ Vertical and Horizontal scalability
● Modularity
○ Powerful interface construct, functional programing support, microservice development
● Maintainability
○ Simple and readable syntax, code formatting and documentation support, testing
support, modern packaging system
● High Performance
○ Concurrency support that allows multiple requests to be processed at the same time
Assessments
● Lecture part covers 50 %
● Lab and Project part covers 50 %
Assessments
● Lecture (Quizzes during lecture 10 to 15 %)
● Final Exam (35 to 40 %)
Resources
●