Most recent comments
2021 in Books -- a Miscellany
Are, 2 years, 2 months
Moldejazz 2018
Camilla, 4 years, 8 months
Romjulen 2018
Camilla, 5 years, 2 months
Liveblogg nyttårsaften 2017
Tor, 6 years, 2 months
Liveblogg nyttårsaften 2016
Are, 7 years, 2 months
Bekjempelse av skadedyr II
Camilla, 2 months
Kort hår
Tor, 3 years, 2 months
Ravelry
Camilla, 2 years, 9 months
Melody Gardot
Camilla, 4 years, 8 months
Den årlige påske-kommentaren
Tor, 4 years, 11 months
50 book challenge
Camilla, 2 months, 3 weeks
Controls
Register
Archive
+ 2004
+ 2005
+ 2006
+ 2007
+ 2008
+ 2009
+ 2010
+ 2011
+ 2012
+ 2013
+ 2014
+ 2015
+ 2016
+ 2017
+ 2018
+ 2019
+ 2020
+ 2021
+ 2022
+ 2023

Ajax

Her en dag oppdaget jeg at Calcuttagutta nå benytter seg av Ajax. Det er litt spesielt, tenker du kanskje nå, at vi benytter oss av noe uten at hovedutvikleren er oppmerksom på det, men slik er det altså. For å forklare nærmere vil jeg begynne med å sakse fra artikkelen som først introduserte uttrykket Ajax i 2005:
Ajax isn’t a technology. It’s really several technologies, each flourishing in its own right, coming together in powerful new ways. Ajax incorporates:
  • standards-based presentation using XHTML and CSS
  • dynamic display and interaction using the Document Object Model
  • data interchange and manipulation using XML and XSLT
  • asynchronous data retrieval using XMLHttpRequest
  • and JavaScript binding everything together.
Ajax: A New Approach to Web Applications


Skarpe lesere har sikkert allerede innsett at de delene av Calcuttagutta som benytter Ajax er de delene som tillater at du gjør et eller annet uten å oppdatere hele siden, altså javascript-like og javascript-lynforum. Det dreier seg altså om å benytte javascript og xml til å snakke med serveren uten å laste hele siden på nytt.

Det som skjer når man laster en side i en nettleser, er at nettleseren sender en http-spørring (jeg er i norske-ord-humør i dag) til tjeneren, som så sender en nettside tilbake. Det som skjer når man bruker Ajax er akkurat det samme, bare i mindre skala. For eksempel, når man skriver en beskjed i lynforumet og trykker «Legg til» er det en javascriptfunksjon som pakker det du har skrevet inn i en http-spørring, og sender denne til tjeneren. Tjeneren tenker seg så litt om, legger til posten i databasen hvis alt stemmer, og så sender den tilbake html-koden for å vise de siste lynforumpostene. Når denne koden kommer frem er den samme javascript-funksjonen på plass igjen. Den tar imot koden, og putter den inn på riktig sted i dokument-objekt-modellen slik at det oppdaterte lynforumet erstatter det gamle. Nysgjerrige lesere kan ta en kikk på funksjonen fancyPantsFlashForum i filen common.js, som er linket fra kildekoden.

Å gjøre ting på denne måten kalles altså, som jeg oppdaget etter at jeg hadde implementert det, Ajax, og det var tydeligvis all the rage i 2005. Det er vel forsåvidt ganske hipt fortsatt, det gir i alle fall ofte mye mer mening å laste bare deler av siden på nytt, i stedet for hele. Kandidater jeg vurderer for Ajaxifisering, organisert etter stigende faenskap, er:
  • Epostvarsling og favoritter
  • Legge til og fjerne nøkkelord på en artikkel
  • Poste kommentarer
  • Mer elegant forhåndsvisning og lagring av artikler
  • Opplasting av bilder
  • Google-aktig instantant søk basert på et søketre

Kommentarer mottas som vanlig med takk, men jeg holder ikke pusten.

-Tor Nordam
Are likes this

Comments

Camilla,  31.01.11 23:41

Ajax var forøvrig en gresk helt.

Matteus,  01.02.11 09:54

Jeg hadde tenkt å kommentere, men de tar for lang tid å laste artikkelen på nytt, så jeg lar være.
Tor,  01.02.11 09:57

Ja, det kan ikke være greit.

Jørgen,  01.02.11 12:22

Et lite sekund der trodde jeg at verden var snudd på hodet, siden Ajax også er en nederlandsk fotballklubb.
Category
Technology
Tags
calcuttagutta
utvikling
javascript
Ajax
Views
5234
Last edited by
Tor, 31.01.11 23:41