Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
MOOC Piattaforme digitali per la gestione del territorio - 4.4
1. PIATTAFORME DIGITALI PER LA GESTIONE DEL TERRITORIO
UNIT 4.4
alessandro.bogliolo@uniurb.it
Infrastrutture e tecnologie abilitanti
Interfacce
2. PIATTAFORME DIGITALI PER LA GESTIONE DEL TERRITORIO
Interfacce
e codice Interfacce
interprocesso
Interfacce
remote
Interfacce
Autenticazione e
autorizzazione
Formati e
codifiche
8. Calling convention
int divisione (int a, int b);
Nome della funzione
Ordine, formato e codifica
degli argomenti
Formato e codifica
del dato di ritorno
14. Unix Philosophy
This is the Unix philosophy: Write programs that do one thing and
do it well. Write programs to work together. Write programs to
handle text streams, because that is a universal interface.
17. Pipe
• Sono file speciali utilizzati per connettere due processi con un canale
di comunicazione ( read() / write() )
• Possono essere bidirezionali ma vengono solitamente utilizzate in
modo unidirezionale
29. HTTP
Protocollo principe di Internet
Basato su TCP/IP
Orientato al trasferimento di documenti (iper)testuali
…ma sfruttabile per ogni tipo di trasferimento
Leggibile
Stateless
33. HTTP Status
200 OK
201 Created
301 Moved Permanently
400 Bad Request
403 Forbidden
404 Not Found
500 Internal Server Error
34. RESTful services
«REpresentational State Transfer»
Linee guida architetturali
per l’architettura base del Web.
• Client-server
• Senza stato (stateless)
• Cacheable
• Stratificato
• Interfaccia uniforme
52. L’importanza delle convenzioni
Il Mars Climate Orbiter esplode in orbita
Posizionato ad un’altezza di soli 57 km
invece che 140/150 km
Alcuni calcoli eseguiti usando il Sistema
Imperiale (libbre-forza/secondi) e altri
Tramite il Sistema Metrico Decimale
(newton/secondi)
Costo totale: 328 milioni di dollari
56. Binario
I dati vengono scritti come vengono memorizzati in memoria.
Un intero occuperà sempre sizeof(int)
57. Testo
(Plain text)
Il formato è completamente a discrezione del progettista ma basato su
caratteri testuali.
CMD1;CMD2;CMD3
OK;NO;ERROR
58. CSV
(Comma-Separated Values)
Dati divisi in colonne, separate da virgole (o tabulazioni, o punto e
virgola o altro).
Year, Make, Model, Description,
Price
1997, Ford, E350, "ac, abs, moon",
3000.00
1999, Chevy, VentureEE, great car,
4900.00
1996, Jeep, Cherokee, MUST SELL!,
4799.00
59. XML
(eXtensible Markup Language)
<?xml version="1.0" encoding="UTF-8"?>
<breakfast_menu>
<food>
<name>Belgian Waffles</name>
<price currency="euro" >5.95</price>
<description>Our famous Belgian Waffles with plenty of real maple syrup</description>
<calories>650</calories>
<image file="waffles.jpg" />
</food>
<food>
<name>French Toast</name>
<price currency=“dollar" >4.50</price>
<description>Thick slices made from our homemade sourdough bread</description>
<calories>600</calories>
</food>
<food>
<name>Homestyle Breakfast</name>
<price currency="euro" >6.95</price>
<description>Two eggs, bacon or sausage, toast, and our ever-popular hash
browns</description>
<calories>950</calories>
</food>
</breakfast_menu>
60. HTML
(Hyper Text Markup Language)
Facilmente traversabile: CSS Selector, Xpath
Goal CSS 3 XPath
All Elements * //*
All P Elements p //p
All Child Elements p > * //p/*
Element By ID #foo //*[@id=’foo’]
Element By Class .foo //*[contains(@class,’foo’)]
Element With Attribute *[title] //*[@title]
First Child of All P p > *:first-child //p/*[0]
All P with an A child Not possible //p[a]
Next Element p + * //p/following-sibling::*[0]