Swappa : Uni / Dom Varie
Creative Commons License

Torna alla pagina di Tecnologie Web


 :: Appello d'esame di Tecnologie Web - ??? ::

1. Spiegate cos'è un selettore CSS e come potrebbe essere usato per ottenere informazioni diverse di medesimi elementi XHTML

I CSS sono fogli di stile a cascata (cascate style sheets) che permettono di separare contenuto e presentazione. Un selettore CSS fa parte delle regole del foglio di stile e può essere quasiasi tag oppure un insieme di tag.

2. Spiegate cos'è la codifica UTF e con quali scopi fu introdotta

Lo standard Unicode definisce 3 codifiche (UTF-8, 16 e 32). Queste codifiche consentono ad uno stesso dato di essere trasferito utilizzando un vocabolario basato su 1,2 o 4 byte.

E' stato introdotto per permettere che il criterio di associazione di un blocco di bit ad un carattere di un alfabeto non sia ambiguo. Infatti prima alfabeti diversi avevano codifiche diverse.

3. Tipi di architetture web?

1. CLIENT - SERVER: il client accede ai servizi e alle risorse del server. L'infomazione, centralizzata nei server viene distribuita in rete ai client: si ha così una combinanzione di una parte (client) che interagisce con l'utente e di un'altra che interagisce con le risorse condivise (server).

Funzioni
CLIENTSERVER
forenisce un'interfaccia grafica per ricevere richieste di servizio dall'utenterisponde alle richieste del client (anche più di uno)
prepara le richieste per i processi servitoricomunica con altri server
analizza i risultati inviati dal servercontiene codice che assicuri la privacy

vantaggi

svantaggio

2. PEER TO PEER: ogni utente (peer) è un partecipante con gli stessi diritti e obblighi di ogni altro. L'idea è che gli utenti possiedano sia l'informazione sia il controllo, assenti perciò computer che controllino gli altri o siano in possesso di liste di identificatori di nodi o utenti. I nodi sono altamente dinamici e autonomi (ogni nodo può entrare e uscire quando vuole) e c'è ridondanza di informazioni. Ci sono 2 tipi di P2P:

  1. Puro: tutti i nodi sono davvero ugualmente importanti e ogni peer può funzionare come client, router o server
  2. Ibrido: esiste un supernodo con funzioni diverse dagli altri nodi o addirittura un server che va a raccogliere le informazioni. All'inizio infatti comunico al server chi sono e quali informazioni voglio passare, successivamente non passerò più per il server ma la sua funzione sarà sempre qella di ottimizzare la funzionalità tra nodi diversi siccome sa che informazioni hanno tutti.

vantaggi

svantaggi

3. MODELLO A STRATI: sistema multilivello che comprende più di un server (il carico di elaborazione del singolo server è limitato). Modello a 3 livelli:

  1. livello di presentazione: presenta l'applicazione all'utente finale
  2. livello di applicazione: funzionamento vero e proprio dell'applicazione elaborazione e uso dei dati
  3. livello dei dati: gestione dei dati server per la gestione dei dati e DBMS

Nel livello di applicazione troviamo i server di applicazione che supportano le esigenze dei client di varia natura, ad esempio:

Un esempio di server di applicazione di questo tipo è il nostro amico il gatto Tom della tribù Apache o Apache Tomcat. Esso sviluppa applicazioni web basate su java: le pagine JSP contantono codice java all'interno di codice XHTML; quando il browser richiede una pagina JSP, Tomcat esegue codice java e viene generato dinamicamente il risultato. In questo caso server di applicazione = web server.

Tutto quello che abbiamo visto fino ad ora è a livello locale, ma volessimo far interagire il nostro server con altri server sul web? E se il nostro server utilizzasse un linguaggio diverso da quello di un altro server? Ecco che ci viengono in aiuto i web services.

Rappresentano una soluzione per permettere a sistemi eterogenei di lavorare insieme per realizzare il service oriented computing(programmazione con componenti distribuite sul web). Sono componenti software indipendenti dalla piattaforma e dall'implementazione: un client non può dire quale linguaggio, quale sistema operativo o tipo di computer è stato usato. Usando XML per codificare le comunicazioni, sono infatti indipendenti da piattaforme o linguaggi di programmazione: esso garantisce ricchezza espressiva, estendibilità, portabilità e facilità di comprensione. Inoltre possono essere validati da entrambe le parti che parti che comunicano. Possono essere:

L'architettura del web service è basata su 3 entità:

  1. service requestor: richiede l'esecuzione del web service
  2. service provider: implementa il servizio e lo rende disponibile per il web
  3. service registry: offre un servizio di pubblicazione e ricerca dei servizi disponibili

Perchè i web service funzionino, oltre ad esserci uno standard predefinito per tutti, deve esserci un modello di comunicazione uguale: un'architettura a stati, in cui ogni livello svolge compiti ben precisi: l'infrastruttura di base è internet con il protocollo HTTP, poi ci sono gli altri protocolli che permettono di svolgere altre funzioni:

- UDDI: servizio di directory pubblico e integrazione che accetta, registra e fornisce informazioni sui web services disponibili. Basati su XML, i registri UDDI forniscono info su servizi nuovi, stato di servizi particolari e disponibiiltà di servizi compatibili. Si basa su SOAP per la trasmissione dei messaggi. Senza UDDI due applicazioni possono comunicare solo se già si conoscono, conoscono i servizi offerti e la loro localizzazione. E' necessario un archivio per mermettere ai web service di rendere pubblica la loro presenza e renderli raggiungibili agli utenti.

- WSDL: standard che regola la descrizione dei servizi. Basato su XML definisce l'interfaccia e i meccanismi di accesso e di interazione verso un servizio. Cosa descrive WSDL? Ad esempio le operazioni (o metodi) forniti dal servizio; dettagli sui formati dei dati e sui protocolli necessari per accedere al servizio; dettagli sulla locazione dei servizio (ad esempio URL, indirizzo email). Per descrivere i web service utilizza dei documenti veri e propri formati da 7 elementi:
1 message (collezione di elementi tipati)
2 operation (scambio di messaggi)
3 portType (collezione di operation)
che forniscono una descrizione astratta e specifica l'insieme di messaggi di scambio per interagire col servizio;
4 type
5 binding
6 port
7 service
che forniscono una descrizione concreta e contiene i dettagli dell'interazione tra requestor e provider dipendenti dal protocollo di accesso al servizio.

- SOAP: protocollo basato su XML che permette la comunicazione tra componenti e applicazioni attraverso le intranet o intenet, indipendentemente dalla piattaforma con cui sono realizzate. Serve per scambiare dati ed invocare metodi su oggetti remoti usando un protocollo applicativo sottostante(HTTP, SMTP, FTP). Definisce:

L'obiettivo principale del suo utilizzo è limitare l'uso di soluzioni proprietarie che potrebbero essere legati a sw non indipendenti mentre lui usa lo standard HTTP, inoltre permette una facile manutenibilità ed aggiornamento. Ma è un protocollo senza stato e non gestisce la sicurezza.

4. Spiegate le differenze tra gli elementi inline e block.

un elemento inline:

un elemento di block:

5. Spiegate con quali motivazioni è stato proposto HTML5

Gli obbiettivi erano di concentrarsi sulla struttura, sull'usabilità e sull'internazionalizzazione.

6. Spiegate brevemente i problemi legati alla codifica dei caratteri dei formati di testo.

Il problema si pone per i dati scambiati dai protocolli, in quanto deve essere non ambiguo il criterio di associazione di un blocco di bit ad un carattere di un alfabeto.

7. Spiegare le principali novità introdotte da HTML 5


Torna alla pagina di Tecnologie Web

(Printable View of http://www.swappa.it/wiki/Uni/DomVarie)