img

"Visione d'Insieme"

img
Lato CLIENT:
Il "CLIENT" è un Utente della rete "INTERNET" che usa un "PROGRAMMA" come il "Browser"
per interaggire con le pagine web poste in rete.

Il termine lato client indica le operazioni effettuate da un client sulla rete.

Normalmente quando un "Sito Web" è posto in rete, viene collocato tramite un provider di servizi su un "SERVER", conferendogli così la possibità di rispondere alle chiamate delle proprie pagine, attraverso Linguaggi di programmazione con grande capacità di elaborazione, chiamati "Linguaggi Server".

Quando questo servizio non è disponibile, la risposta alle richieste di pagine avviene in modo diretto e l'elaborazione è demandata al "Linguaggio client", che usa come Linguaggio di programmazione, esclusivamente "JavaScript", o sue librerie.

Le operazioni effettuate in questo modo si dicono appunto operazioni "lato-client (client-side in inglese)".


img
Protocollo HTTP
Il protocollo HTTP (HyperTextTransfer Protocol) é basato sullo scambio di dati testuali.
Il client invia una richiesta al server, che la interpreta e fornisce insieme alla risposta,
un codice di stato per indicare l'assenza o meno di errori.


imge
Lato SERVER:
Internet è una grande rete che collega tra loro computer installati in tutte le parti del mondo e che li mette in condizione di comunicare tra di loro.

Ciascun computer connesso in rete a seconda delle sue specificità, può svolgere uno o più dei seguenti ruoli:
Contenitore server di dati e applicazioni che vengono utilizzati dagli utenti
Come servizio di applicazioni web
Come database
Come server di posta ecc...


La comunicazione CLIENT-SERVER
avviene solitamente secondo un modello di richiesta-risposta:
il client invia una richiesta al server e questo gli risponde
con i dati richiesti.
Ad esempio,
il client potrebbe richiedere la data corrente a un server per regolare l'orologio del computer locale in modo preciso.
Le tipologie di comunicazione che possono transitare su Internet sono molteplici:
pagine web, posta elettronica, messaggistica istantanea, peer-to-peer ecc...
...Ciascuna di queste tipologie applicative funziona con uno specifico protocollo di comunicazione e richiede elementi software differenti. La tipologia che ci interessa approfondire è quella relativa al mondo del Web. In quest'ambito è possibile identificare i seguenti componenti software:

- Web Server: È un programma che si occupa di inviare risorse al client. Queste possono essere documenti HTML, immagini, filmati e così via. Una chiamata AJAX invoca il web server per ottenere i dati.

- Applicazione web: Sullo stesso computer che ospita il Web Server viene installato anche il software che implementa il sito web o l'applicazione web che dovrà essere utilizzata dall'utente. Si tratta di un insieme di file HTML, fogli di stile CSS, programmi JavaScript e altri elementi, come filmati, file audio, tabulati e altre risorse.
Spesso alcuni di questi contenuti sono generati dinamicamente da elementi di software complessi, che sfruttano un database per operare elaborazioni e produrre un risultato da sottoporre all'utente.
In questo caso le tecnologie utilizzate possono essere PHP, JSP, ASP e altre. Solitamente, le risposte alle richieste AJAX vengono prodotte a partire da dati provenienti dal database.

Comunicazione di RETE tra "Client" e "Server"

img