Sunteți pe pagina 1din 103

concepte primare i viziune

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Tehnologii Web

Franz Kafka

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

De la un anumit punct ncolo,


nu mai exist cale de ntoarcere.
Acela este punctul ce trebuie atins.

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Ce este Web-ul?

Web
WWW

pnz de pianjen mondial

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Serviciu Internet
WWW Internet

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Idee (Sir Tim Berners-Lee la CERN 1989)


integrarea unor sisteme informaionale
disparate ntr-un mod unitar,
fr diferene ntre sursele de date

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Idee (Sir Tim Berners-Lee la CERN 1989)


integrarea unor sisteme informaionale
disparate ntr-un mod unitar,
fr diferene ntre sursele de date

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Idee (Sir Tim Berners-Lee la CERN 1989)


integrarea unor sisteme informaionale
disparate ntr-un mod unitar,
fr diferene ntre sursele de date

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Idee (Sir Tim Berners-Lee la CERN 1989)


integrarea unor sisteme informaionale
disparate ntr-un mod unitar,
fr diferene ntre sursele de date
anything can link to anything

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

a common information space in which


we communicate by sharing information
Sir Tim Berners-Lee (2013)

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

de studiat prezentarea S. Buraga, 25 de ani de Web (2014)


http://www.slideshare.net/busaco/25-de-ani-de-web

Bazat pe modelul client/server

client
Web
(browser)

cerere

rspuns

server
Web

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

i pe
hipertext
(hipermedia)

Scopuri principale:
independena de dispozitiv
independena de software
scalabilitatea
ubicuitatea

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Scopuri principale:
independena de dispozitiv
independena de software
scalabilitatea
ubicuitatea
caracter deschisopen standards

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Funcioneaz conform reglementrilor


Consoriului Web
MIT, ERCIM, Keio University etc.
Apple, BBC, CERN, HP, IBM, Intel, OpenCar, Microsoft,
Mozilla Foundation, Samsung, Syncro Soft, Wiley,

www.w3.org

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

world wide web

Resursele sunt identificate prin adresa lor


identificator uniform de resurse
URI Uniform Resource Identifier
http://slideshare.net/busaco/presentations

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

arhitectura Web-ului

Accesul la coninutul reprezentarea


resurselor Web
se realizeaz printr-un protocol

HTTP HyperText Transfer Protocol

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

arhitectura Web-ului

adrese Web
URI = URL + URN
codificarea
datelor
Unicode

protocoale Web
HTTP, HTTPS
nume de
domenii
DNS

protocoalele
Internet
TCP/IP

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

arhitectura Web-ului

pagini Web

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

resursele documentele includ <marcaje />

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

marcajele conin la rndul lor URI-urihipertext

adresabilitate via URI


http://world.info/europe/romania/iasi/weather?today
identific

informaii
meteo
despre Iai
resurs Web

reprezint

reprezentare
<section id="meteo">
<div class="weather">
<p lang="ro">Iai</p>
<span>city</span>
<p lang="en">Temp.
<span id="today">
is <strong></strong>
&deg;C</span>
</p>
</div>
</section>

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Relaiile dintre o resurs Web, adresa ei (URI) i


reprezentarea structurat a resursei

formatul HTML5
(utilizatori umani, uzual)

adresabilitate via URI


http://world.info/europe/romania/iasi/weather?today
identific

informaii
meteo
despre Iai
resurs Web

reprezint

reprezentare
<weather>
<point lat="..." long="">
<name lang="ro">
Iai
</name>
<type>city</type>

</point>
<temperature when="">
<value></value>
</temperature>
</weather>

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Relaiile dintre o resurs Web, adresa ei (URI) i


reprezentarea structurat a resursei

formatul XML
(procesat de software)

adresabilitate via URI


http://world.info/europe/romania/iasi/weather?today
identific

informaii
meteo
despre Iai

reprezentare
{

reprezint

resurs Web
}

"point" : {
"geo" : { "lat" : "",
"long" : "" },
"name" : "Iai",
"type" : "city"
},
"temperature" : {
"when" : "",
"value" : ""
}

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Relaiile dintre o resurs Web, adresa ei (URI) i


reprezentarea structurat a resursei

formatul JSON
(procesat de software)

adresabilitate via URI


http://world.info/europe/romania/iasi/weather?today
identific

informaii
meteo
despre Iai
resurs Web

reprezint

reprezentare

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Relaiile dintre o resurs Web, adresa ei (URI) i


reprezentarea structurat a resursei

<section id="meteo">
<div class="weather">
<p lang="ro">Iai</p>
reprezentare
<span>(city)</span>
{
<p lang="en">Temp.

<span
class="today">
{
"temperature"
:{
is
<strong></strong>
"point" : {"when" : "",
&deg;C</span>
"geo" : "value"
{
: ""
} :, "long" :
</p> "lat"
}
</div>
}
}
</section>

reprezentarea ntr-un format deschis (e.g., HTML, XML,


JSON, RDF,) include date propriu-zise + meta-date

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Ce nseamn hipertextul?

Material scris sau grafic interconectat


ntr-o manier complex care n mod convenional
nu poate fi reprezentat pe hrtie.

Ted Nelson, 1965

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: definire

Text non-liniar
Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: definire

Text non-liniar

versus

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: definire

Form de document electronic

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: definire

Form de document electronic


formate de reprezentare a coninutului
DocBook
HTML (HyperText Markup Language)
ODF (Open Document Format)
PDF (Portable Document Format)

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: definire

Vannevar Bush As We May Think, 1945


MEMEX (MEMory EXtended)

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: istoric

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Consider a future device for individual use, which is a sort of


mechanized private file and library. [] It affords an immediate step,
however, to associative indexing, the basic idea of which is a provision
whereby any item may be caused at will to select immediately and
automatically another. []
The process of tying two items together is the important thing.

Douglas Engelbart
Augment (1968)
mouse, interfee grafice, procesoare de text,
pot electronic, script-uri, ferestre pe ecran etc.
The Mother of All Demos (1968)
https://www.youtube.com/watch?v=yJDv-zdhzMY

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: istoric

Ted Nelson
Xanadu prototip, 1991
termenul hipertext

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: istoric

Hipermedia = hipertext + multimedia

Multimedia = medii

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: istoric

Hipermedia = hipertext + multimedia

Multimedia = medii
medii de comunicare:
continue (audio, video) i/sau discrete (text)

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: istoric

Hipertextul ca (di)graf
noduri = concepte
legturi = relaii

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: ingrediente

Noduri interconectate prin legturi


nod surs = referin (ancor)
nod destinaie = referent (ancor)

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: ingrediente

refereniale (non-ierarhice)
organizaionale (ierarhice, structurale)

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: legturi

statice stabilite de autorul documentului


versus
dinamice generate de un program

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: legturi

Coninut
tipuri de medii: text, imagine, audio, video,

Organizare
noduri + legturi structurale

Prezentare
textual, grafic, multimedia, 3D, mixt (ne)interactiv

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

hipertext: documente

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Cum identificm (adresm) resursele Web?

Fiecare resurs Web este desemnat de


identificatori uniformi de resurse
URI Uniform Resource Identifiers
RFC 2396, 3986
https://www.rfc-editor.org/rfc/rfc3986.txt

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI

Resurs
lucru care posed o identitate

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI: definiii

Resurs
lucru care posed o identitate

nsemnare, CV, fotografie, prezentare, melodie, program,


persoan, baz de date, concept arbitrar etc.

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI: definiii

Identificator
obiect care poate juca rolul unei resurse

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI: definiii

Identificator
obiect care poate juca rolul unei resurse
secven de caractere avnd o sintax precis

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI: definiii

Uniformitate
resurse eterogene pot fi desemnate
pe baza acelorai convenii sintactice,
fiind interpretate semantic n mod uniform

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI: definiii

Uniform Resource Locator


identific resursele prin intermediul mecanismului
de accesare: adres de reea, domeniu simbolic

RFC 2717, 2718

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI = URL + URN

Uniform Resource Locator


http://profs.info.uaic.ro/~busaco/teach/
mailto:tux@pinguin.info
ftp://ftp.funet.fi/pub/README.txt
data:image/png;base64,iVBORw0KGgoAAYII=
tel:+40232201090
geo:47.16667,27.60000

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI = URL + URN

Uniform Resource Name


identific resursele prin nume, n mod persistent,
chiar dac resursa este una abstract

RFC 2141

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI = URL + URN

urn:mimetypes
urn:ISBN:973-681-988-4
urn:ietf:rfc:7700

urn:mozilla:install-manifest

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI = URL + URN

carte
identificat
unic prin ISBN

urn:mimetypes

tipuri de date
MIME

urn:ISBN:973-681-988-4
component
software

urn:ietf:rfc:7700

urn:mozilla:install-manifest

specificaie
(standard)

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI = URL + URN

http://www.pinguin.info/prog/cauta?id=Tux

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

schema://authority/path?query

http://www.pinguin.info/prog/cauta?id=Tux

schema reprezint o schem de adresare standardizat


(recunoscut de client e.g., navigatorul Web)
about file ftp geo http https im imap ipp ldap mailto
news nfs sip sms stun tel turn tv urn ws xmpp etc.

www.iana.org/assignments/uri-schemes/uri-schemes.xhtml

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

schema://authority/path?query

http://www.pinguin.info/prog/cauta?id=Tux

authority poate include informaii de autentificare


a utilizatorului (nume:parola specificate n clar!)
+
date privind domeniul/adresa Internet,
eventual portul de acces

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

schema://authority/path?query

http://www.pinguin.info/prog/cauta?id=Tux

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

schema://authority/path?query

path refer o cale (virtual) de directoare


spre un nume de resurs interpretabil ca nume de fiier,
eventual avnd o extensie

http://www.pinguin.info/prog/cauta?id=Tux

query specific date de intrare


uzual, perechi cheie=valoare delimitate de &

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

schema://authority/path?query

Caractere rezervate
;/?:@&=+$,
se codific n baza 16, precedate de %

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI

Caractere rezervate
;/?:@&=+$,
se codific n baza 16, precedate de %
exemplu: spaiul va deveni %20

de ce?

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI

URL-uri absolute
http://www.info.uaic.ro/~busaco/cv.html

apar obligatoriu componentele schema i authority

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI

URL-uri relative
../../web.css

apar doar construcii referitoare la componenta path


i, eventual, query

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI

Fragmente dintr-un coninut


pot fi referite prin URIref
(referine, fragment identifiers)
URI#URIref

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI

Fragmente dintr-un coninut


pot fi referite prin URIref
(referine, fragment identifiers)
URI#URIref
web-biblio.html#web
https://drive.google.com/#my-drive

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

URI

URI
URI-urile trebuie considerate opace
nu trebuie ghicit tipul coninutului
inspectnd URI-ul asociat resursei

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

avansat

URI
URI-urile trebuie considerate opace
nu trebuie ghicit tipul coninutului
inspectnd URI-ul asociat resursei
tipul unei resurse nu este dat de extensie e.g., .html ,
ci de tipul MIME transmis de server

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

avansat

URI
URI-urile trebuie considerate opace
nu trebuie ghicit tipul coninutului
inspectnd URI-ul asociat resursei
starea/coninutul resursei poate evolua n timp,
dar URI-ul asociat ei nu
Cool URIs dont change www.w3.org/Provider/Style/URI.html

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

avansat

Internationalized Resource Identifier


permite folosirea caracterelor Unicode n URI
a se vedea i IDN (Internationalized Domain Name)
exemplificri:
http://thefreedictionary.com/ros
http://www.kpabt.eu/motorbat/
http://www..tw/

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

IRI

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

(n loc de) pauz

http://digitalsynopsis.com/design/web-designer-developer-jokes-humour-funny/

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Ce tipuri de aplicaii Web exist?

sistem pe care ruleaz un server Web


gzduind o serie de pagini (resurse) nrudite

ale unei organizaii, companii sau persoane

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Sit Web

colecie interconectat de pagini Web


cu coninut generat dinamic, menit a oferi
utilizatorilor o funcionalitate specific

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web

interaciunea dintre aplicaie i utilizatori


are loc via o interfa Web

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web

interaciunea dintre aplicaie i utilizatori


are loc via o interfa Web
uzual, sit Web aplicaie Web

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web

exemplificri:
Amazon, DevDocs, eMAG, Flickr, fiddles.io, GitHub, InfoQ,
info.uaic.ro, Last.fm, Koding, Medium, OverLeaf, Reddit,
Quora, SlideShare, Vimeo, UXPin, webmin, WordPress
i multe, multe, multe altele

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web

Centrate pe documente
Interactive
Tranzacionale
Colaborative
Orientate spre portaluri
De tip ubicuu
Web social
Web semantic

evoluia n timp
a complexitii

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

tipuri de aplicaii web

coninut/pagini static(e):
situri de organizaii, companii, referitoare la persoane

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Centrate pe documente document centric

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

expoziii virtuale
situri de tiri
sisteme de facilitare a cltoriilor (e-travel)
chiocuri informative
participare la evenimente online

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Interactive

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

online banking
soluii B2B (business-to-business)
fluxuri de activiti (workflow-uri)

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Tranzacionale

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

tele-conferine Web
aplicaii Web de tip wiki
servicii e-learning
aplicaii Web peer-to-peer

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Colaborative

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

localizare unitar a informaiilor


tehnice, de afaceri, guvernamentale,

specie: Web-ul cetenesc

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Orientate spre portaluri

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

servicii mobile bazate pe locaia utilizatorului,


disponibile pe mai multe plaforme:
desktop, dispozitive mobile, tablet, consol de jocuri,
Web-ul mobil

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

De tip ubicuu

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

mediatizare (syndication)
filtrare colaborativ pe baza tagging-ului
spaii de lucru virtuale
divertisment social

social (game) computing

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Web social

tagging

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Asocieri
mentale
multiple
(concepte)

Obiect
de
interes

tagging-ul reprezint o modalitate particular de adnotare


a resurselor electronice digital content annotation

tagging

tag = (meta)dat simpl termen arbitrar ales


asociat extern unui obiect (unei resurse)
cu scopul de a identifica, sorta, agrega etc. acea resurs

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Asocieri
mentale
multiple
(concepte)

Obiect
de
interes

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Web semantic
(Web of Data Web-ul datelor interconectate)
modelarea cunotinelor
pentru a fi nelese de calculatoare
dateinformaiicunotine

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

avansat

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

avansat

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Care este arhitectura unei aplicaii Web?

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Arhitectura generic a unei aplicaii Web

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web = Interfa + Coninut (Date) + Program

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web = Interfa + Coninut (Date) + Program

mitul 1: cea mai important este interfaa


mitul 2: cel mai important este programul
mitul 3: cele mai importante sunt datele
standarde deschise: HTML, CSS, Ajax, SVG, WebGL,

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web = Interfa + Coninut (Date) + Program

mitul 1: cea mai important este interfaa


mitul 2: cel mai important este programul
mitul 3: cele mai importante sunt datele

server: C#, Java, JavaScript, PHP, Ruby,; client: JavaScript

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web = Interfa + Coninut (Date) + Program

mitul 1: cea mai important este interfaa


mitul 2: cel mai important este programul
mitul 3: cele mai importante sunt datele
relaionale (SQL), grafuri (NoSQL), JSON, XML, RDF

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

Aplicaie Web = Interfa + Coninut (Date) + Program

mitul 1: cea mai important este interfaa


mitul 2: cel mai important este programul
mitul 3: cele mai importante sunt datele
fapt: sunt importante toate!


terminologie, modelul client/server, hipertextul,
URI, sit vs. aplicaie, tipuri de aplicaii Web

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

rezumat

episodul viitor: programare Web


protocolul HTTP

Dr. Sabin Buragaprofs.info.uaic.ro/~busaco/

http://httpstatusdogs.com/

S-ar putea să vă placă și