Le Applicazioni di Internet Web, FTP, Posta e App pr il Mobile
1. Le applicazioni di base web,
posta, e mobile app
Prof. Giuseppe Sportelli
Revisione 1.2018
2. Contenuti
• I protocolli dello strato applicativo
• Il protocollo HTTP
• I siti web, e il WWW tecniche di implementazione
• Principali tecniche di realizzazione dei siti web
• FTP, introduzione, e nuove opportunità con cloud storage
• La posta elettronica struttura di un email, invio e ricezione
posta
• Problematiche di sicurezza per i protocolli HTTP, FTP, POP3,
IMAP, SMTP
• Architettura delle piattaforme mobili sia hardware che
software
3. L’interazione Client-Server
• I computer connessi in rete (client)
usufruiscono di servizi offerti da altri
computer (server)
• Le applicazioni base per internet
utilizzano il protocollo tcp
(trasmissione bidirezionale) controllo
della trasmissione
• Le applicazioni più importanti
come web, posta, ftp usano questo
metodo
4. Le applicazioni come il web, la posta, ecc sono mappate negli ultimi livelli della
pila OSI, e nel quarto livello della pila TCP/IP
6. • World Wide Web: è un servizio erogato tramite Internet
composto da elaboratori connessi ad internet e dotati di
applicativi di tipo client/server.
– Consente di pubblicare contenuti di varia tipologia
• I contenuti possono essere statici e dinamici
– Consente di “navigare” in modo ipertestuale questi contenuti
– Interagire con i contenuti per ottenere i risultati
• Le due componenti fondamentali sono:
– Terminali Client dotato di un programma di navigazione browser ( Opera,
IE, Firefox, Mozilla, Safari ecc. )
– Elaboratori Server che mettono a disposizione varie tipologie di
informazioni
• Il colloquio viene effettuato utilizando il protocollo HTTP
Hyper Text Transfer Protocol
WWW: un’applicazione client server
7. • Possono essere trasferite tutte le informazioni codificabili in
digitale (testi, immagini, audio, video ecc.) attraverso il
protocollo HTTP secondo delle specifiche standard date dal RFC
2616
• Sono presenti riferimenti univoci (URL Universal Resource
Location) alle informazioni presenti sui server
• La presenza di collegamenti ipertestuali (hyperlinks) permette
di “navigare” sulla rete semplicemente utilizzando tali
collegamenti
• La definizione di protocolli e linguaggi (HTTP, HTTPS, HTML,
XML) tali da permettere la descrizione e lo scambio di
informazioni
WWW: un’applicazione client server
8. • Il server è l’elaboratore che ospita il servizio di accesso ai
contenuti ipertestuali (web server)
• Le informazioni contenute nel web server vengono organizzate
in varie cartelle (directories) a partire da una cartella principale
(root)
• Le risorse messe a disposizione sono pagine ipertestuali scritte
in linguaggio HTML, o utilizzando dei linguaggi di
programmazione lato server (PHP, ASP, JSP)
• All’interno delle pagine possono essere definiti link
ipertestuali ad altre pagine dello stesso server o di altri nel
primo caso si parla di link relativi, nel secondo di link assoluti
Ruolo del server Web
9. • Il browser è un programma applicativo che consente di
collegarsi al server per richiedere le informazioni contenute
(URL) e visualizzarle
• Facilitano l’utente mettendo a disposizione una serie di
funzioni:
– Casella di inserimento URL (con possibile memorizzazione)
– Pulsanti di navigazione: Avanti, Indietro, Refresh
• Ha la capacità di visualizzare (rendering) direttamente una
grande quantità di formati oltre l’HTML
• Cio che non è gestito dal browser può essere abilitato con
appositi componenti:
– plug-in: utilizzato direttamente dal browser (DLL)
– helper: programma esterno lanciato dal browser
Ruolo del client: il browser
10. • Protocollo adatto a gestire la trasmissione dei tanti tipi di dati
ipertestuali
• Protocollo che non mantiene informazioni di stato (stateless)
• Prevede un semplice scambio dati del tipo:
– Richiesta contenete la URL (comando GET)
– Risposta contenete I dati (pagina HTML)
• Esistono varie versioni di HTTP: 0.9, 1.0, 1.1
• La risposta del server contiene:
– Alcune righe di informazione (header) seguite da una riga vuota. In
questa sezione possono essere inseriti i cookies
– La pagina richiesta (dati)
Ruolo del Protocollo di Trasmissione Ipertestuale (HTTP)
11. Concetto di URL (Universal Resource Locator)
• Serve per assegnare un nome univoco alle varie informazioni presenti in
rete
• E’ composto di vari elementi
– Protocollo (default http) https, ftp, ecc. Seguito da “:”
– Il nome del server completo di dominio. Può anche essere indicato con un indirizzo IP
– Opzionalmente può essere indicato il numero di porta preceduto da “:”. Se omesso la porta
utilizzata è quella standard 80
– Opzionalmente segue il percorso per raggiungere il file che contiene la pagina richiesta
– Infine, opzionalmente, il nome della “pagina”. Se omesso viene cercato solitamente il file
index.html, oppure default.htm (o altrin configurati sul server)
• Nella composizione dell’URL sono permesse solo le lettere ed alcuni
simboli (“-”, “_”). Gli altri caratteri vengono rappresentati con la stringa %aa
dove aa è la codifica esadecimale del carattere
12. • La pagina è un file di tipo testuale strutturato secondo la
sintassi del linguaggio HTML
• Utilizza un sistema di marcatori (tags) scritti fra i simboli “<“ e
“>” per descrivere la pagina ed i vari contenuti
– <html> … </html> delimitano inizio e fine pagina
– <body> … </body> delimitano il corpo del documento
– <a href=“url”>Testo </a> definisce un link ipertestuale
– <img src =“url”> inserisce un’immagine nella pagina
– <p> …… </p> delimita un paragrafo nella pagina
• Con il solo HTML si possono relaizzare pagine di tipo statico
(sono trasmesse al client così come sono)
• Per superare questo limite è nato il meccanismo CGI (Common
Gateway Interface)
Principali caratteristiche del Linguaggio di Marcatura Ipertestuale
(HTML)
13. Caratteristiche del web server
• Rispondere alle richieste dei vari client
• Richiamare gli interpreti dei vari linguaggi web
supportati php, asp, jsp, ecc
• Gestire le funzionalità a livello di cartelle e
utenti (chi può fare e che cosa)
• Tenere report degli accessi e gestire gli errori
14. Tipi di web server
Applicazioni Web Server
• Apache GNU/GPL
– Ambiente Linux/Windows/Mac
– Supporta php, python, perl, jsp, asp con
Mono
– Integrazione con i dbms server più diffusi
• IIS
– Ambiente Windows
– Supporta php, asp, jsp con integrazioni
– Supporta ActiveX Data Object
– Interazione con i web server più diffusi
• Sun java System Web Server
– Supporta Java
• Netcraft
Altre peculiarità
• Apache dal 1996 open source
con ottime prestazioni e
efficienti
• IIS commerciale di Microsoft
utilizzato molto per le Intranet
disponibile nei sistemi Server
Windows
• Sun Java JSWS deriva da
NCSA, le licenze dai $ 1500 ai $
5000
15. Siti Web
• Insieme di files e cartelle, applicazioni server
side per la distribuzione di:
–Contenuti general purpose
–Sviluppo software per soluzioni web-oriented
• Web App, Social Network, ecc
–Intranet e Extranet Aziendali
–Sistemi di transazioni economiche 24 ore su 24 ore
e-commerce
–Sistemi di formazione a distanza FAD
16. Come sviluppare siti web
• Approccio esperto
–Linguaggio HTML, CSS per pagine statiche
–Linguaggi Server Side PHP, ASP, JSP, Perl
–Linguaggi evoluti lato client AJAX, HTML5
• Approccio semplificato
–Uso di CMS Content Managment System
• Joomla, Wordpress, Drupal
17. Esempio di pagina HTML
<html>
<head>
<title>Titolo della pagina</title>
</head>
<body>
<p>Questa è una pagina HTML con un link ad un altra pagina</p>
<a href=”www.google.com»>Motore di ricerca Google</a>
</body>
</html>
Principali caratteristiche del Linguaggio di Marcatura
Ipertestuale (HTML)
18. Esempio di pagina HTML
<html>
<head>
<title>Titolo della pagina</title>
</head>
<body>
<p>Questa è una pagina HTML con un link ad un altra pagina</p>
<a href=”www.google.com”>Motore di ricerca Google</a>
</body>
</html>
Principali caratteristiche del Linguaggio di Marcatura
Ipertestuale (HTML)
19. • Necessità di avere pagine con contenuto dinamico.
• Aggancio di una logica “applicativa” alle pagine html
• La URL non rappresenta una pagina HTML ma ad un
programma eseguibile
• Il web server, verificato che la pagina richiesta è un
programma:
– Manda in esecuzione il programma richiesto sul server
– Trasmette al browser l’uscita prodotta dal programma stesso
Concetti di Common Gateway Interface (CGI)
20. • Una applet è un piccolo programma applicativo
• Viene scaricato dal web server verso il browser come
elemento della pagina
• Viene eseguito sul client con la supervisione del browser
• Deve essere scritti in un linguaggio riconosciuto dal browser
(java è riconosciuto da tutti i browser che includono una JVM
java virtual machine)
• Sono indipendenti dall’ambiente operativo del client
• Nel caso di java vengono eseguiti da un’interprete chiamato
JVM spesso incluso nel browser stesso (o disponibile come plug-
in)
• Possono essere notevolmente complessi
• Per politiche di sicurezza hanno alcune limitazioni
Concetto di applet
21. Ajax
• Asyncronous javascript and XML
• Lo sviluppo di applicazioni HTML con AJAX si
basa su uno scambio di dati in background fra
web browser e server, che consente
l'aggiornamento dinamico di una pagina web
senza esplicito ricaricamento da parte
dell'utente
22. HTML 5
• evoluzione di HTML4
• semplifica la strutturazione delle pagine
• Semplifica l’incapsulamento di contenuti
multimediali
• è supportato dai nuovi dispositivi mobili,
tablet, smartphone
23. Esempio di una pagina HTML5
<body>
<header>...</header>
<nav>...</nav>
<article>
<section>
....
</section>
</article>
<aside>...</aside>
<footer>...</footer>
</body>
Viene definita una struttura della pagina
secondo le parti di contenuto richieste.
Ad esempio il tag <nav> cura la barra di
navigazione. Il tag <footer> il pié di
pagina.
24. Linguaggi Server Side
• Linguaggio PHP supportato da tutte le
piattaforme hardware software basato su pre
processore HTML (Apache+mod_php)
• Linguaggio ASP Active Server Pages tipico delle
piattaforme Microsoft (IIS Server)
• Linguaggio JSP Java Server Pages pagine in Java
multipiattaforma (Apache+Tomcat)
26. Caratteristiche di FTP
FTP
• Il client si collega al server
fornendo un account anonimo
(server pubblico) o autenticato
(server web, server privato)
• Il server autentica il client
che può procedere al
trasferimento in entrambe le
direzioni
• Utilizza per la comunicazione
protocollare le porte tcp 20/21
Connessione FTP
27. Tipologie di FTP
• FTP attivo il client stabilisce una prima connessione
con il server sulla porta TCP 21, è attivato un canale
suolo per i comandi, e uno per la comunicazione dei
dati
• FTP passivo (utile quando siamo dietro un firewall)
anche in questo caso il server riceve una richiesta sul
canale 21 TCP, poi apre un secondo canale su una porta
non privilegiata > 1024. La comunicazione dati avviene
sulla seconda porta aperta dal server
28. FTP a cosa serve
• Pubblicare i documenti sul sito web
• Trasferire files da host remoti
Svantaggi
1.E’ insicuro (i dati viaggiano in chiaro)
2.E’ complesso per utenti non esperti
3.Dipende molto dalla configurazione della rete
client-server (firewall, proxy)
29. Nuovi metodi di storage remoti
• La grande disponibilità di spazio web gratuito
ha consentito negli ultimi anni di introdurre il
cloud storage cartelle remote dove depositare i
files prelevabili da qualunque luogo mediante un
software o via web
• Dropbox e Google Drive i più diffusi
30. Usare Google Drive e Dropbox
• Installo un software sul computer, creo i files
sul computer
• Salvando nella cartella condivisa, il files viene
spedito sul server di storage (sincronizzazione)
• Occorre registrarsi (alcuni gigabyte sono
gratuiti, altri a pagamento)
32. • Il server di e-mail è il sistema che si fa carico di distribuire la
posta di un’organizzazione. In particolare:
–riceve la posta inviata dagli altri server agli utenti da
lui gestiti
–mantiene i messaggi di posta fintantoché i
programmi client non provvedono a scaricarli
(POP3)
–nel caso di protocollo IMAP deve mantenere i
messaggi di posta limitandosi a leggerli ed
eventualmente organizzarli in cartelle
–riceve tramite protocollo SMTP i messaggi inviati
dal/i client e li inoltra, con lo stesso protocollo, ai
server di destinazione
Ruolo di un server di e-mail
33. • Applicazione client che consente di:
–trasmettere messaggi con protocollo SMTP
–ricevere messaggi con protocollo POP3 o IMAP
–organizzare l’archivio della posta mediante una
gerarchia di cartelle
–gestire gli allegati permettendo il salvataggio e/o
l’apertura
Ruolo di un client di e-mail
34. • Consente di interfacciare la posta elettronica con sistemi
differenti
• Tramite applicativi web, detti webmail, consente, ad esempio
di interfacciare server di posta direttamente dal browser come
se fosse un client di e-mail
• Il server webmail si interfaccia tramite programmi CGI al
server di posta elettronica
• Possono essere utilizzati per inoltrare SMS di avviso dell’arrivo
di posta elettronica
Ruolo di un gateway di e-mail
35. • E’ uno dei più vecchi protocolli utilizzati per l’invio di posta
elettronica
• Dovrebbe essere arricchito con funzioni di controllo anti SPAM
Il protocollo SMTP (Simple Mail Transfer Protocol)
36. Record MX
• Un server per essere identificato come mail
server per spedire la posta mediante il
protocollo SMTP ha un record MX nella zona del
suo dominio sul server DNS
• Se non possiede un record MX altri server
SMTP non accetteranno la posta proveniente da
quel server
37. • E’ un protocollo molto semplice che consente di scaricare sul
proprio computer i dati contenuti nel server di posta
• Il server alla ricezione di un messaggio per un utente, lo
deposita in un file dedicato all’utente (mailbox)
• Il client utilizzando vari messaggi (tramite TCP/IP utilizzando la
porta 110) può richiedere al server:
– Di essere autenticato, tramite i comandi USER nomeutente e PASS
password
– L’elenco dei messaggi, tramite il comando LIST
– Di leggere il singolo messaggio tramite comando RETR
numeromessaggio
– Di cancellare il messaggio sul server tramite il comando DELE
numeromessaggio
Il protocollo POP3 (Post Office Protocol versione 3)
38. • Protocollo molto potente e complesso per la gestione della
posta elettronica
• Con questo protocollo è possibile lasciare la posta sul server e
gestirla con un buon grado di flessibilità
• E’ particolarmente utile per utenti che operano da differenti
postazioni e non hanno problemi di spazio sul server
• IMAP utilizza la porta 143:
– l’utente viene identificato con un unico comando impostando un
identificativo nnn di sessione valido fino alla disconnessione
– identifica la casella delle posta tramite comando snnn select inbox
– legge i messaggi tramite comandi snnn fetch
– chiude la sessione con il comando snnn logout
Il protocollo IMAP (Internet Message Access Protocol)
39. Struttura di un email
• Un messaggio di posta elettronica contiene
–Campo From mittente del messaggio
–Campo A destinatari del messaggio
–Campo CC destinatari per conoscenza
–Campo CCn o BCC destinatari in copia nascosta
–Campo Subject oggetto del messaggio
–Campo body corpo del messaggio
–Campo Attachment allegati (secondo lo standard
MIME)
40. Struttura di un email
• Gli allegati cono codificati secondo lo standard MIME
Multipurposal Internet Mail Extensions
• Alla fine delle informazioni testuali del messaggio di
posta viene introdotto un header che identifica il tipo di
allegato (con codifica ASCII a 7 bit)
• I dati sono codificati in ASCII, alla fine dell’allegato è
inserito un delimitatore dell’allegato
• Il client che riceve il messaggio effettua la decodifica e
ricostruisce gli allegati
41. Problematiche di sicurezza SMTP
• I messaggi viaggiano in chiaro
• se accetta l’invio e inoltro di messaggi, anche da indirizzi di
posta non del suo dominio può diventare fonte di SPAM
• occorre attivare il Relay (accettazione di spedire posta solo per
specifici domini e IP)
• occorre richiedere autenticazione su SMTP (che comunque
agisce sulla porta 25 TCP)
• sul server mail conviene avere un antivirus, e un software di
graylisting che classifichi determinate email in base a dei criteri
buoni e cattivi
42. Problematiche di sicurezza
• Il protocollo HTTP è insicuro
• Il protocollo FTP è insicuro
• Il protocollo SMTP, POP3, IMAP sono insicuro
43. • Scopo della crittografia è di aumentare la confidenzialità
ovvero rendere accessibili le informazioni solo al destinatario
voluto
– Crittografia simmetrica: algoritmo che utilizza una chiave unica SEGRETA
per cifrare e decifrare il testo. La sicurezza è riposta completamente
nella bontà della chiave (lunghezza)
– Crittografia asimmetrica: algoritmo che utilizza due chiavi differenti per
cifrare e decifrare il testo, facilita enormemente il compito di
distribuzione delle chiavi
– Algoritmi ibridi: utilizzano entrambe le tipologie di chiave
Scopo della Crittografia
44. • Negli algoritmi a chiave segreta le operazioni di codifica e di
decodifica sono svolte utilizzando una stessa chiave. Sono anche
detti algoritmi simmetrici e la segretezza è legata alla segretezza
(e complessità) della chiave, non dell’algoritmo
• Può essere resa sicura utilizzando chiavi monouso generate in
modo casuale
• Negli algoritmi a chiave pubblica non esistono problemi nella
gestione della chiave segreta in quanto non deve essere
distribuita ma utilizzata solo da chi l’ha generata (algoritmo RSA
dalle iniziali degli ideatori)
Differenze fra algoritmi a chiave segreta e a chiave pubblica
45. • La prima chiave, segreta, non deve essere diffusa ma rimane
di proprietà della persona che le definisce
• La seconda chiave DEVE essere resa nota pubblicamente
• Utilizzando un algoritmo non reversibile ciò che viene cifrato
utilizzando una delle due chiavi può essere decifrato solo con
l’altra
• La generazione e l’assegnazione delle chiavi pubbliche viene
effettuato da una CA (Certification Authority)
• Questa crittografia può essere anche usata per avere la
certezza dell’autore del messaggio
• L’insieme degli standard e delle tecnologie utilizzate vanno
sotto il nome di PKI (Public Key Infrastructure)
Differenze fra algoritmi a chiave segreta e a chiave pubblica
46. • Per inviare pacchetti su reti non sicure (internet) si può
utilizzare la crittografia dei dati. Normalmente viene cifrato solo
il contenuto informativo
• Spesso vengono utilizzati algoritmi a chiave segreta per la loro
velocità
• Protocollo HTTPS: versione sicura del protocollo HTTP, prevede
la crittografia dei dati mediante l’uso di algoritmi a chiave
pubblica, utilizza la porta TCP 443
Utilizzo della crittografia per la protezione delle reti
47. Protocollo SFTP
• viene creato un tunnel SSH fra client e server
• Ssh secure shell è un’evoluzione sicura di telnet
che implementa SSL
• Sul canale criptato avviene la comunicazione
FTP
• L’autenticazione è a chiave pubblica
asimmetrica
48. Rendere sicura la posta elettronica
• Tutti i protocolli possono essere codificati via SSL Secure Socket
Layer, lo stesso standard utilizzato nel protocollo HTTPS
• Per la posta in entrata l’evoluzione sicura è rappresentata da
POP3S, e IMAPS
• Le porte TCP sono la 995, la 993
• È implementato da Google Mail
• Per la posta in uscita sono disponibili SMTPS sulla porta 465, o
TLS Transport Layer Security RFC 2246
– TLS usa codifica simmetrica per garantire la confidenzialità dei messaggi
– Garantisce l’integrità del messaggio usando un’impronta firmata per
l’autenticità del messaggio
– Le chiavi sono generate ad ogni messaggio
50. • Smartphone – Questo dispositivo consente di fare telefonate,
ma possiede funzionalità di un PDA o di un computer.
• PDA (Personal Digital Assistant) - Questo dispositivo è un
computer palmare (palmtop computer), con capacità di mobile
phone, web browser, media player portatile.
• GPS (Global Positioning System) – Questo dispositivo consente
di conoscere la propria posizione nel mondo con una precisione
di 10m, inclusa l’altitudine e la direzione tenuta.
I dispositivi per le comunicazione in mobilità
51. • Mass Storage – CD, DVD, MP3, HD, magneto-optical disk,
memory stick
• Scanners – Dispositivo ottico di input.
• Video camera – Dispositivo di input per l’acquisizione video.
• Webcam – Video camera miniaturizzata.
I dispositivi di I/O multimediali
52. • GPRS (General Packet Radio System)
– Sistema di comunicazione digitale compatibile con GSM di cui
rappresenta l’evoluzione (per questo è spesso detto 2.5G intermedio fra
due generazioni)
– Sfrutta tutta l’architettura GSM senza grosse modifiche
– Consente la trasmissione di pacchetti dati e incrementa la velocità
sfruttando gli slot temporali lasciati liberi dalle comunicazioni vocali
– La velocità di base è di 9600 bit/s, ma se vi sono slot disponibili può
arrivare a circa 50 Kbit/sec
Gli standard principali “wireless”
53. • UMTS (Universal Mobile Telephone Service) detto 3G ovvero
di terza generazione
– La struttura logica non si discosta molto da quella delle reti di
generazione precedente
– Utilizza frequenze fra 1885-2025 e 2110-2200 MHz
– Le potenze utilizzate sono di 20 W massimi per le stazioni BTS e 250 mW
massimi per le stazioni mobili
– Utilizza la tecnica WCDMA anche nota come spread spectrum con
modulazione di fase a 8 canali (PSK
– La velocità offerta è di 144/384 Kbit/s e può arrivare a 2 Mbit/s
– Consente la fruizione di contenuti multimediali sia in modalità differita
che in streaming utilizzando
– I terminali dispongono di potenza elaborativa paragonabile ad un PC di
qualche anno fa che consente la possibilità di decodificare audio in MP3
e video MPEG4
Gli standard principali “wireless”
54. • GPRS: permette la stessa mobilità di un cellulare
• WAP: usato per la navigazione in modalità simili ad internet
tramite cellulare
• Mobile IP: usato per la connessione di dispositivi IP mobili
• Bluetooth: non utilizzato per la mobilità ma per collegare
dispositivi vicini fra loro
Le funzioni dei principali protocolli per stazioni mobili
55. Applicazione per il Mobile
• Dipende dal tipo di terminale
– Terminale senza codice applicativo viene utilizzato sul
dispositivo mobile solo il Browser che fa girare il codice
applicativo sul server
• Sono tipicamente Web (html, xml) e Wap (wml)
– Terminale ad un livello applicativo il terminale può operare
solo connesso al server
• utile per situazione nella comunicazione fra client e server è
continua
• Svantaggi i terminali dipendono fortemente dall’hardware e dal
sistema operativo, le applicazioni non funzionano senza connessione
al server
56. Applicazione a due livelli
• Terminali con applicazioni a due livelli
– Livello Presentazione con codice applicativo
– Livello Sorgente Dati
– Comunica con Database sul server quando la connessione in
rete è presente
• Terminali con applicazioni a tre livelli
– Livello Presentazione
– Livello Codice
– Livello di Accesso ai Dati
– Comunica con Database sul server quando la connessione
sul server è presente
57. Server per applicazioni mobili
• Dipende da come è strutturata l’applicazione a
livello di terminale
• Esistono server a un livello
• Esistono server a due livelli
• Esistono server a tre livelli
60. Architettura Three-Tiers Server architecture
Vantaggi: Scalabile, sicuro ,
permette l’implementazione
di Database sul server
Svantaggi: Difficile da
sviluppare e gestire, costoso,
61. Connessioni e Applicazioni Mobili
• Le applicazioni mobili a un livello sono pensate per
dispositivi sempre connessi
• Le applicazioni mobili a due livelli sono per dispositivi
parzialmente connessi (invio dati e sincronizzazione
quando si è in rete)
• Le applicazioni mobili a tre livelli sono per dispositivi
con applicazioni stand alone (alta capacità di
elaborazione) e che sono difficilmente connesse se non
per scopi di manutenzione
62. Terminali mobili e applicativi diffusi
•Google Android
•Apple iOS
•Windows Phone
•Proprietari Bada,
Tizen, ecc
• In comune HTML+CSS3+Javascript
(Livello Presentazione)
• iOS archittettura di sistema a 4
livelli Cocoa Touch (GUI), Media
(riproduzione audio e video), Core
Services (SQL, XML, InApp Purchase),
Core Os (caratteristiche in dettaglio
dell’HW)
– Le applicazioni IOS sono sicure
girano in ambiente Sandbox
• Android
– Basato su Kernel Linux
– Livello Applicazione (Js+XML+HTML)
– Application Framework (funzionalità
di interazione con l’utente sensori,
audio, video, ecc
– Library (SQL, OpenGL, ecc.) e
Android Runtime
63. Terminali mobili e applicativi diffusi
•Google Android
•Apple iOS
•Windows Phone
•Proprietari Bada,
Tizen, ecc
• In comune
HTML+CSS3+Javascript (Livello
Presentazione)
• Windows Phone
– Basato su kernel windows phone
7/8
– Applicazioni sviluppabili
indifferentemente con C++, C##,
VB
– Integra Internet Explorer 9
– Gestisce applicazioni Office
– Riconoscimento vocale e
accessibilità integrata nel
sistema
64. Contenuti
• I protocolli dello strato applicativo
• Il protocollo HTTP
• I siti web, e il WWW tecniche di implementazione
• Principali tecniche di realizzazione dei siti web
• FTP, introduzione, e nuove opportunità con cloud storage
• La posta elettronica struttura di un email, invio e ricezione
posta
• Problematiche di sicurezza per i protocolli HTTP, FTP, POP3,
IMAP, SMTP
• Architettura delle piattaforme mobili sia hardware che
software