Windows Communication Foundation forklart på tre minutter

Mens inspirasjonen etter MSDN Live fortsatt er på topp skal jeg raskt forklare hva Windows Communication Foundation er for noe.., og hva det vil bety for oss utviklere.

.NET versjon 3.0 består av fire påbygninger til .NET 2.0 rammeverket, og vil bli releaset sammen med Vista ca. november. .NET 3.0 vil også fungere fint på Windows XP og på 2003 server (det er nå på høy tid å oppgradere fra 2000). De fire påbygningene – hvor jeg vil forklare den siste nærmere – er:

  • Windows Cardspace
    Microsoft’s forslag til standardisering av online identitet. For mer informasjon om identitet, besøk Kim Cameron’s Identity Weblog.
  • Windows Workflow Foundation (WF)
    Arbeidsflytmotor innebygget i operativsystemet som i praksis vil gjøre at utviklere vil kode business logikk mere deklerativt enn tidligere, og mere adskilt fra øvrig kode.
  • Windows Presentation Foundation (WPF)
    En helt ny måte å designe/utvikle brukergrensesnitt på både for Windowsplattformen og for Web.
  • Windows Communication Foundation (WCF)
    En aldri så liten revolusjon i all koding av kommunikasjon mellom klient og tjeneste.
netfx

Bakgrunnen for WCF (tidligere kaldt Indigo) er at det å f.eks. lage en web service som støtter sikkerhet, reliable messaging og transaksjoner krever mange tusen linjer kode. Og ønsker du i tillegg at tjenesten skal kunne kommunisere over TCP, ja da må du kode en god del til.

WCF endrer dette til å bli ingen kodelinjer i det hele tatt, og ved bruk av kun konfigurasjonsfiler kan du sette opp om tjenesten skal kommunisere over SOAP, nyeste web service med WS-security, WS-reliability og WS-transactions, TCP, named pipe, MSMQ, med CORBA, en-veis eller to-veis eller noe helt annet.

Altså, når du i fremtiden skal lage en tjeneste så koder du IKKE en web service på gamlemåten. Det du gjør er rett og slett å dekorere metodene du ønsker å publisere med noen attributter – dette blir kontrakten. I konfigurasjonsfilen bestemmer du så hvilken binding du ønsker å benytte. Bindingen definerer hvilken protokoll, transportmetode (text, binært eller annet), sikkerhet osv. Og så er du ferdig.

På klientsiden så gjør du omtrent som du er vandt til fra ASMX web servicer – du genererer en klasse på bakgrunn av tjenesten.

Og så konfigurerer du opp binding på samme måte som på tjenestesiden. Dette er genialt – som utvikler kan du glemme alt som har med implementasjon av kommunikasjon, og du kan bytte protokoller, sikkerhet osv. on demand.

Jeg anbefaler at du nå sporensträks tar turen innom wcf.netfx3.com. Der kan du laste ned .NET 3.0 (anbefaler at du allerede har VS 2005, men ikke nødvendig) og masse kodeeksempler for WCF. Enjoy!

Kategorier: WCF.
RSS feed for kommentarene. Tilbaketråkk.

Én kommentar til “Windows Communication Foundation forklart på tre minutter”

  1. Jon Arild Says:

    Den skal du ha! Fin oppsumering.

    Sitter å leker meg i 3.0 nå og har satt meg godt til rette i stolen for å ta inn over meg dette paradigme skiftet. Ser frem til en alldrig så liten performance boost i det jeg tidligere har gjort av tjeneste basert kommunikasjon. Skal også bli gøy å leke seg i Windows Workflow Foundation fremover. Det er lyse tider i møte! :)

Skriv en kommentar

Tillatte tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


Einar W. Høst: Det er jo læringen som gjør det morsomt! Se også http://norvig.com/21-days...

Pagliacci: OBS! tl;wr. Det er vel akuratt det jeg sliter med med min læring innenfor pr...

Torbjørn: La oss anta to ulike definisjoner av Template Method pattern - de to ytterpunkte...

Lars-Petter: Hei igjen. Siden du inviterer til å ta diskusjonen i bloggen, og har tatt deg t...

Torbjørn: Lars-Petter: Det er én måte å se det på. Det er absolutt fortsatt Template M...

Lars-Petter: Hei. Har du ikke i prinsippet her gått over fra Template Method (arv) til Strat...

Christian Abildsø: I alle fall i C#, så føles dette som kode som blir mer fleksibel men vanskelig...

Torbjørn: Hei Henrik, og takk for tilbudet. Ble oppmerksom på Rasberry Pi for under en uk...

Henrik Sandaker Palm: Ang. større hobby prosjekt. Du er som er en slik rakker på programmering har j...

Øivind Nilsen: Slutt å bruke mobilnummeret mitt som eksempel !...

Mulig relaterte linker

    No related posts

 Hold deg oppdatert

Søk i bloggen

Ferske innlegg

  • En historie om programmering
  • Template Method del 4: Multippel arv
  • Template Method Intermesso
  • Template Method del 3: Bare funksjoner
  • Kategorier

  • .net ninja (37)
  • Bøker (17)
  • Diverse prosjekter (35)
  • DSL (10)
  • Erlang (10)
  • F# (5)
  • Hardware (1)
  • Jobb (77)
  • Julekalender (51)
  • kjempekjekt.com (23)
  • LISP/Clojure (33)
  • NNUG / community (60)
  • O/RM & databaser (10)
  • Off topic (116)
  • OO-design/clean code (30)
  • Podcasts (14)
  • Polyglot (77)
  • Ruby (27)
  • Silverlight / RIA (3)
  • Software/verktøy (20)
  • Softwareutvikling (21)
  • Testing / TDD (30)
  • the contiki strip (13)
  • User experience (3)
  • WCF (3)
  • Webutvikling (32)
  • WPF (9)
  • WTF (12)
  • Last ned Wallpaper

    Programmeringsbloggens tøffe skrivebordsbakgrunn med snippets fra ulike språk laster du ned her!

    Abonner via epost

    Om du vil kan du få alle nye blogposter tilsendt til din epost. Abonner nå, det er kjempeenkelt!

    Meta