10 Nykyaikainen WWW-arkkitehtuuri

Samankaltaiset tiedostot
11 Hypermediajärjestelmistä

Social Media TagCloud Tagging Twitter Trac TWiki Youtube MediaWiki Microblogging Moodle MoinMoinWiki

W3C-teknologiat ja yhteensopivuus

3 Verkkosaavutettavuuden tekniset perusteet

10 Hypermedia, ihminen ja käytettävyys

Järjestelmäarkkitehtuuri (TK081702)

3 Verkkopalveluarkkitehtuuri

Saavutettavuus > Tapio Haanperä Saavutettavuusasiantuntija tel

in condition monitoring

10 Ohjelmoinnista Semanttisessa Webissä

Verkkopalveluiden saavutettavuus

Avoimet standardit ja arkistointi

Verkkosisällön saavutettavuusohjeet 2.0: hyviä ohjeita monimuotoisen sisällön suunnitteluun ja arviointiin

W3C & verkkojulkaisun standardit

W3C ja alueellinen standardointi

Semanttinen Web. Ossi Nykänen Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto

URL-osoitteiden suunnittelu

AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML

Sivuston nopeus. (vanhentumista ei ole määritetty)

TIEDEJUTTUKURSSI FM VILLE SALMINEN

Paikkatiedot ja Web-standardit

Eero Hyvönen. Semanttinen web. Linkitetyn avoimen datan käsikirja

standardit (W3C, ISO) Semanttisen laskennan tutkimusryhmä Teknillinen korkeakoulu

SUOMEN KUNTALIITTO RY

3 Verkkopalveluarkkitehtuuri

9 Edistynyt PHP-ohjelmointi

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto

Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus

Luento 12: XML ja metatieto

XML johdanto, uusimmat standardit ja kehitys

Pysyvät tunnukset ja niiden hyödyntäminen

W3C ja Web-teknologiat

ETÄTERMINAALIYHTEYS SELAIMELLA

Digitaalisen median tekniikat xhtml - jatkuu Harri Laine 1

Web sovelluksen kehittäminen sähkönjakeluverkon suojareleisiin

Sivuston nopeus. Sivullasi on 2 uudelleenohjausta. Uudelleenohjaukset viivästyttävät sivun lataamista.

T Hypermediadokumentin laatiminen. Sisältö. Tavoitteet. Mitä on www-ohjelmointi? Arkkitehtuuri (yleisesti) Interaktiivisuuden keinot

W3C ja Web-teknologiat

Laajuus 5 op Luennot: 12 x 2t Harjoitukset: 7 viikkoharjoitusta harjoitusten tekemiseen saatavissa apua 2 ryhmää / harjoitus

Digitaalisen median tekniikat xhtml - jatkuu

Tiedonsiirto- ja rajapintastandardit

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS Ti Kandidaatintyö ja seminaari

Sivuston nopeus. Sivullasi on 2 uudelleenohjausta. Uudelleenohjaukset viivästyttävät sivun lataamista.

Vasteaika. Vasteaikaa koskeva ohje ei ole juuri muuttunut Robert B. Millerin vuonna 1968 pitämästä esityksestä:

Sivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä

Sivuston nopeus. Sivullasi on 2 uudelleenohjausta. Uudelleenohjaukset viivästyttävät sivun lataamista.

Digitaalisen median tekniikat xhtml - jatkuu

ARVO - verkkomateriaalien arviointiin

Julkaisuarkistojen käyttötilastot: Mitä tilastoidaan ja miksi?

2. PEHMEÄ XHTML XRAJAHTML

10 Hypermedia, ihminen ja käytettävyys

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

Sivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä

Sivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä

W3C: teknologia ja (tieto)yhteiskunta

Sivuston nopeus. (vanhentumista ei ole määritetty)

2. Sovelluksia ja sovellusprotokollia

PRH:n rajapinta ja tilinpäätösarkisto. Tilinpäätös on digitaalinen seminaarin

Sovellusprotokolla on vain osa hajautettua sovellusta Esim. WWW

Sivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä

The OWL-S are not what they seem

5 Verkkopalvelun sisällön hallinta

URI:n muodostamisen prosessi (suositusluonnoksen liite 1)

Sivuston nopeus. Tiivistämällä resursseja gzip- tai deflate-koodilla voit vähentää verkon kautta lähetettävien tavujen määrää.

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012

Semanttinen Finlex Arttu Oksanen ( )

Sivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä

Sivuston nopeus. (vanhentumista ei ole määritetty)

Sivuston nopeus. Tiivistämällä resursseja gzip- tai deflate-koodilla voit vähentää verkon kautta lähetettävien tavujen määrää.

Asiakirjojen yksilöinti, löytäminen ja siirrettävyys

ARVO - verkkomateriaalien arviointiin

Kurssin hallinta -työväline

Putteri Käyttöliittymä ja ulkoasu

Sivuston nopeus. Sivullasi ei ole uudelleenohjauksia. Lue lisää aloitussivun uudelleenohjausten välttämisestä.

Sivuston nopeus. Tiivistämällä resursseja gzip- tai deflate-koodilla voit vähentää verkon kautta lähetettävien tavujen määrää.

Eurooppalaiset lainsäädännön ja oikeuskäytännön standardit. Aki Hietanen, oikeusministeriö

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto

Tietoliikenne II (2 ov)

HTML & CSS. HTML (HyperText Markup Language) Antti Koivisto. ! HTML on sivujen kuvauskieli.

8 Hypermedian suunnitteleminen

Käyttöliittymä ja tuotantokäsikirjoitus. Heini Puuska

Sivuston nopeus. (vanhentumista ei ole määritetty)

63 / 100 Nopeus. Sivuston nopeus. Pitäisi korjata: Hyödynnä selaimen välimuistia. Mobiili

HOJ J2EE & EJB & SOAP &...

Sivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä

Sivuston nopeus. Poista hahmonnuksen estävä JavaScript ja CSS sivun yläosan sisällöstä

3 Verkkopalveluarkkitehtuuri

XML-evoluutio ja kestävä kehitys

HTTP-välityspalvelimen käyttö tapahtumien keräämiseen

Sivuston tiedotakcpshop.de.websiteoutlook.com

6 Mukautuvat verkkopalvelut

Luento 8: XML-tuki ohjelmointikielissä & Web-palvelut

2 Web-lomakkeet. HTML-lomakkeet. Lomakkeiden perusteet

52 / 100 Nopeus. Sivuston nopeus. Pitäisi korjata: Hyödynnä selaimen välimuistia. Mobiili

KODAK EIM & RIM VIParchive Ratkaisut

Sivuston nopeus. Tiivistämällä resursseja gzip- tai deflate-koodilla voit vähentää verkon kautta lähetettävien tavujen määrää.

Tekninen suunnitelma - StatbeatMOBILE

Google Cloud Print -opas

labs.kirjastot.fi Antti Pakarinen Timo Tuominen

Transkriptio:

10 Nykyaikainen WWW-arkkitehtuuri è è è 10 Nykyaikainen WWW-arkkitehtuuri WWW on ylivoimaisesti suosituin hypertekstijärjestelmä. Käydään seuraavaksi läpi nykyaikaisen WWW-arkkitehtuurin perusteet. Vuonna 2002 ensimmäisen kerran julkaistu Architecture of the World Wide Web - määritys jakaa WWW-arkkitehtuurin kolmeen kokonaisuuteen: Yksilöinti ([Identification]): Resurssien yksilöinti URI-tunnisteiden avulla. Esimerkki: Levyharrastajilla on verkkopalvelu, jonka URI-tunniste on http://www.levylaari.fi. Vuorovaikutus ([Interaction]): Viestien välittäminen sovellusten välillä protokollien avulla. Esimerkki: Käyttäjä kirjoittaa URI:n selaimen osoitekenttään. Selain ottaa yhteyden palvelimeen www.levylaari.fi (portti 80) ja tekee tälle HTTP-pyynnön resurssista. Selain lähettää vastauksen HTTP-protokollan avulla. Representaatio ([Representation]): Resurssit esitetään tiedostomuotojen joukon avulla. Esimerkki: Levyjen tiedot esitetään XHTML-dokumentteina, kannet ja ikonit ovat PNG-muotoisia. Palvelun ulkoasu määritellään CSS-tyylitiedostossa. 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 219

Resurssi, yksilöinti ja representaatio Representaatio edustaa resurssia tietyllä ajanhetkellä (HTTP-pyyntö): URI http://www.levylaari.fi/vuodenlevy Representaatio Metatieto Content-type: application/xhtml+xml Tietosisältö <html><head> <title>l e v ylaari: Vuoden levy</title> </html><body>...</body></html> Edustaa Yksilöi Resurssi Levylaarin vuoden levy 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 220

Yksilöinti: URI-tunnisteet Idea: maailmanlaajuisen verkon muodostaminen vaatii maailmaanlaajuisesti yksikäsitteiset tunnisteet Tim Berners-Leen alkuperäisen määritelmän mukaan URI tulee sanoista Universal Resource Identifier, joka muutettiin myöhemmin muotoon Uniform Resource Identifier. (Syy: Universal koettiin liian vahvaksi termiksi). URI on joko URL (Uniform Resource Locator) tai URN (Uniform Resource Name) Esimerkkejä URI-skeemoista: http, mailto, tel, ldap,... Esimerkkejä URI-tunnisteista: http://www.levylaari.fi, mailto:jukka.huhtamaki@tut.fi, tel:+358-3-555-1234 URI-skeemojen rekisteröinnistä vastaa IANA. URI-tunnisteita voidaan käyttää verkosta noudettavissa olevien resurssien lisäksi minkä tahansa yksilöintiin: ihmiset, valuutat, äänilevyt, aikavyöhykkeet, tietotyypit,... Tämä on keskeinen ajatus W3C:n Semanttisessa Webissä. 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 221

URI-tunnisteet: hyviä käytäntöjä Resurssilla pitäisi (SHOULD) olla tasan yksi tunniste: rinnakkaisia URI-aliaksia on syytä välttää Minkä tahansa URI-tunnisteen perusteella pitäisi koska tahansa voida noutaa resurssin representaatio: kokeile esimerkiksi ladata selaimeesi XHTML-nimiavaruuden yksilöivä URI http://www.w3.org/1999/xhtml Laiteriippumattomuus ([Device Independence]): resurssin representaation pitäisi olla noudettavissa saman URI:n perusteella päätelaitteesta riippumatta. - Voidaan toteuttaa esimerkiksi siten, että laite kuvaa ominaisuutensa pyynnön yhteydessä ja representaatio räätälöidään laitteen ominaisuuksien perusteella ([Content negotiaton]). - Saavutettavuus (Accessibility) voidaan toteuttaa samalla idealla: laitteen tuomien reunaehtojen lisäksi rajoitteita voi aiheutua esimerkiksi käyttäjästä tai käyttötilanteesta Viileät URI:t eivät muutu : älä siirtele resursseja paikasta toiseen. Parempi vaihtoehto on resurssien järkevä nimeäminen (versiointi). 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 222

Esimerkki: levylaari.fi on valinnut Laika and the Cosmonautsin levyn Absurdistan vuoden 1997 levyksi: Vuoden levyn URI: http://www.levylaari.fi/vuodenlevy Vuoden 1997 levyn URI: http://www.levylaari.fi/1997/vuodenlevy Levyn Absurdistan URI: http://www.levylaari.fi/levy/absurdistan Esimerkin URI-tunnisteet eivät ole aliaksia, koska kaikki URI:t yksilöivät eri resurssin. Esimerkin URI:t voi käytännössä ohjata samaan resurssiin HTTP-uudelleenohjauksen avulla. Esimerkki uudelleenohjauksen toteuttamisesta PHP-ohjelmointikielen avulla: <?php header( Location: http://www.levylaari.fi/levy/absurdistan );?> Uudelleenohjauksen voi toteuttaa myös HTML-kielen META-elementin tai vaikka JavaScriptin avulla, mutta tämä ei ole suositeltavaa. Arvaatko miksi? URI-tunnisteiden tulevaisuus on IRI (Internationalized Resource Identifier), joka mahdollistaa esimerkiksi skandinaavisten kirjainten (ja riimukirjoituksen) käytön resurssien tunnisteissa. Esimerkiksi Seinäjoen kaupungin kotisivujen tunniste voi siis tulevaisuudessa olla reilusti http://www.seinäjoki.fi. 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 223

Vuorovaikutus: protokollat Protokolla on keino viestien ([message]) välittämiseen asiakasohjelman ja palvelimen välillä. Protokolla määrittelee viestien sisällön kieliopin (syntaksi), viesteissä käytettyjen termien merkityksen (semantiikka) ja kiinnittää viestien vaihdon järjestyksen. Esimerkkejä WWW-protokollista: HTTP, SOAP, FTP, SMTP,... Yksityiskohta: W3C määrittelemän nyrkkisäännön mukaan protokollat säilyvät keskimäärin pitempään kuin niitä käyttävät sovellukset (Lähde: Architecture of the World Wide Web) tai esimerkiksi ohjelmointirajapinnat (API). Vinkki hajautettujen sovellusten kehittäjille? WWW:n arkkitehtuuri -suosituksen mukaan käyttäjän (protokollan avulla tekemät) toimenpiteet pitäisi voida jakaa turvallisiin ja turvattomiin: - Turvalliset toimenpiteet vastaavat luonteeltaan hakuja tai kyselyjä: käyttäjä ei esimerkiksi voi linkkiä seuratessaan tietämättään joutua sähköpostilistalle. - Turvattomat toimenpiteet vastaavat tilauksia. Turvattomia toimenpiteitä varten selaimiin voitaisiin toteuttaa erillinen käyttöliittymä. Toteutuuko jo WWW:ssä? 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 224

Representaatio: tiedostomuodot Representaatio: resurssin informaation tilaa esittävä tietoa ja metatieto Tiedostomuodot voidaan jakaa binäärisiin ja tekstipohjaisiin: - Binäärisiä: PNG, MPEG, PDF,... - Tekstipohjaisia: HTML, SMIL, CSS, RDF/XML,... Binääristen ja tekstipohjaisten tiedostomuotojen vertailua (yleistyksiä): - Tekstipohjaiset ovat riippumattomampia yksittäisestä sovelluksesta, laitteesta tai käyttöjärjestelmästä - Binäärimuotoinen tieto vaatii vähemmän tilaa: pienempi tiedostokoko - Tekstimuotoisen tiedon esittäminen vaatii enemmän suorituskykyä - Tekstipohjainen tieto on helpommin hyödynnettävissä tulevaisuudessa: uudelleenkäyttö HTML: WWW:n keskeisin tiedostomuoto, mahdollistaa hypertekstiverkon rakentamisen (linkit) ja yksittäisten solmujen sisäisen rakenteen esittämisen 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 225

Lopuksi Osa Architecture of World Wide Web -suosituksen ohjeista on suunnattu erityisesti protokollien tai tiedostomuotojen suunnittelijoille. Suuri osa tiedosta on kuitenkin hyödyllistä kaikille WWW-sovellusten ja -sivustojen tekijöille. Tutustumisen arvoinen dokumentti! Suositus tarjoaa jälleen kerran mahdollisuuden oppia toisten tekemistä virheistä: ainakin periaatteet ([Principles]) ja hyvät käytännöt ([Good practices]) on hyvä käydä läpi yleisten sudenkuoppien välttämiseksi. Mielenkiintoista: WWW on hypertekstijärjestelmä, jota ei oikeastaan koskaan ole määritelty kokonaisuutena arkkitehtuurin tasolla. Eikä itse asiassa vieläkään ole kyseessä on edelleen työversio. WWW:n pienin yhteinen tekijä on HTML-kielen, HTTP-protokollan URI-tunnisteiden yhdistelmä. Mikäli WWW-sovelluksen keskeinen toiminnallisuus on nojaa näiden lisäksi muihin tekniikoihin, käyttäjäryhmä selaimineen olisi syytä olla tiedossa. 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 226