|
|
Al momento non sei loggato, o non sei un utente registrato, ma puoi iscriverti alla nostra newsletter.

|
|
|
|
|
|
|
Il termine "client-server" si riferisce normalmente all'architettura di una applicazione software (un "programma", in termini semplici) che è in effetti divisa in due parti ben distinte, anzi in due programmi, fra loro indipendenti: un programma "server", quello che fornisce il servizio richiesto; ed un programma "cliente", ovvero quello utilizzabile per accedere al servizio. Quest'ultimo normalmente consiste principalmente in una "interfaccia di utente" che accetta le richieste di un utilizzatore umano, ne verifica la correttezza e compone un "messaggio" di richiesta al server, il quale risponde appropriatamente. A questo punto il "cliente" può convertire il messaggio di risposta in una forma più adatta ad essere compresa dall'utilizzatore
e presentarlo.
I motivi per cui le architetture di tipo client-server hanno ottenuto grande successo sono di vario tipo e riguardano vari aspetti dell'ingegneria del software. Alcuni dei principali vantaggi derivano dal fatto che cliente e server hanno funzioni radicalmente diverse e sono in larga misura indipendenti fra loro: l'unica cosa che li "lega" è l'insieme di messaggi che possono scambiarsi.
Più in particolare:
- L'architettura si presta naturalmente ad applicazioni in cui è richiesto un solo server che fornisce servizio a molti clienti.
- L'architettura si presta naturalmente ad essere utilizzata in ambiente distribuito (in rete).
- La parte cliente e la parte server di una applicazione possono essere sviluppate separatamente in modo semplice da gruppi di lavoro diversi.
- Le due parti possono essere ottimizzate, ciascuna per il suo compito, indipendentemente.
- È possibile sostituire i clienti o i server con programmi di tipo diverso, purché accettino lo stesso "linguaggio" di messaggi. Ad esempio un utente può scegliere fra diverse interfaccie utente quella che preferisce (o a cui è abituato).
|
|
|
|
|
|
|