vuoi
o PayPal
tutte le volte che vuoi
ESPEDIENTI: CODIFICA ARBITRARIA e FONT
In base alle esigenze, per esempio stampare un dizionario, ci si creava sistemi di codifica ad hoc
con ampio uso di escape. È impossibile o quasi convertire un sistema in un altro. Sono sisemi che
muoiono con i loro creatori.
FONT: per visualizzare le codifiche arbitrarie si usa un font ad hoc: tu digiti A e leggi sullo schermo
α. Il problema è che solo apparentemente stai scrivendo in greco, secondo il computer continui a
scrivere in ASCII. Se provassi a riordinare alfabeticamente il tuo testo…
UNICODE: NASCITA DELLO STANDARD e ISO 10646
Per ovviare all’esistenza di centinaia di standard frammentari e in parte sovrapponibili, la via da
percorrere era l’ESTENSIONE DELLO SPAZIO DI CODIFICA, proceduta a multipli di 8.
ISO 10646 porta lo spazio di codifica a 32 bit (4 byte) per definire 2 miliardi di caratteri. Lo
standard dispone i caratteri su 256 piani, ciascuno è una griglia di 256x256.
BMP= il primo di questi piani. Contiene la maggior parte dei caratteri europei se si usa solo quello
si risparmia sforzo al pc.
UNICODE CONSORTUIM: diversa proposta da Xerox e Apple su un unico piano. Unicode si può
anche personalizzare per esempio con loghi. A volte è difficile stabilire cosa è un carattere
autonomo e cosa no, la sovrapposizione è ancora possibile.
10 PRINCIPI TEORICI GUIDA DI UNICODE:
1. Universalità: uso tutti i caratteri, anche storici, a tutti i livelli
2. Efficienza: non si usa escape
3. Caratteri, non glifi
4. Semantica: attributi (maiuscolo, minuscolo, interpunzione…)
5. Plain text: non rich text
6. Ordinamento logico: proprietà direzionali del carattere: unicode codifica la semantica e non
l’apparenza (se il testo sarà letto da destra a sinistra o viceversa…)
7. Unificazione: unificare caratteri duplicati in diversi sistemi di scrittura
8. Composizione dinamica: i catatteri con diacritico si possono anche creare per
combinazione.
9. Stabilità: i caratteri una volta inclusi sono immutabili
10. Convertibilità: successo ma rischio di incoerenze.
HYPERTEXT: MARKUP LANGUAGE
WEB SERVER: un computer che risponde alle richieste di un WEB BROWNSER (mozilla, chrome
ecc.). il CLIENT (mozilla, chrome ecc) manda una richiesta al server che risponde.
HTTP: dialoga col server, senza memoria.
MARCATURA PROCEDURALE: autore formatta il testo (decide di che colore sono le parole…) è
un intervento non strutturale, attiene solo alla veste tipografica.
MACRO= procedura esterna
SGML= marcatura strutturale (titoli, paragrafi ecc.). Flessibile a diversi generi di testo.
HTML: linguaggio di marcatura per pagine web. È un’applicazione di SGML. Contiene TAG=
informazioni metatestuali racchiuse tra < e >. Tag di chiusura: < / >. HTML è una struttura
gerarchica con titoli e paragrafi.
HTML ha TAG LOGICI, diversi dai TAG TIPOGRAFICI. Man mano che HTML andava avanti lo si è
un po’ inquinato con tag tipografici che ne rendevano difficoltosa la manutenzione. Con la versione
4 si è tornati ai soli tag logici affidando la grafica a CSS.
CSS
Nata per non oberare HTML di tag tipografici. Ha diversi stili tipografici di cui si scelgono le regole
di applicazione che sono poi fatte in automatico (non come in Word!)
SELECTOR= selezione una porzione di testo HTML + coppie proprietà:valore (declarations)
POSIZIONE: inserito direttamente nella pagina o in un file esterno.
GERARCHIE: CASCATA ED EREDITARIETà.
3 livelli: IMPOSTAZIONI DEL CREATORE DEL SITO WEB, DELL’UTENTE, DEL BROWNSER. La
più nuova e specifica impostazione prevale sulle altre. Le vecchie, salo indicazioni contrarie, sono
ereditate senza doverle ricreare. Cascata= questa gerarchia ereditaria.
INTERATTIVITà: JAVASCRIPT
Scopo: interagire con la marcatura di HTML operando dentro un brownser. Esempio: una pagina
web contiene data e ora aggiornate in tempo reale o un saluto personalizzato che si ottiene
cliccandoci sopra…
L’apparenza della pagina è modificata dagli input dell’utente.
INCONVENIENTI: javascript può essere intrusiva per HTML, con problemi per la manutenzione e
la leggibilità della pagina. Quindi oggi si tende a relegare i contenuti interattivi in una zona specifica
come l’intestazione, per essere meno intrusivi.
- tendenza moderna a sepatare il più possibile ogni componente della pagina web: il testo
(HTML), la grafica (CSS), il comportamento (JAVASCRIPT)
HTML5: certe funzioni che prima richiedevano Javascipt sono fatte ora da HTML (ora, data..). Mini-
maschere per selezionare date o colori.
Div= tag che rappresenta un semplice blocco di contenuto senza ulteriori specificazioni. Prima
questa sigla era preposta ad ogni tag mentre in HTML5 è snellita la procedura. Se prima un tag
era <div id = “content”> ora è <content>.
MOTORI DI RICERCA E SEO
All’inizio per trovare 1 file bisognava sapere il nome esatto. Gradualmente dal ’93 si è arrivati ai
motori di ricerca.
SEO= Search Engine Optimization: studi sugli algoritmi dei motori di ricerca per capire come
mettere il proprio sito in testa. I calcoli dei motori per valutare la pertinenza sono vari e complessi.
RIA= tecnologia per interattività, ora parzialmente pareggiata da HTML5.
EXTENSIBLE MARKUP LANGUAGE (XML)
LIMITE DI HTML: adatto solo a ipertesti web.
XML è un METALINGUAGGIO adatto a diversi contenuti. Come SGML ma più semplice. In XML
ognuno è libero di inventare attributi per marcare ogni cosa. Utile ad esempio per matematici o
musicisti. Esistono vair dialetti di XML, come ad esempio MATHML, utile per i matematici, e
MUSICXML, utile ai musicisti.
XSDL= dialetto destinato a formalizzare il lessico e la sintassi di qualsiasi altro dialetto XML
DTD= Document Type Definition. “antenato” di XSDL ma con meno potenza e lo svantaggio di non
essere esso stesso un dialetto di XML.
CONTENUTO E PRESENTAZIONE: XML come HTML tratta plain text. Usa CSS o XSLT per la
presentazione
RSS= really symple syndication. Brevi notizie aggiornate possono essere ricevute in temo reale
senza visitare il sito di appartenenza.
CSS e XML: CSS è adatta quando non si richiede una grande trasformazione del contenuto.
Sennò c’è XSLT che trasforma contenuti HTML trovati grazie alla tecnologia XPATH. Il testo può
essere trasformato in HTML; PLAIN TEXT, RICH TEXT…
ESEMPI DI DIALETTI
TEI= TEXT ENCODING INITIATIVE. Nato per rappresentare in modo standard testi letterari in tutte
le sfumature utili per la ricerca, così da fornire un formato comune di scambio per questo tipo di
dati. Marcatura il più possibile espressiva e universale Ha una ventina di sezioni specializzate.
DOCBOOK: in una certa misura si sovrappone a TEI (è adottato in testi letterari o materiale a
stampa preesistente) ma è spesso usato in ambito non accademico, specie per produrre
documentazione tecnica. Come TEI: documenti a struttura gerarchica. Alla sommità stanno gli
insiemi (set) che comprendono diversi sottoinsiemi (book).
ALTRI DIALETTI:
EPUB: editoria elettronica, non complesso
OPENOFFICEXML: formato a basedi vari dialetti XML, ciascuno specializzato in un unico ambito,
compreso in un unico file ZIP. È creato di Microsoft ma aperto e standardizzato, per rappresentare
i CONTENUTI EDITABILI di testi, fogli di calcolo ecc…. l’organizzazione di questi file segue uno
standard detto OPC, che è in competizione con open document (ODF).
OPEN XPS: per descrivere contenuti NON EDITABILI e impaginati. Descrive la struttura pagina
per pagina come fa PDF. Conserva l’aspetto originale di un documento.
SUG (SCLALBLE VECTOR GRAPHICS): descrive immagini in modo vettoriale: l’immagine, cioè,
anziché essere composta da un insieme di puntini colorati come i file Jpeg ecc, è composta da
punti+ forme geometriche disposte in più strati su un piano cartesiano. Così l’immagine, che viene
“disegnata” nel momento in cui la si apre, non ha problemi di formato.
GEDCOM: nata per ricerche genealogiche, all’inizio era in plain text e poi è stata trasposta in un
dialetto XTML.
XHTML: riformulazione di HTML nei termini di XTML. Aspetti positivi: costituisce un ampliamento di
HTML. Aspetti negativi: il linguaggio è troppo complesso.
DATABASE RELAZIONALE=DMBS
XML come banca dati: vantaggi e limiti
• STRUTTURA GERARCHICA/AD ALBERO adatta a certi contenuti (testi divisi in paragrafi
ecc.), facile da modificare quando basta aggiungere un “ramo”.
• Però è RIDONDANTE lo stesso dato ripetuto tante volte
• È VERBOSO spesso dispendioso di energia
• È FRAGILE è facile per chiunque modificare il file.
• SINTESI: UTILE Più PER TRASFERIRE DATI CHE PER CONSERVARLI
FLAT FILE DATABASE: Una qualsiasi rappresentazione di un modello di dati contenuta in un unico
file, articolato in una serie di record successivi con “campi” (ad esempio celle) divisi da appositi
separatori o altre convenzioni.
In pratica: rappresentare una tabella sotto forma di testo sostituendo le stanghette, ad esempio,
con virgole.
• Limiti: problemi con dati multipli correlati con dati singoli (es: corso di laurea di uno
studente/interessi di uno studente). Poi per la sua base testuale ci sono meno compattezza
e robustezza.
DATABASE RELAZIONALE: BANCA DATI PER ARCHIVIARE E MANIPOLARE CONTENUTI IN
MODO EFFICACE E ROBUSTO.
Modello relazionale: basato su PRINCIPI MATEMATICI derivati dalla teoria degli insiemi e dalla
logica. Definisce il modo in cui rappresentare dati (la loro struttura), come proteggerli, il tipo di
manipolazioni possibili per loro.
I dati sono correlati da relazioni= serie di righe e colonne su cui possono essere dispoti, come in
una tabella. Ogni riga di dati della relazione si dice comunemente TUPLA. Ogni colonna:
ATTRIBUTE.
ALESSIA MATRISCIANO FEMMINA
ELEONORA MATRISCIANO FEMMINA
ATTRIBUTE
TUPLA
DATA MODEL: Il livello + astratto della progettazione di un database. È una descrizione
concettuale articolata in entità, attributi, modelli e relazioni per descrivere la porzione di realtà
oggetto del database.
CHIAVI: il dato che consente di trovare ogni tupla in maniera univoca senza confonderla. Ad
esempio il num. Di matricola in un database di studenti. PK= primary key.
Le TRE FORME NORMALI: LA NORMALIZZAZIONE CONSENTE DI ELIMINARE LA
RIDONDANZA ATOMIZZANDO LE RELAZIONI FRA I DATI. Le tre forme sono tre diverse tappe
sul cammino della normalizzazione.
Integrità: i dati devono essere completi di tutto. Ad esempio in una biblioteca dove i libri sono
schedati, se si cancella dal database un autore anche tutti i suoi libri si cancellano; e non si pu&o