# Web Application Architecture

## 1. Client-Server Architecture

* Separating where resources like product information exist and apps that use resources is called 2-tier architecture
* Client: App that uses resources
* Server: Place that provides resources

\


## 2. Characteristics of Client and Server

* Client and server have a request-response relationship
* In client-server architecture, request comes first, then response follows
* Server only plays the role of delivering resources
* Space where resources are stored is called database, and form with added DB is called 3-tier architecture

\


## 3. Types of Client and Server

* Clients are distinguished by platform:
  * Client in web platform mainly used through browser: website or web app
  * Apps like iOS, Android can also be clients
* Servers differ by what they do (mail server, file server, web server, etc.)

\


## 4. Client-Server Communication and API

* In web application architecture, client and server communicate using HTTP protocol
* At this time, server provides interface for clients to utilize resources well, which is called API (Application Programming \*Interface) (\*Interface: contact point made for communication to be possible)
* API documentation must be written for clients to utilize it
