By the end of this session, you will be able to:
| Time | Segment | Type | Duration |
|---|---|---|---|
| 0:00 | What is a backend? | Theory | 20 min |
| 0:20 | Client-server model & HTTP overview | Theory | 20 min |
| 0:40 | REST vs other paradigms | Theory + Discussion | 20 min |
| 1:00 | Where .NET fits in | Demo | 15 min |
| 1:15 | Course project introduction | Discussion | 20 min |
| 1:35 | Q&A and wrap-up | Discussion | 25 min |
fetch() call you wrote in React assumed something was running on the other end. That something is the backend.
| Method | Purpose | Example in our API |
|---|---|---|
GET | Retrieve a resource | Fetch a task by ID |
POST | Create a new resource | Create a new task |
PUT | Replace a resource entirely | Update a task's full data |
PATCH | Partially update a resource | Mark a task as complete |
DELETE | Remove a resource | Delete a task |
| Code | Meaning |
|---|---|
200 | OK |
201 | Created |
400 | Bad Request |
401 | Unauthorized |
404 | Not Found |
500 | Internal Server Error |
Grouped by first digit:
200 OK with an error message inside the body. Use the correct status code.
Representational State Transfer — an architectural style, not a protocol
/tasks/42| Paradigm | Style | Best for |
|---|---|---|
| REST | Resource-based, HTTP verbs | General-purpose APIs, most web and mobile apps |
| GraphQL | Query-based, single endpoint | Complex UIs with flexible, nested data needs |
| gRPC | Binary, contract-first (protobuf) | High-performance microservice-to-microservice calls |
| WebSockets | Persistent bidirectional connection | Real-time: chat, live dashboards, multiplayer |
.NET 8 (what we use in this course)A production-style RESTful API with authentication, filtering, versioning, and integration tests — built incrementally across all 20 sessions.
By Session 20, your API will have:
Session 02 — Environment Setup & Git
Before next session:
restfulapi.net — first two sections onlyhttpbin.org — a live API that echoes back your requests