2. Webkit
Webkit è il motore di rendering utilizzato fra gli altri in
Safari e Chrome (Chromium). E' composto da due
componenti principali:
WebCore, il motore di rendering delle pagine
web;
JavaScriptCore, l'engine JavaScript.
WebCore e JavaScriptCore sono rilasciati sotto licenza
LGPL, il resto di Webkit sotto BSD.
Supporta gran parte dei più recenti standard per il web,
risultando conforme agli acid test 2 e 3.
2
3. QtWebkit
QtWebkit è un modulo di Qt con il quale è possibile
interfacciarsi a Webkit per creare un browser o
applicazioni miste.
QtWebkit Bridge: un meccanismo per accedere e
modificare QObject da JavaScript.
I metodi e gli oggetti di questo modulo sono utilizzabili
anche all'interno di QML, e si possono quindi integrare
con le caratteristiche di quest'ultimo (ad esempio,
gestures).
3
5. Applicazioni miste: use cases
1. Web content in a Native Application
Gran parte dell'applicazione è scritta in C++, compresa
la logica, e parti sono realizzate in HTML e mantenute
da un server.
Esempio: un media client, composto da un player
e da un file manager scritti in C++ e da un
music store realizzato in HTML.
5
6. Applicazioni miste: use cases
2. Thin Client
E' realizzato per gran parte, compresa la logica
applicativa, in HTML. Il C++ viene utilizzato solo per
sfruttare caratteristiche peculiari della piattaforma
hardware.
Esempio: un client per lo streaming di contenuti
TV on demand, nel quale l'intera UI è in HTML e
l'unica parte in C++ è quella relativa a
funzionalità avanzate di processing video.
6
7. Applicazioni miste: vantaggi e
svantaggi
Vantaggi
Nessun problema di deploy e aggiornamenti
“gratuiti”
Possibilità di sfruttare le risorse del cloud
Svantaggi
Disponibilità della connessione internet.
Problemi di sicurezza
Minore integrazione con la piattaforma
sottostante (look and feel)
7
8. Applicazioni miste: un esempio
pratico
Obbiettivo: integrare
google maps in
un'applicazione Qt.