SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Edizione 2013-14
Università degli Studi di Milano Bicocca
Dipartimento di Informatica, Sistemistica e Comunicazione
Corso di Strumenti e applicazioni del Web
7. Le applicazioni Web e i CMS
Roberto Polillo
2
Queste slides fanno parte del corso “Strumenti e applicazioni del Web”. Il
sito del corso, con il materiale completo, si trova in
www.corsow.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 shots, 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.
R.Polillo - Marzo 2014
Queste slides
Applicazioni Web
 Oltre che "navigare", l'utente deve poter
"interagire" con un sito, fornendo dei dati che il
sito elaborerà fornendo le risposte opportune
 Non solo "Web sites" ma "Web applications"
R.Polillo - Marzo 2014
3
Applicazioni Web: script client-side
4
HTTP
internet
Browser
Web
server
HTML con script
client-side
HTML con programmi
client-side
Esecutore dei
programmi client-side
Esempi:
• Javascript (script interpretati) con librerie DOM
• Applet Java (codice precompilato interpretato
da JVM (Java Virtual Machine)
• Ajax (rende asincrona l'interazione col server)
AJAX Engine
Programmazione lato client
 JavaScript (creato da Netscape, 1995)
Semplice linguaggio di scripting, inserito nel codice HTML e (standardizzato da
ECMA col nome di ECMAScript)
Interpretato da una Javascript Engine
 DOM (Document Object Model)
Librerie di funzioni associate a Javascript, per la manipolazione delle pagine e degli
elementi dell'interfaccia del browser
 Applet Java (Java: linguaggio a oggetti creato da Sun, 1995)
Programmi già compilati in codice intermedio ("bytecode"), che viene eseguito da
una Java Virtual Machine.
Devono essere inviati dal server, e quindi per motivi di sicurezza non hanno accesso
al file system del client.
 AJAX (Asynchronous JavaScript and XML)
Un gruppo di tecnologie e metodi che rendono asincrone la gestione della
interazione con l'utente e il dialogo con il web server
R.Polillo - Marzo 2014
5
Esempi
<html>
<head> …. </head>
<body>
….
<script type="text/javascript">
Document.write('Hello World')
</script>
…..
</body>
</html>
R.Polillo - Marzo 2014
6
<applet
code="Hello class" width="200" hight="200">
</applet>
Applet Java: esempio
R.Polillo - Marzo 2014
7
AJAX (Asynchronous JavaScript and XML)
R.Polillo - Marzo 2014
8
Da leggere: http://www.adaptivepath.com/ideas/ajax-new-approach-web-applications
Applicazioni Web: script server-side
(pagine dinamiche)
9
HTTP
internet
Browser
Web
server
HTML con programmi
server- e client-side
HTML con script
client-side
Esempi:
•script PHP (Personal Home Page Tools)
•script JSP (Java Server Pages)
•Servlet Java
•…
Codice generato
server-side
Esecutore di
programmi server-side
Codice server-side
La trasmissione dei dati di input
10
HTTP
Web
server
HTML
HTTP e HTML forniscono degli strumenti per richiedere dati
all'utente e trasmetterli al Web server
GET (URL)
1
HTML
PUT
2
Nome:
OK
3
5
GET URL', Nome=mario
4
Scrive "Mario"
e preme OK
6
Elaborazione dati e
produzione / invio di
una nuova pagina
<form method="get" action=http://www.google.com/search>
<input type="text" name="querystring">
<input type="submit" name="button1" value="Google Search">
</form>
Form: esempio
R.Polillo - Marzo 2014
11
bla bla
querystring=bla+bla&button1=Google+SearchAl server
Architetture a più livelli ("multi-tier")
12
HTTP
internet
Browser
Web
server HTML con script
client-side
Pagine generate
dinamicamente
Application
server
db
server
Data base
Come installare un sito Web?
13
HTTP
internet
Browser
Web
server
Pagine
web
Editor
HTTP
FTP
HTML
Es.:
Dreamweaver
Una soluzione elementare
Content Management Systems (CMS)
14
HTTP
internet
Browser
Web
server
Pagine generate
dinamicamente
CMSdb
server
Data base
Lettore
Un'applicazione che permette di costruire e
installare le pagine, e di servirle ai lettori
Content Management Systems (CMS)
15
HTTP
internet
Browser
Web
server
Pagine generate
dinamicamente
CMSdb
server
Data base
Lettore
Browser
Editor
Browser
Content Management Systems (CMS)
16
HTTP
internet
Browser
Web
server
Pagine generate
dinamicamente
CMSdb
server
Data base
Autore
Lettore
Browser
Amministratore
Content Management Systems (CMS)
17
HTTP
internet
Browser
Web
server
Pagine generate
dinamicamente
CMSdb
server
Data base
Browser
Autore
Lettore
Browser
Amministratore
Templates
Materiale autore
Materiale amministratore
CMS: tipologie
R.Polillo - Marzo 2014
18
Codice proprietario Codice aperto
(open source)
Codice
preinstallato
Codice da
installare
“Online site builders”
Es.:
blogger (Google)
Weebly, Webs,
Ning, Socialgo, …
Es.:
www.wordpress.com
….
Es.:
wordpress
Joomla
drupal
Online site builders
 Applicazioni proprietarie che permettono di costruire e
pubblicare siti web interamente on-line, senza necessità di
programmazione
 Il sito può essere personalizzato in vari modi: scelta del tema
grafico, uso di widget, … A volte si può personalizzare il codice
o modificare i CSS
 Quasi sempre a pagamento (canone mensile), a volte servizi di
base gratuiti
 Esempi:
Per blog: www.blogger.com (di Google, gratuito), …
Per siti: www.weebly.com, www.webs.com, …
Per social networks: www.ning.com, www.socialgo.com, …
19R.Polillo -
Marzo 2014
CMS open source
 Si deve scaricare il software e installarlo su un server
(proprio o di un provider)
 Si rivolgono a utenti più esperti, e sono più flessibili
 Esempi:
 WordPress (www.wordpress.org)
Molto semplice da usare, molto ricco di plugin pronti all’uso.
Esiste anche una versione online semplificata: www.wordpress.com
(funzionalmente limitata, molto diffusa: http://en.wordpress.com/stats/ )
 Joomla (www.joomla.org)
Più complesso
 Drupal (www.drupal.org)
Più complesso
20R.Polillo -
Marzo 2014
WordPress
 Il CMS open source più diffuso
 Nato per realizzare blog nel 2003 sulla base di un
precedente sistema del 2001, ora permette di
realizzare anche siti molto sofisticati
 Grande community che ne sviluppa l'ecosistema
 Facile da usare, può essere personalizzato anche in
modo molto sofisticato (HTML, PhP, MySQL)
 http://en.wikipedia.org/wiki/WordPress
21R.Polillo -
Marzo 2014
Blog iniziale:
tema di default
22
R.Polillo - Marzo 2014
Temi: strutture tipiche
R.Polillo -
Marzo 201423
Header
Colonna 1 Colonna 2 [Colonna 3]
Footer
[Menu orizzontale]
1, 2 o 3
colonne
Altro tema predefinito (2 colonne)
24
R.Polillo - Marzo 2014
Altro tema predefinito:
2 colonne
25
R.Polillo - Marzo 2014
Altro tema predefinito (3 colonne)
26
R.Polillo - Marzo 2014
Altro tema predefinito (3 colonne)
27
R.Polillo - Marzo 2014
Esempi realizzati con WordPress
Versione .com:
www.corsow.wordpress.com
Versione scaricabile:
http://www.rpolillo.it
http://www.stylenest.co.uk
http://mosaic-consulting.com
http://b5media.com
R.Polillo - Marzo 2014
28
Wordpress: elementi base
 Articoli (post)
Titolo, autore, data, categorie, tag, [commenti]
 Pagine (pagine statiche)
 Plugin
Permettono di aggiungere funzionalità (es. widget) in
modo immediato, senza programmazione
 Temi
Codice che descrive l’apparenza grafica (e altro) del
sito; possono essere cambiati con un clic
29
R.Polillo - Marzo 2014
Articoli
R.Polillo -
Marzo 201430
 Sono i post del blog
 Possono contenere testi e inserti multimediali (foto, video,
audio, pdf)
 Presentati in ordine cronologico (di solito), di solito (ma non
sempre) in home
 Hanno categorie e tag
 Commenti abilitabili
 Scrivibili da più autori
 Pubblici, protetti da psw, privati
 Pubblicazione programmabile (quando)
 Generano feed RSS
Pagine
R.Polillo -
Marzo 201431
 Contenuti statici
 Più livelli gerarchici
 Possono contenere testi e inserti multimediali (foto, video,
audio, pdf)
 Commenti abilitabili
R.Polillo - Marzo 201432
Temi
R.Polillo -
Marzo 201433
 Tema: codice predefinito che descrive l’apparenza grafica (e
altro) del sito
 Numerosissimi temi predefiniti, di ogni tipo, gratuiti o a
pagamento
 L’adozione di un tema non richiede scrittura di codice
 Si può cambiare tema con un clic
Plugin
R.Polillo -
Marzo 201434
 Sono il punto di forza di WordPress
 Permettono di estenderne le funzionalità in modo
molto facile e ampio
 Ce ne sono migliaia, bisogna cercarli e provarli
Plugin: esempi
R.Polillo -
Marzo 201435
 Authors Widget
Widget per selezionare i post per autore
 Author exposed
Pop-up sul post con scheda autore
 Enhanced Categories
Widget per selezionare i post per categorie gerarchiche
 Flexo Archives
Widget per selezionare i post per data
 SuperTag Widget
Widget per gestione di Tag Cloud
 WP-Contact Form
Form per contatti via email
Plugin: esempi
R.Polillo -
Marzo 201436
 Ultimate Google Analytics
Attiva Google Analytics sul sito
 All In One SEO Pack
Definizione dei meta-tag per i motori di ricerca
 Google Translator
Widget per tradurre le pagine in 32 lingue
 Wp Geo
Localizza il post su una mappa Google Map
 PollDaddy Polls&Ratings
Gestione questionari on-line e user-rating
 AddToAny: Share/Bookmarks/Email Button
Share buttons per moltissimi siti
 Dynamic Headers by Nicasio Design
Immagine di testata variabile
 Slickr Flickr
Photo gallery da flickr
Back-office: ruoli
 Amministratore (administrator)
Può fare tutto (possono esserci più amministratori)
 Editore (editor)
Ha ampi poteri, ma solo sui contenuti: articoli, pagine, categorie,
commenti (non può intervenire su temi, plugin, widget)
 Autore (author)
Può scrivere, cancellare e modificare articoli e caricare file, e
approvare e modificare i commenti agli articoli.
Non può intervenire sugli articoli di altri autori.
 Collaboratore (contributor)
Può creare articoli, ma non può pubblicarli (devono essere
approvati da un editore o amministratore)
NB: Il backoffice è disponibile in moltissime lingue
37R.Polillo -
Marzo 2014
Dove installare il vostro blog
R.Polillo -
Marzo 201438
Potete usare per esempio www.altervista.org
 Servizio di hosting gratuito, italiano
www.yourname.altervista.org
Altervista: due tipi di servizi
R.Polillo -
Marzo 201439
Massima flessibilità
Massima semplicità
Lavoro individuale
 Installate il vostro blog Wordpress su un servizio di
hosting gratuito (es.: www.altervista.org) e iniziate
a sperimentarlo
R.Polillo - Marzo 2014
40

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

23. Open internet
23. Open internet23. Open internet
23. Open internet
 
16. Social media
16. Social media16. Social media
16. Social media
 
9. Come trovare l'informazione (I)
9. Come trovare l'informazione (I)9. Come trovare l'informazione (I)
9. Come trovare l'informazione (I)
 
15. La forma breve e il microblogging
15. La forma  breve e il microblogging15. La forma  breve e il microblogging
15. La forma breve e il microblogging
 
6. Il browser
6. Il browser6. Il browser
6. Il browser
 
Collaborative Editing
Collaborative EditingCollaborative Editing
Collaborative Editing
 
Slides delle lezioni del corso di Strumenti e applicazioni del Web per il cor...
Slides delle lezioni del corso di Strumenti e applicazioni del Web per il cor...Slides delle lezioni del corso di Strumenti e applicazioni del Web per il cor...
Slides delle lezioni del corso di Strumenti e applicazioni del Web per il cor...
 
13. I blog
13. I blog13. I blog
13. I blog
 
20. Social networks
20. Social networks20. Social networks
20. Social networks
 
Wikipedia
WikipediaWikipedia
Wikipedia
 
6. Ricercare nel Web
6. Ricercare nel Web6. Ricercare nel Web
6. Ricercare nel Web
 
Semantic Search Engine
Semantic Search EngineSemantic Search Engine
Semantic Search Engine
 
14. I blog
14. I blog14. I blog
14. I blog
 
Corso Web 2.0: I blog
Corso Web 2.0: I blogCorso Web 2.0: I blog
Corso Web 2.0: I blog
 
18. Siti di condivisione dei contenuti
18. Siti di condivisione dei contenuti18. Siti di condivisione dei contenuti
18. Siti di condivisione dei contenuti
 
6. Introduzione al web
6. Introduzione al web6. Introduzione al web
6. Introduzione al web
 
Editoria e industria dei media di fronte alla rivoluzione digitale
Editoria e industria dei media di fronte alla rivoluzione digitaleEditoria e industria dei media di fronte alla rivoluzione digitale
Editoria e industria dei media di fronte alla rivoluzione digitale
 
5. Feed, tweet e aggregatori
5. Feed, tweet e aggregatori5. Feed, tweet e aggregatori
5. Feed, tweet e aggregatori
 
5. Introduzione al web (ii)
5. Introduzione al web (ii)5. Introduzione al web (ii)
5. Introduzione al web (ii)
 
3. Introduzione a internet (ii)
3. Introduzione a internet (ii)3. Introduzione a internet (ii)
3. Introduzione a internet (ii)
 

Andere mochten auch

Meccanismi pubblicitari, google vs facebook
Meccanismi pubblicitari, google vs facebookMeccanismi pubblicitari, google vs facebook
Meccanismi pubblicitari, google vs facebook
Giulia Busdon
 
La WEB TV (Presentazione Lunghi Pellegrino Pinneri)
La WEB TV (Presentazione Lunghi Pellegrino Pinneri)La WEB TV (Presentazione Lunghi Pellegrino Pinneri)
La WEB TV (Presentazione Lunghi Pellegrino Pinneri)
Francesca
 
21. L'editoria e l'industria dei media di fronte alla rivoluzione digitale
21. L'editoria e l'industria dei media di fronte alla rivoluzione digitale21. L'editoria e l'industria dei media di fronte alla rivoluzione digitale
21. L'editoria e l'industria dei media di fronte alla rivoluzione digitale
Roberto Polillo
 

Andere mochten auch (20)

16. I social media
16. I social media 16. I social media
16. I social media
 
TOOLS FOR TRENDS
TOOLS FOR TRENDSTOOLS FOR TRENDS
TOOLS FOR TRENDS
 
10. Ricercare nel web (Parte II)
10. Ricercare nel web (Parte II)10. Ricercare nel web (Parte II)
10. Ricercare nel web (Parte II)
 
17.Web feed e aggregatori
17.Web feed e aggregatori17.Web feed e aggregatori
17.Web feed e aggregatori
 
20. Wiki e wikipedia
20. Wiki e wikipedia20. Wiki e wikipedia
20. Wiki e wikipedia
 
15. Social network sites
15. Social network sites15. Social network sites
15. Social network sites
 
Photo App and Sharing: beyond Apple device
Photo App and Sharing: beyond Apple devicePhoto App and Sharing: beyond Apple device
Photo App and Sharing: beyond Apple device
 
Groupon e l'evoluzione dell' e-commerce in social commerce
Groupon e l'evoluzione dell' e-commerce in social commerceGroupon e l'evoluzione dell' e-commerce in social commerce
Groupon e l'evoluzione dell' e-commerce in social commerce
 
21. Open internet
21. Open internet21. Open internet
21. Open internet
 
16. L'industria del libro e dei media di fronte all'evoluzione di Internet
16. L'industria del libro e dei media di fronte all'evoluzione di Internet16. L'industria del libro e dei media di fronte all'evoluzione di Internet
16. L'industria del libro e dei media di fronte all'evoluzione di Internet
 
18. La presenza sul web delle aziende (i)
18. La presenza sul web delle aziende (i)18. La presenza sul web delle aziende (i)
18. La presenza sul web delle aziende (i)
 
Meccanismi pubblicitari, google vs facebook
Meccanismi pubblicitari, google vs facebookMeccanismi pubblicitari, google vs facebook
Meccanismi pubblicitari, google vs facebook
 
22. Conclusione del corso
22. Conclusione del corso22. Conclusione del corso
22. Conclusione del corso
 
La WEB TV (Presentazione Lunghi Pellegrino Pinneri)
La WEB TV (Presentazione Lunghi Pellegrino Pinneri)La WEB TV (Presentazione Lunghi Pellegrino Pinneri)
La WEB TV (Presentazione Lunghi Pellegrino Pinneri)
 
20. Le organizzazioni sul web
20. Le organizzazioni sul web20. Le organizzazioni sul web
20. Le organizzazioni sul web
 
2 .Introduzione a internet
2 .Introduzione a internet2 .Introduzione a internet
2 .Introduzione a internet
 
Il Booking online
Il Booking onlineIl Booking online
Il Booking online
 
13. Modelli di business nel Web
13. Modelli di business nel Web13. Modelli di business nel Web
13. Modelli di business nel Web
 
19. La presenza delle organizzazioni sul Web delle aziende (II)
19. La presenza delle organizzazioni sul Web delle aziende (II)19. La presenza delle organizzazioni sul Web delle aziende (II)
19. La presenza delle organizzazioni sul Web delle aziende (II)
 
21. L'editoria e l'industria dei media di fronte alla rivoluzione digitale
21. L'editoria e l'industria dei media di fronte alla rivoluzione digitale21. L'editoria e l'industria dei media di fronte alla rivoluzione digitale
21. L'editoria e l'industria dei media di fronte alla rivoluzione digitale
 

Ähnlich wie 7. Applicazioni web e CMS

Ähnlich wie 7. Applicazioni web e CMS (20)

7. Applicazioni Web e CMS
7. Applicazioni Web e CMS7. Applicazioni Web e CMS
7. Applicazioni Web e CMS
 
9. CMS e online site builders
9. CMS e online site builders9. CMS e online site builders
9. CMS e online site builders
 
8 - Web app e CMS - 17/18
8 - Web app e CMS - 17/188 - Web app e CMS - 17/18
8 - Web app e CMS - 17/18
 
7 - Web application e CMS
7 - Web application e CMS7 - Web application e CMS
7 - Web application e CMS
 
8. Architetture web
8. Architetture web8. Architetture web
8. Architetture web
 
8 - Web App e CMS - 16/17
8 - Web App e CMS - 16/178 - Web App e CMS - 16/17
8 - Web App e CMS - 16/17
 
Cms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenutiCms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenuti
 
8. Il vostro blog
8. Il vostro blog8. Il vostro blog
8. Il vostro blog
 
Unique file 2
Unique file 2Unique file 2
Unique file 2
 
Le applicazioni web e i CMS (18/19)
Le applicazioni web e i CMS (18/19)Le applicazioni web e i CMS (18/19)
Le applicazioni web e i CMS (18/19)
 
2 Esercitazione: WordPress Parte 2
2 Esercitazione: WordPress Parte 22 Esercitazione: WordPress Parte 2
2 Esercitazione: WordPress Parte 2
 
2 Esercitazione (18/19)
2 Esercitazione (18/19)2 Esercitazione (18/19)
2 Esercitazione (18/19)
 
1 Esercitazione: Introduzione + WordPress Parte 1
1 Esercitazione: Introduzione + WordPress Parte 11 Esercitazione: Introduzione + WordPress Parte 1
1 Esercitazione: Introduzione + WordPress Parte 1
 
1 Esercitazione (18/19)
1 Esercitazione (18/19)1 Esercitazione (18/19)
1 Esercitazione (18/19)
 
Wordpress 3/7. temi e plugin
Wordpress 3/7. temi e pluginWordpress 3/7. temi e plugin
Wordpress 3/7. temi e plugin
 
5 - Introduzione al Web (2/2) - 16/17
5 - Introduzione al Web (2/2) - 16/175 - Introduzione al Web (2/2) - 16/17
5 - Introduzione al Web (2/2) - 16/17
 
07 - Web apps e CMS
07 - Web apps e CMS07 - Web apps e CMS
07 - Web apps e CMS
 
WordPress, CMS/Blog per “tutte” le esigenze
WordPress, CMS/Blog per “tutte” le esigenzeWordPress, CMS/Blog per “tutte” le esigenze
WordPress, CMS/Blog per “tutte” le esigenze
 
7. Il browser
7. Il browser7. Il browser
7. Il browser
 
Grasso Frameworks Ajax
Grasso Frameworks AjaxGrasso Frameworks Ajax
Grasso Frameworks Ajax
 

Mehr von Roberto Polillo

Mehr von Roberto Polillo (20)

Future City, Ipotesi sulla città del futuro
Future City, Ipotesi sulla città del futuroFuture City, Ipotesi sulla città del futuro
Future City, Ipotesi sulla città del futuro
 
Teaching HCI to computing students: some considerations
Teaching HCI to computing students: some considerationsTeaching HCI to computing students: some considerations
Teaching HCI to computing students: some considerations
 
Conclusioni del corso
Conclusioni del corsoConclusioni del corso
Conclusioni del corso
 
22. Conclusioni del corso
22. Conclusioni del corso22. Conclusioni del corso
22. Conclusioni del corso
 
ICT e sviluppo sociale: alcune riflessioni
ICT e sviluppo sociale: alcune riflessioniICT e sviluppo sociale: alcune riflessioni
ICT e sviluppo sociale: alcune riflessioni
 
21. Progettare per l'errore
21. Progettare per l'errore21. Progettare per l'errore
21. Progettare per l'errore
 
20. Principi e linee guida (II)
20. Principi e linee guida (II)20. Principi e linee guida (II)
20. Principi e linee guida (II)
 
20. Principi e linee guida (I)
20. Principi e linee guida (I)20. Principi e linee guida (I)
20. Principi e linee guida (I)
 
18. Paradigmi di interazione uomo macchina (III)
18. Paradigmi di interazione uomo macchina (III)18. Paradigmi di interazione uomo macchina (III)
18. Paradigmi di interazione uomo macchina (III)
 
17. Evoluzione dei paradigmi di interazione uomo macchina (I)
17. Evoluzione dei paradigmi di interazione uomo macchina (I)17. Evoluzione dei paradigmi di interazione uomo macchina (I)
17. Evoluzione dei paradigmi di interazione uomo macchina (I)
 
16. Evoluzione dei paradigmi di interazione uomo macchina (I)
16. Evoluzione dei paradigmi di interazione uomo macchina (I)16. Evoluzione dei paradigmi di interazione uomo macchina (I)
16. Evoluzione dei paradigmi di interazione uomo macchina (I)
 
19. Le organnizzazioni sul web e segg
19. Le organnizzazioni sul web e segg19. Le organnizzazioni sul web e segg
19. Le organnizzazioni sul web e segg
 
18. Content sharing sites
18. Content sharing sites18. Content sharing sites
18. Content sharing sites
 
17. Web feed e aggregatori
17. Web feed e aggregatori17. Web feed e aggregatori
17. Web feed e aggregatori
 
15. Ancora sulla grafica
15. Ancora sulla grafica15. Ancora sulla grafica
15. Ancora sulla grafica
 
14. Progettare il testo
14. Progettare il testo14. Progettare il testo
14. Progettare il testo
 
13. Conoscere l'utente: il sistema motorio
13. Conoscere l'utente: il sistema motorio13. Conoscere l'utente: il sistema motorio
13. Conoscere l'utente: il sistema motorio
 
13. Internet business models
13. Internet business models13. Internet business models
13. Internet business models
 
12. Mobile web
12. Mobile web12. Mobile web
12. Mobile web
 
Internet and sustainable telemedicine: an introduction
Internet and sustainable telemedicine: an introductionInternet and sustainable telemedicine: an introduction
Internet and sustainable telemedicine: an introduction
 

Kürzlich hochgeladen

Presentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticaPresentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informatica
nico07fusco
 
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxAdducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
sasaselvatico
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
giorgiadeascaniis59
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
lorenzodemidio01
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
lorenzodemidio01
 

Kürzlich hochgeladen (20)

Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 
Scrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibileScrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibile
 
descrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptxdescrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptx
 
discorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptxdiscorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptx
 
Presentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticaPresentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informatica
 
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxAdducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
 
Storia-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptxStoria-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptx
 
Una breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opereUna breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opere
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
Aristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptxAristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptx
 
Descrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptxDescrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptx
 
Presentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione CivicaPresentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione Civica
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
 
Quadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceoQuadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceo
 

7. Applicazioni web e CMS

  • 1. Edizione 2013-14 Università degli Studi di Milano Bicocca Dipartimento di Informatica, Sistemistica e Comunicazione Corso di Strumenti e applicazioni del Web 7. Le applicazioni Web e i CMS Roberto Polillo
  • 2. 2 Queste slides fanno parte del corso “Strumenti e applicazioni del Web”. Il sito del corso, con il materiale completo, si trova in www.corsow.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 shots, 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. R.Polillo - Marzo 2014 Queste slides
  • 3. Applicazioni Web  Oltre che "navigare", l'utente deve poter "interagire" con un sito, fornendo dei dati che il sito elaborerà fornendo le risposte opportune  Non solo "Web sites" ma "Web applications" R.Polillo - Marzo 2014 3
  • 4. Applicazioni Web: script client-side 4 HTTP internet Browser Web server HTML con script client-side HTML con programmi client-side Esecutore dei programmi client-side Esempi: • Javascript (script interpretati) con librerie DOM • Applet Java (codice precompilato interpretato da JVM (Java Virtual Machine) • Ajax (rende asincrona l'interazione col server) AJAX Engine
  • 5. Programmazione lato client  JavaScript (creato da Netscape, 1995) Semplice linguaggio di scripting, inserito nel codice HTML e (standardizzato da ECMA col nome di ECMAScript) Interpretato da una Javascript Engine  DOM (Document Object Model) Librerie di funzioni associate a Javascript, per la manipolazione delle pagine e degli elementi dell'interfaccia del browser  Applet Java (Java: linguaggio a oggetti creato da Sun, 1995) Programmi già compilati in codice intermedio ("bytecode"), che viene eseguito da una Java Virtual Machine. Devono essere inviati dal server, e quindi per motivi di sicurezza non hanno accesso al file system del client.  AJAX (Asynchronous JavaScript and XML) Un gruppo di tecnologie e metodi che rendono asincrone la gestione della interazione con l'utente e il dialogo con il web server R.Polillo - Marzo 2014 5
  • 6. Esempi <html> <head> …. </head> <body> …. <script type="text/javascript"> Document.write('Hello World') </script> ….. </body> </html> R.Polillo - Marzo 2014 6 <applet code="Hello class" width="200" hight="200"> </applet>
  • 8. AJAX (Asynchronous JavaScript and XML) R.Polillo - Marzo 2014 8 Da leggere: http://www.adaptivepath.com/ideas/ajax-new-approach-web-applications
  • 9. Applicazioni Web: script server-side (pagine dinamiche) 9 HTTP internet Browser Web server HTML con programmi server- e client-side HTML con script client-side Esempi: •script PHP (Personal Home Page Tools) •script JSP (Java Server Pages) •Servlet Java •… Codice generato server-side Esecutore di programmi server-side Codice server-side
  • 10. La trasmissione dei dati di input 10 HTTP Web server HTML HTTP e HTML forniscono degli strumenti per richiedere dati all'utente e trasmetterli al Web server GET (URL) 1 HTML PUT 2 Nome: OK 3 5 GET URL', Nome=mario 4 Scrive "Mario" e preme OK 6 Elaborazione dati e produzione / invio di una nuova pagina
  • 11. <form method="get" action=http://www.google.com/search> <input type="text" name="querystring"> <input type="submit" name="button1" value="Google Search"> </form> Form: esempio R.Polillo - Marzo 2014 11 bla bla querystring=bla+bla&button1=Google+SearchAl server
  • 12. Architetture a più livelli ("multi-tier") 12 HTTP internet Browser Web server HTML con script client-side Pagine generate dinamicamente Application server db server Data base
  • 13. Come installare un sito Web? 13 HTTP internet Browser Web server Pagine web Editor HTTP FTP HTML Es.: Dreamweaver Una soluzione elementare
  • 14. Content Management Systems (CMS) 14 HTTP internet Browser Web server Pagine generate dinamicamente CMSdb server Data base Lettore Un'applicazione che permette di costruire e installare le pagine, e di servirle ai lettori
  • 15. Content Management Systems (CMS) 15 HTTP internet Browser Web server Pagine generate dinamicamente CMSdb server Data base Lettore Browser Editor
  • 16. Browser Content Management Systems (CMS) 16 HTTP internet Browser Web server Pagine generate dinamicamente CMSdb server Data base Autore Lettore Browser Amministratore
  • 17. Content Management Systems (CMS) 17 HTTP internet Browser Web server Pagine generate dinamicamente CMSdb server Data base Browser Autore Lettore Browser Amministratore Templates Materiale autore Materiale amministratore
  • 18. CMS: tipologie R.Polillo - Marzo 2014 18 Codice proprietario Codice aperto (open source) Codice preinstallato Codice da installare “Online site builders” Es.: blogger (Google) Weebly, Webs, Ning, Socialgo, … Es.: www.wordpress.com …. Es.: wordpress Joomla drupal
  • 19. Online site builders  Applicazioni proprietarie che permettono di costruire e pubblicare siti web interamente on-line, senza necessità di programmazione  Il sito può essere personalizzato in vari modi: scelta del tema grafico, uso di widget, … A volte si può personalizzare il codice o modificare i CSS  Quasi sempre a pagamento (canone mensile), a volte servizi di base gratuiti  Esempi: Per blog: www.blogger.com (di Google, gratuito), … Per siti: www.weebly.com, www.webs.com, … Per social networks: www.ning.com, www.socialgo.com, … 19R.Polillo - Marzo 2014
  • 20. CMS open source  Si deve scaricare il software e installarlo su un server (proprio o di un provider)  Si rivolgono a utenti più esperti, e sono più flessibili  Esempi:  WordPress (www.wordpress.org) Molto semplice da usare, molto ricco di plugin pronti all’uso. Esiste anche una versione online semplificata: www.wordpress.com (funzionalmente limitata, molto diffusa: http://en.wordpress.com/stats/ )  Joomla (www.joomla.org) Più complesso  Drupal (www.drupal.org) Più complesso 20R.Polillo - Marzo 2014
  • 21. WordPress  Il CMS open source più diffuso  Nato per realizzare blog nel 2003 sulla base di un precedente sistema del 2001, ora permette di realizzare anche siti molto sofisticati  Grande community che ne sviluppa l'ecosistema  Facile da usare, può essere personalizzato anche in modo molto sofisticato (HTML, PhP, MySQL)  http://en.wikipedia.org/wiki/WordPress 21R.Polillo - Marzo 2014
  • 22. Blog iniziale: tema di default 22 R.Polillo - Marzo 2014
  • 23. Temi: strutture tipiche R.Polillo - Marzo 201423 Header Colonna 1 Colonna 2 [Colonna 3] Footer [Menu orizzontale] 1, 2 o 3 colonne
  • 24. Altro tema predefinito (2 colonne) 24 R.Polillo - Marzo 2014
  • 25. Altro tema predefinito: 2 colonne 25 R.Polillo - Marzo 2014
  • 26. Altro tema predefinito (3 colonne) 26 R.Polillo - Marzo 2014
  • 27. Altro tema predefinito (3 colonne) 27 R.Polillo - Marzo 2014
  • 28. Esempi realizzati con WordPress Versione .com: www.corsow.wordpress.com Versione scaricabile: http://www.rpolillo.it http://www.stylenest.co.uk http://mosaic-consulting.com http://b5media.com R.Polillo - Marzo 2014 28
  • 29. Wordpress: elementi base  Articoli (post) Titolo, autore, data, categorie, tag, [commenti]  Pagine (pagine statiche)  Plugin Permettono di aggiungere funzionalità (es. widget) in modo immediato, senza programmazione  Temi Codice che descrive l’apparenza grafica (e altro) del sito; possono essere cambiati con un clic 29 R.Polillo - Marzo 2014
  • 30. Articoli R.Polillo - Marzo 201430  Sono i post del blog  Possono contenere testi e inserti multimediali (foto, video, audio, pdf)  Presentati in ordine cronologico (di solito), di solito (ma non sempre) in home  Hanno categorie e tag  Commenti abilitabili  Scrivibili da più autori  Pubblici, protetti da psw, privati  Pubblicazione programmabile (quando)  Generano feed RSS
  • 31. Pagine R.Polillo - Marzo 201431  Contenuti statici  Più livelli gerarchici  Possono contenere testi e inserti multimediali (foto, video, audio, pdf)  Commenti abilitabili
  • 33. Temi R.Polillo - Marzo 201433  Tema: codice predefinito che descrive l’apparenza grafica (e altro) del sito  Numerosissimi temi predefiniti, di ogni tipo, gratuiti o a pagamento  L’adozione di un tema non richiede scrittura di codice  Si può cambiare tema con un clic
  • 34. Plugin R.Polillo - Marzo 201434  Sono il punto di forza di WordPress  Permettono di estenderne le funzionalità in modo molto facile e ampio  Ce ne sono migliaia, bisogna cercarli e provarli
  • 35. Plugin: esempi R.Polillo - Marzo 201435  Authors Widget Widget per selezionare i post per autore  Author exposed Pop-up sul post con scheda autore  Enhanced Categories Widget per selezionare i post per categorie gerarchiche  Flexo Archives Widget per selezionare i post per data  SuperTag Widget Widget per gestione di Tag Cloud  WP-Contact Form Form per contatti via email
  • 36. Plugin: esempi R.Polillo - Marzo 201436  Ultimate Google Analytics Attiva Google Analytics sul sito  All In One SEO Pack Definizione dei meta-tag per i motori di ricerca  Google Translator Widget per tradurre le pagine in 32 lingue  Wp Geo Localizza il post su una mappa Google Map  PollDaddy Polls&Ratings Gestione questionari on-line e user-rating  AddToAny: Share/Bookmarks/Email Button Share buttons per moltissimi siti  Dynamic Headers by Nicasio Design Immagine di testata variabile  Slickr Flickr Photo gallery da flickr
  • 37. Back-office: ruoli  Amministratore (administrator) Può fare tutto (possono esserci più amministratori)  Editore (editor) Ha ampi poteri, ma solo sui contenuti: articoli, pagine, categorie, commenti (non può intervenire su temi, plugin, widget)  Autore (author) Può scrivere, cancellare e modificare articoli e caricare file, e approvare e modificare i commenti agli articoli. Non può intervenire sugli articoli di altri autori.  Collaboratore (contributor) Può creare articoli, ma non può pubblicarli (devono essere approvati da un editore o amministratore) NB: Il backoffice è disponibile in moltissime lingue 37R.Polillo - Marzo 2014
  • 38. Dove installare il vostro blog R.Polillo - Marzo 201438 Potete usare per esempio www.altervista.org  Servizio di hosting gratuito, italiano www.yourname.altervista.org
  • 39. Altervista: due tipi di servizi R.Polillo - Marzo 201439 Massima flessibilità Massima semplicità
  • 40. Lavoro individuale  Installate il vostro blog Wordpress su un servizio di hosting gratuito (es.: www.altervista.org) e iniziate a sperimentarlo R.Polillo - Marzo 2014 40