Järjestelmäarkkitehtuuri (TK081702) AJAX, Asynchronous JavaScript And XML. AJAX, Asynchronous JavaScript And XML



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

WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys

WWW-Sivustojen suunnittelu. Miten WWW toimii. Suunnittelun lähtökohdat

WWW-Sivustojen suunnittelu


Järjestelmäarkkitehtuuri (TK081702) Avoimet web-rajapinnat

2 Web-lomakkeet. HTML-lomakkeet. Lomakkeiden perusteet

Digitaalisen median tekniikat. Luento 4: JavaScript

Internet-pohjaisen oppimisympäristön laadinta. Luento 3

Järjestelmäarkkitehtuuri (TK081702)

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


Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services

Digitaalisen median tekniikat Luento 1: Intro

Yksisivuisten web-sovellusten kehittäminen Angular 2 -sovelluskehyksellä

Käyttöliittymien uusi sukupolvi Logicalla Rondo-tuotteessa

Johdatus rakenteisiin dokumentteihin

Single-Page Application -arkkitehtuurin käyttö verrattuna perinteiseen web-sovellukseen. Aija Kaakinen

CT50A2601 Käyttöjärjestelmät Androidin ja Symbianin vertailu Seminaarityö

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

HTML5 tablet uutissovelluksen suunnittelu ja toteutus

Digitaalisen median tekniikat. Luento 3: CSS

2. PEHMEÄ XHTML XRAJAHTML

Ajax: WWW-sovellusten uudet mahdollisuudet

ISACA Finland OWASP The OWASP Foundation. Timo Meriläinen Antti Laulajainen.

Tikon Web-sovellukset

TRANSPRO OY:N KOULUTUSTEN HALLINTAJÄRJESTELMÄ

Neoxen Systems on suomalainen ohjelmistotalo. Olemme erikoistuneet tiedon- ja oppimisen hallinnan ratkaisuihin.

Tiedonsiirto- ja rajapintastandardit

DOM ja Ajax. Jaana Holvikivi Metropolia. J.Holvikivi

Web sovelluksen kehittäminen sähkönjakeluverkon suojareleisiin

XML prosessori. XML prosessointi. XML:n kirjoittaminen. Validoiva jäsennin. Tapahtumaohjattu käsittely. Tapahtumaohjattu käsittely.

MVVM-mallin toteutus KnockoutJS-kirjastoa käyttäen

Käyttäjäkokemuksen parantaminen websovelluksissa

JWT 2017 luento 10. to klo Aulikki Hyrskykari. PinniB Aulikki Hyrskykari

Tapio Timonen. METIH - Metlan Tutkimustiedon Integroitu Hallintajärjestelmä

Ajax-verkkosovellukset

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

Rikkaat Internet-sovellukset

W3C ja Web-teknologiat

PALJON PUHUTTU AJAX. Viestinnän koulutusohjelma Verkkoviestinnän suuntautumisvaihtoehto Opinnäytetyö Pilvi Rimmanen

Testausautomaation mahdollisuudet käyttöliittymän testauksessa. Anssi Pekkarinen

Laurea-ammattikorkeakoulu Laurea Leppävaara. Tehokkaan Ajax-pohjaisen tarjoustyökalun toteuttaminen

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

MODERNIT WEB-SOVELLUKSET. LAHDEN AMMATTIKORKEAKOULU Tekniikan ala Tietotekniikka Ohjelmistotekniikka Opinnäytetyö Syksy 2013 Joonas Teurokoski

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

MELTIH - Metlan Tutkimustiedon Integroitu Hallintajärjestelmä

Siirtoformaatit. Johdanto Sovellusalueet Vaatimukset Raita- ja oliomalli Reaaliaikainen tiedonsiirto Erilaiset siirtoformaatit Vertailu

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

Siirtoformaatit. Johdanto. Yleistä. Sovellusalueet. Eri formaatit. Käyttötarkoitukset

Web-sovelluksen toimintalogiikka palvelimelta käyttäjän selaimeen

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

IT ja viestintäteknologia

Helsingin Sanomat ipad

Tikon Web-sovellukset

JAVASCRIPT-KEHITYSKIRJASTOJEN VERTAILU

CSS - tyylit Seppo Räsänen

WWW-SOVELLUKSEN TOTEUTUS MVC-ARKKITEHTUURILLA

Laiteriippumaton UI Ajaxilla ja Javalla

Tyylien käyttö. <LINK href="mystyle.css" rel="stylesheet" type="text/css"> 5 WWW-hypermedian perusta: HTML

Kurssin hallinta -työväline

ESA BORG AJAX-HENKINEN SELAINKÄYTTÖLIITTYMÄ ASE-LAITOKSEN SÄÄASEMAAN. Kandidaatintyö

ANGULARJS WEB-SOVELLUSTEN KEHITYKSESSÄ

Paikkatiedot palveluväylässä

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

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

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

ARVO - verkkomateriaalien arviointiin

PELIOHJELMOINTI JAVASCRIPT-KIRJASTOLLA

INTERNETSELAIMEN ASETUKSET. Kuinka saan parhaan irti selaimesta

Järjestelmäarkkitehtuuri (TK081702) Lähtökohta. Integroinnin tavoitteet

MHP sovellusten synkronoituminen videokuvaan

Ajax selainpohjaisten sovellusten laatimisessa. Nico Hiort af Ornäs

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

13. Luento: Esimerkki: Symbianympäristö. Tommi Mikkonen,

Visma Fivaldi. Ohjeet Java web startin ja HTML5-työkalun aktivointiin

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA,

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

RIKKAAT INTERNETSOVELLUKSET

HENRI KUOKKANEN RESPONSIIVISEN WEB-KÄYTTÖLIITTYMÄN TOTEUTUS TUOTANNONOHJAUSJÄRJESTELMÄÄN

W3C ja alueellinen standardointi

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

VisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu

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

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

HTML5-SOVELLUSKEHITYS Case: Ilmavirtalaskuri

TOMI SYVÄJÄRVI SÄÄASEMAJÄRJESTELMÄN VIRTUAALIMALLI. Kandidaatintyö

MIKKO HAAPANEN AJAX-TEKNIIKOIDEN HYÖDYNTÄMINEN VAISALA ROSA -SÄÄASEMAN SELAINKÄYTTÖLIITTYMÄSSÄ

WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa

JS-kehitys - yleiskuvaus. TIEA255 - Juho Vepsäläinen

Sisältö. XML, XHTML ja CSS XML XML. XML:n ja HTML:n ero. XML kieliä XML XHTML CSS XSL. T Hypermediadokumentin laatiminen 2002

XML johdanto, uusimmat standardit ja kehitys

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

Harjoitustyö 3: Verkkosivujen toiminnallisuus (JavaScript)

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

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

ecome Markkinoiden kehittynein julkaisujärjestelmä

Dart. Ryhmä 38. Ville Tahvanainen. Juha Häkli

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

HTML5 sovellusalustana

Transkriptio:

Järjestelmäarkkitehtuuri (TK081702) Ajax 2000-luvun alkuvuosina selainsotien rauhoituttua ohjelmistotalot alkoivat kehittää selainten luoman uuden ohjelmointiympäristön käyttötapoja. Syntyi AJAX (Asynchronous Javascript And XML) eli kokoelma ohjelmointimenetelmiä, joilla tehostettiin tiedonsiirtoa selaimen ja palvelimen välillä ottaen huomioon selaimessa tapahtuvan paikallisen vuorovaikutteisen käsittelyn tarpeet. AJAX on saavuttanut laajan suosion, mutta tarkkaan määriteltyä AJAX-standardia ei vieläkään ole. Jokainen AJAX-kehityspakettien kymmenistä toimittajista on koodannut oman tuotteensa omalla tavallaan. Erot eivät ole suuria, mutta niitä on riittävästi, jotta ne estävät AJAX-pakettien ristiintoimivuuden. 1

Ristiintoimivuudella on merkitystä sovelluskehittäjälle, jonka on vaikea vaihtaa kehitysvälineitään. Kehityspakettien erilaiset vahvuudet ja heikkoudet voivat tehdä valinnasta vaikean. Korostuu etenkin monitoimittajaympäristöissä, joiden palvelimissa ajetaan useiden eri sovellusvalmistajien sovelluksia. Käyttäjän kannalta ei suurtakaan merkitystä, koska AJAXilla tehdyt sovellukset kyllä toimivat uusimmilla selainversioilla moitteettomasti. Itse asiassa pitäytymällä AJAXissa sovelluskehittäjä vapautuu monista selainriippuvuuksista, jotka aiheuttaisivat muuten ongelmia. AJAXin kohdallakin on tapahtumassa selvää standardoitumista. Open AJAX Alliance (www.openajax.org) on AJAXin käyttöä edistävä valmistajien yhteenliittymä, johon kuuluvat (lähes) kaikki merkittävät. 2

Konsortion tavoitteena ei ole määritellä tai standardoida mitään tiettyä kehityspakettia. Kiinnostus AJAX tekniikkaan on herännyt myös yhä useammassa loppukäyttäjä-yrityksessä. AJAX on tapa ohjelmoida AJAX ei ole uusi ohjelmointikieli AJAX on uusi tapa hyödyntää olemassa olevia standardeja AJAX perustuu JavaScriptiin ja HTTP-pyyntöihin AJAX mahdollistaa suoran yhteyden palvelimelle, XMLHttpRequest AJAX-teknologia yhdistää seuraavat olemassa olevat Web-tekniikat: HTML-kieli ja CSS-tyylit: tiedon esittäminen selaimessa, Document Object Model (DOM): näkymän muokkaaminen dynaamisesti selaimessa. 3

AJAX-teknologia yhdistää seuraavat olemassa olevat Web-tekniikat: XML-kieli ja XMLHttpRequest-rajapinta: tiedon välittäminen selaimen ja palvelimen välillä JavaScript (tai ECMAScript): toimintalogiikan toteuttaminen selaimeen. AJAX on selainpään tekniikkaa, joka riippumaton web-palvelimen toteutuksesta AJAX perustuu web-standardeille JavaScript XML HTML CSS Standardit ovat olleet käytössä vuosia AJAX mahdollistaa perinteisiä web-sovelluksia monipuolisempien ja käyttäjäystävällisempien sovellusten toteuttamisen Perinteisesti tiedon saamiseen palvelimelta käytetään GET/POST. Käyttäjän tulee valita Submit Odotetaan palvelimen vastauksena uuden tulokset sisältävän sivun latautumista 4

Kokosivun latautumisen myötä perinteiset web-sovellukset ovat hitaita ja eivät ole käyttäjäystävällisiä. AJAX toteutuksissa JavaScript muodostaa yhteyden suoraan palvelimelle JavaScriptin XMLHttpRequest-olion avulla. XMLHttpRequest-olio mahdollistaa tiedon siirtämisen selaimen ja palvelimen välillä lähettämättä sivua uudelleen Web-sivun käyttäjä ei havaitse taustalla tapahtuvaa tiedon vaihtoa selaimen ja palvelimen välillä. Samalla mahdollistuu sivun päivittäminen sivun lataamisen jälkeen. 5