6 - Il browser - 16/17

47
Università degli Studi di Milano Bicocca Dipartimento di Informatica, Sistemistica e Comunicazione Corso di Strumenti e applicazioni del Web 6. Il browser Giuseppe Vizzari Edizione 2016-17

Transcript of 6 - Il browser - 16/17

Page 1: 6 - Il browser - 16/17

Università degli Studi di Milano BicoccaDipartimento di Informatica, Sistemistica e ComunicazioneCorso di Strumenti e applicazioni del Web

6. Il browserGiuseppe Vizzari

Edizione 2016-17

Page 2: 6 - Il browser - 16/17

Queste slideQueste slide fanno parte del corso “Strumenti e applicazioni del Web”. Il sito del corso, con il materiale completo, si trova in strumentiapplicazioniweb.wordpress.com. Data la rapida evoluzione della rete, il corso viene aggiornato ogni anno.

Il presente materiale è pubblicato con licenza Creative Commons “Attribuzione - Non commerciale - Condividi allo stesso modo – 3.0” (http://creativecommons.org/licenses/by-nc-sa/3.0/it/deed.it ):

La licenza non si estende alle immagini provenienti da altre fonti e alle screen shot, i cui diritti restano in capo ai rispettivi proprietari, che, ove possibile, sono stati indicati. L'autore si scusa per eventuali omissioni, e resta a disposizione per correggerle.

Page 3: 6 - Il browser - 16/17

Riassunto della puntata precedente• Web = Internet + Ipertesti + HTTP + HTML + URI +

Browser + Web server• Quali informazioni su di noi il browser invia al web

server• Una pagina web aggrega oggetti provenienti da fonti

anche molto diverse• Scripting (client side e server side)

3

Page 4: 6 - Il browser - 16/17

Il browser

• È lo strumento base per accedere al Web• to browse: curiosare, sfogliare, dare una scorsa• È una macchina complessa, soggetta a continua evoluzione

• Il progenitore: World Wide Web (poi chiamato Nexus) di Tim Berners-Lee ( 1991)

• Ne esistono diversi, in continua competizione per incrementare le loro quote di mercato

• L'esito delle "guerre dei browser" è (stato?) fondamentale per il posizionamento sul mercato di Internet

Page 5: 6 - Il browser - 16/17

Il protocollo HTTP

5

HOST HOSTROUTER ROUTER

Web server

Trasporto

Internet

Network

Internet

Network

Internet

Network

Browser

Trasporto

Internet

Network

Protocollo HTTP

TCP: Transmission Control Protocol

IP: Internet Protocol

Page 6: 6 - Il browser - 16/17

In sintesi…

6

link

BROWSER

File HTML

Page 7: 6 - Il browser - 16/17

W3C: World Wide Web Consortium• Fondato nel 1994 da Tim Berners-Lee• "The W3C mission is to lead the World Wide Web to its full potential by developing protocols and guidelines that ensure the long-term growth of the Web"

• Emette delle Recommendation, che sono considerate gli standard del Web

• Guardate http://www.w3.org

7

Page 8: 6 - Il browser - 16/17

Embedding

8

<html><body>

embed code

</body></html>

oggetto attivo

disponibile sulla rete

Page 9: 6 - Il browser - 16/17

"Widgets": esempi

9

Page 10: 6 - Il browser - 16/17

Creazione di un widget: esempio

10

Twitter:

Page 11: 6 - Il browser - 16/17

(segue)

11

<a class="twitter-timeline" href="https://twitter.com/VizzariG" data-widget-id="657943005760987136">Tweets by @VizzariG</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>

Il codice generato, da copiare nella propria pagina Web

Page 12: 6 - Il browser - 16/17

Analogamente…

Page 13: 6 - Il browser - 16/17

Virtualizzazone / globalizzazione della rete13

Da dove provengono i servizi?

Page 14: 6 - Il browser - 16/17

Architettura di un browser

14Da: Grosskurth, Godfrey, Architecture and evolution of the modern web browser (in rete)

Browser

Page 15: 6 - Il browser - 16/17

Architettura di un browser

15Da: Grosskurth, Godfrey, Architecture and evolution of the modern web browser (in rete)

Store/retrievebookmarks, cookies, settings, …

Navigation support

HTTP handling

Visual representation of a given URI

Toolbars, menu, …

Page 16: 6 - Il browser - 16/17

Mosaic• Sviluppato a partire dalla fine 1992 al NCSA (National Center for Supercomputing Applications) dell'Università dell'Illinois a Urbana-Champaign, influenzò profondamente i browser successivi

• Marc Andreessen, il capo progetto, fondò poi Netscape

16

Page 17: 6 - Il browser - 16/17

Marc Andreesen (1971 -…)

17

Andreesen – Horowitz: venture capital con partecipazioni in Ning, Facebook, Foursquare, Twitter, Skype, Pinterest, Groupon, Zynga, ….

Page 18: 6 - Il browser - 16/17

Browser timeline

18

200

8

Chrome

Da: G

ross

kurth

, God

frey,

Arc

hite

ctur

e an

d ev

olut

ion

of th

e m

oder

n we

b br

owse

r (in

rete

)

I browser war

II broser war

III browser war

Page 19: 6 - Il browser - 16/17

Le "browser wars"

• Il controllo del browser leader di mercato fornisce un vantaggio competitivo molto forte

• Per vincere:• Gratuità• Funzionalità avanzate e qualità del software

• Perché cercare di vincere “regalando” software?• Funzionalità proprietarie → indebolimento degli standard oppure: controllo degli

standard (prime fasi)• Possibilità di acquisire dati sull’utilizzo del browser e della rete da parte degli

utenti (attualmente)• Le guerre dei browser:

1) (1995-1998) Explorer vs Netscape 2) (2004- 2015) Firefox vs Explorer3) (2008 - …) Chrome vs Firefox/Edge/Safari4) (2007 - …) Mobile browsershttp://en.wikipedia.org/wiki/Browser_wars

19

Page 20: 6 - Il browser - 16/17

Mozilla Foundation

• ”A non-profit organization that promotes openness, innovation and participation on the Internet.”

• Gestisce Firefox, open-source, dal 2003• Mozilla Manifesto:

https://www.mozilla.org/about/manifesto.it.html • L'85% (=300 ml $ annui) dei finanziamenti del 2014

proviene da Google, in cambio Firefox usa Google come motore di ricerca di default (il contratto è stato rinnovato fino a novembre 2014)…

• … nel 2014 Mozilla ha firmato un contratto quinquennale con Yahoo, per averlo come motore di ricerca predefinito nel Nord America (ma Yahoo Search è sostanzialmente un front-end per Bing…)

20

Page 21: 6 - Il browser - 16/17

Firefox

• Browser gratuito e open-source• Sviluppato dalla Mozilla Foundation, dal 2004• Versioni mobili da 2010-2011 • Ciclo di rilascio molto accelerato (dopo l’arrivo di

Chrome):Nightly → Aurora → Beta

• Oggi: release 49.0.1

21

Page 22: 6 - Il browser - 16/17

Usage share, oggi

• La % di utenti che usano un certo browser • A febbraio 2015 (fonte StatCounter, non mobile):- Chrome: 49%- Explorer: 19%- Firefox: 17%- Safari: 10%- Altri: 5%

• NB: Le varie metodiche di misura determinano risultati molto diversi: conviene utilizzare varie fonti e calcolarne la mediana

• Fonte: http://en.wikipedia.org/wiki/Usage_share_of_web_browsers

22

95%

Page 23: 6 - Il browser - 16/17

Mobile browser (ultimi 6 anni)

23Fonte: StatCounter

Page 24: 6 - Il browser - 16/17

Conformità agli standard

• La rapida evoluzione delle tecnologie Web (es. HTML, XML, scripting languages), e la guerra dei browser hanno generato una notevole varietà di comportamenti nei browser

• Il W3C emette e aggiorna gli standard del Web ("Recommendations")

• Questi dovrebbero essere seguiti dagli sviluppatori dei siti e dei browser, ma…

24

Page 25: 6 - Il browser - 16/17

HTML e CSS: evoluzione

25http://www.jasonspeaking.com/index.php/2010/04/the-evolution-of-html-css/

HTML5

CSS4 (?)

Recommendation W3C

Ott 2014

Page 26: 6 - Il browser - 16/17

Standard: a moving target

26

tDefinizionedella nuovatecnologia

Standard 0 Standard 1

draft

draft

deprecated

Standard 2

feat

ures

stricttransitional

prodotti

Page 27: 6 - Il browser - 16/17

Test di conformità / compatibilitàTest di conformità dei browser:Un servizio online gratuito per verificare la conformità dei browser con HTML5: Provatelo sul vostro browser!http://html5test.com/index.html

Test di compatibilità di un sito:Vari servizi per vedere come una pagina Web viene visualizzata dai diversi browser (in simulazione)

27

Page 28: 6 - Il browser - 16/17

Interfaccia utente: basics

28

URL

Pagina web

Navigazione• Indietro• Avanti• Refresh• History

Page 29: 6 - Il browser - 16/17

Mosaic

Page 30: 6 - Il browser - 16/17

Interfaccia utenteNecessità di operare contemporaneamente su più pagine

30

Modello desktop: più browser attivi in finestre differenti(ogni finestra ha una storia separata)

Nuovo modello:il browser gestisce piùfinestre(con una cronologia comune)

Page 31: 6 - Il browser - 16/17

Evoluzione del browser

31

MosaicExplorerFirefoxSafari

Tabbed browsing

Page 32: 6 - Il browser - 16/17

Evoluzione del browser

32

MosaicExplorerFirefoxSafari

Tabbed browsing

Richiamo a motore di ricerca

Page 33: 6 - Il browser - 16/17

Tabbed browsing: esempi

33

Firefox 3.6

Explorer 8.0

Page 34: 6 - Il browser - 16/17

Evoluzione del browser

34

MosaicExplorerFirefoxSafari

Tabbed browsing

Chrome

detach

Page 35: 6 - Il browser - 16/17

Chrome

35

http://www.youtube.com/watch?v=WoynSZNQxJs&feature=related (in italiano)

Page 36: 6 - Il browser - 16/17

Multi-tasking

36

Il browser diviente una sorta di sistema operativo (vedi Google Chrome OS – Chromium)

Processi separati, ma con cronologia

comune

Page 37: 6 - Il browser - 16/17

Google Chrome Omnibox

37

Page 38: 6 - Il browser - 16/17

Online browser support

38

HTTPinternetBrowser

Web server

HTML

HTML

GOOGLEServizi

online al browser

Page 39: 6 - Il browser - 16/17

Online browser support

39

HTTPinternetBrowser

Web server

HTML

HTML

GOOGLEServizi

online al browser

Info inviate (se non disattivate): Info typed in omnibox → search engine Browser settings → google personal

account(preferences, bookmarks, stored passwords, …)

Testi da tradurre → google translate Usage statistics → google databaseshttp://www.google.com/chrome/intl/en/privacy.html

Privacy?

Page 40: 6 - Il browser - 16/17

Chrome: impostazioni di sincronizzazione

40

Versione 41

Page 41: 6 - Il browser - 16/17

Bookmarks• Bookmarks (preferiti, favorites, hot lists,…):

URL memorizzati nel browser per rapido accessoVengono memorizzati localmente (se non sincronizzati)

• Social bookmarking: servizi online, mettono in comune bookmarks di più utenti

• Es.: www.delicious.comFondato 2003, comprato da Yahoo! 2005, venduto ai fondatori di YouTube 2011 poi a Science (2014)

41

Page 42: 6 - Il browser - 16/17

Social bookmarking services

42

HTTPinternetBrowser

Web server

HTML

HTML

GOOGLEServizi

online al browser

Browser

Boomarks db

www.delicious.com

Page 43: 6 - Il browser - 16/17

www.delicious.com• Inizialmente www.del.icio.us • Il sito che ha inventato il social bookmarking, fondato nel 2003, acquisito da Yahoo! nel 2005, venduto ai fondatori di YouTube nel 2011 (Avos)

• Permette di salvare, taggare e condividere bookmarks (che per default sono pubblici), gratuitamente

• Bottoni per bookmarking installabili sul proprio browser

• Accesso rapido: www.delicious.com/tag/<tag> • http://en.wikipedia.org/wiki/Del.icio.us

43

Page 44: 6 - Il browser - 16/17

Estensioni al browser

• Componenti aggiuntivi che possono essere installati sul browser per fornire specifiche funzionalità (chiamati anche "add-on", "plugin",…)

• Realizzati da terze parti, che utilizzano le interfacce programmative (API) del browser

• Esempi:• Chrome: https://chrome.google.com/webstore?hl=it • Firefox: https://addons.mozilla.org/it/firefox/

44

Page 45: 6 - Il browser - 16/17

Estensioni: esempi• Yoono (Firefox)

Interazione con Facebook, Twitter e Linkedin durante la navigazionehttp://www.youtube.com/watch?v=BLPTQULcC6o (1:34)

• ImTranslator (Firefox)Traduzione in tempo reale nella lingua scelta (0:44)http://www.youtube.com/watch?v=O436cvXPnzU

• InvisibleHand (Firefox)Propone il prezzo migliore di un prodotto/servizio selezionato (1:26)http://www.youtube.com/watch?v=ThFZeRYf_J8

• GooEdit (Chrome)modifica un'immagine su una pagina Web, la salva e la twittahttp://www.youtube.com/watch?v=as1JdLpbBHc (1:06)

Thks A.Testa, V.Gennari, S.Antognazza per le demo video http://bit.ly/YEfY4L

45

Page 46: 6 - Il browser - 16/17

Privacy ?

46

Servizi attivati

dalle estensioni del browser

Sito visitato

Internet

Page 47: 6 - Il browser - 16/17

Sintesi della lezione

• I browser sono macchine complesse• Avere il monopolio dei browser dà un forte vantaggio

competitivo sul mercato Internet• I browser inglobano funzioni degli OS• Le API pubbliche ne fanno macchine estensibili• Supporto online delle funzioni del browser e delle

estensioni: il problema della privacy

47