Last updated: Mar 25, 26 00:28 UTC | Permalink

4 - Design Patterns for Web Applications

Learning Objectives:

After this lecture, you will be able to:

  • Explain the role of “client” and “server” in the context of web application programming
  • Explain the role of HTTP endpoints and REST APIs versus WebSocket communication and event-driven messaging in a web application
  • Describe the fundamental differences between the three layers of the controller, service, and repository layers in a C-S-R architecture
  • Understand how the C-S-R architecture works in the context of a basic Express application
  • Understand a couple of key terms:
    • business logic
    • statelessness
    • horizontal and vertical scaling
    • microservices

Important Dates:

Lecture Slides:

Tutorials

Resources


© 2025-26 Adeel Bhutta, Robert Simmons and Mitch Wand. Released under the CC BY-SA license