Hvordan lage XML-baserte systemer

Original English version: http://xfront.com/how-to-create-XML-based-systems/

Roger L. Costello

Et implisitt grunnlag for XML-teknologiene er at data er en førsteklasses innbygger – de må ikke gjemmes bort i et skap, bak låste dører. Data skal være:

  • Synlig
  • Deklarativt uttrykt
  • Mobil
  • Bemerkelig for flere forskjellige bieffektfrie manipulasjoner

Eksempel: Vurdere legeregister: Jeg vil se legeopplysningene mine. (Synlig) Jeg vil lese dem. (Deklarativ) Jeg vil sende dem til en spesialist når behovet oppstår. (Mobil) Jeg vil at spesialisten og legen min skal behandle postene på sine egne måter. (Manipulerbare)

I en annen artikkel beskriver jeg statsløse kontra statlige funksjoner. I den artikkelen viser jeg at med en statsløs funksjon er resultatet alltid det samme når funksjonen får samme argument – ring en firkantrotfunksjon to ganger med argumentet 9, og resultatet blir 3 hver gang. I en tilstrekkelig funksjon kan resultatene være forskjellige – ring en bankuttak-funksjon to ganger med argumentet $ 25, og resultatet vil være forskjellig hver gang. Trekkfunksjonen holder oversikt over banksaldoen og reduserer den for hver samtale. Dermed beregner ikke-funksjonen bare et resultat, men endrer også en variabel. Det siste kalles en bivirkning. I artikkelen beskriver jeg hvordan du konverterer en statlig funksjon til en statløs funksjon: registrer brukerens banktransaksjoner i et XML-dokument og kaller den nye tilbaketrekningsfunksjonen med to argumenter – beløpet som skal tas ut og XML-dokumentet. Den nye tilbaketrekningsfunksjonen er bivirkningsfri. Å skrive programmer slik at funksjonene er uten virkninger uten side-effekt kalles funksjonell programmering.

I den første uttaksfunksjonen er ikke bankbalansedataene en førsteklasses innbygger – de er låst bak de lukkede dørene til programmeringskoden.

I den nye tilbaketrekningsfunksjonen settes dataene fri – et XML-dokument registrerer den opprinnelige saldoen og hver banktransaksjon. Systemet – bruker, tilbaketrekningsfunksjon og bankregistrering (XML-dokument) – innhenter alle kvalitetene som XML-samfunnet anser som gode: dataene er synlige, erklærende uttrykt, mobile og tilgjengelige for flere forskjellige bieffektfrie manipulasjoner.

Nå vet du hvordan du lager XML-baserte systemer.

Sist oppdatert: 29. februar 2020