Introductie.NET Framework 3.0 A N D R É O B E LIN K, M C S D, M V P
About me Technical Manager / lead developer Actief in de Visual Basic en.net community www.vbcentral.nl, VP Speakers Bureau INETA Europe Microsoft MVP voor Visual Basic sinds 2006 Auteur van artikelen in zowel nationale - als internationale magazines en het boek Visual Basic 2005 de Basis
Trends in softwareontwikkeling Beleving - en userinterface wijzigt Business Process Modeling Inloggen op applicaties (digital identity management) Service Oriented Development (SOA)
Microsoft.NET Framework Het.NET Framework 3.0 is het platform voor de applicaties van morgen.
Windows CardSpace - WCS Technologie om het online inloggen te versimpelen en te verbeteren Claims over je identiteit Wie ben jij? Echt waar? Kun je dat bewijzen? Codenaam: InfoCard
Windows CardSpace - WCS Private desktop gescheiden user context beveiliging hacken Self-issued cards Niet bevestigd Lokaal opgeslagen Managed Cards Bevestigd opgeslagen op STS
Identity metasystem Identity metasystem is een collectie van protocollen gebaseerd op WS-* het is geen product Metasystem onderscheidt een drietal rollen Identity providers Relying parties (websites of services) Subjects (meestal een gebruiker)
WCS Betrokken partijen Gebruiker WS-* Web Services Relying partij Identity Provider
Windows Presentation Foundation - WPF Unified framework for building next gen user experiences with UI, media and documents Codenaam: Avalon
WPF Stand van zaken op dit moment Het huidige grafische platform voor Windows applicaties is 20 jaar oud de gebruiker verwacht en eist meer op het gebied van gebruikersinterface en algehele kwaliteit Grafische hardware ontwikkelt zich zeer snel de performance neemt toe, prijs/kwaliteitverhouding goed Fabrikanten videokaarten voornamelijk gefocust op 3D
Wat is Windows Presentation Foundation? Hardware geaccelereerde media en presentatie engine, gebouwd op DirectX versie 10 Het biedt een algemeen framework voor zowel Windows als Web applicaties (common codebase) Nieuw en declaratief programmeermodel Vervanger van GDI en GDI+ Maakt het mogelijk om grafische ontwerpers binnen het proces van softwareontwikkeling te betrekken
Windows Presentation Foundation - XAML extensible Application Markup Language Declaratieve taal met een XML syntax Hierarchie van CLR objecten en eigenschappen Zei je ksemmul? C# Button b1 = new Button(); b1.content = "OK"; b1.background = new SolidColorBrush(Colors.LightBlue); b1.width = 100; XAML <Button Width="100"> OK <Button.Background> LightBlue </Button.Background> </Button> VB.NET Dim b1 As New Button b1.content = "OK" b1.background = New _ SolidColorBrush(Colors.LightBlue) b1.width = 100
WPF/Everywhere (WPF/E) Silverlight Subset van WPF gefocust op interactieve content Optimale integratie met het web meer dan alleen x-browser en x-platform gebruikt JavaScript en C# of VB.NET WPF/E /Silverlight host zelf een.net runtime specifieke browser plugin zit geëmbed in HTML de plugin laadt de externe package met IL en XAML Natuurlijk. XAML is de technologie die dit mogelijk maakt.
Windows Presentation Foundation Spiegeling here, spiegeling there spiegeling everywhere!
Windows Presentation Foundation - Tools Designers ontwerpen XAML zorgt ervoor dat ontwerpers èn ontwikkelaars kunnen samenwerken aan één project. Developers voegen business logic toe
Windows Communication Foundation - WCF Unified framework for rapidly building interopable service-oriented applications on the Windows platform.. Codenaam: Indigo
WCF Gecombineerde technologieën Algemeen framework omvat bestaande technologieën ASMX.NET Remoting Enterprise Services WSE MSMQ WCF Interopable webservices X X ASMX.NET -.NET Communicatie met andere platformen Ondersteuning Enterprise Services WSE System.Messaging WS-* specificaties X X Programmeren op basis van transacties WS-* protocols Remoting Communicatie X X Transparante locatie Gedistribueerde transacties etc. X X Queued Queued messaging Messaging X X
WPF Client en Service Client Service C B Endpoint A Message Endpoint Endpoint A Endpoint B C A Adress Waar? B Binding Hoe? C Contract Wat?
WCF Address, Binding en Contract Address Gebaseerd op een URI http://www.obelink.com/mijnservice net.tcp://obelink_win2003_server/mijnservice Meerdere endpoints Binding http://www.obelink.com/mijnservice1 http://www.obelink.com/mijnservice2 Geeft aan hoe endpoint te benaderen is Bindings kunnen worden geconfigureerd Contract Beschrijft de interface van de service (welke methods, argumenten,..) Wordt expliciet gedefinieerd Zijn beschikbaar middels WSDL en XSD
Windows Communication Foundation
Windows Workflow Foundation - WF The programming model, engine en tools for building workflow enabled applications on the Windows platform.
Wat is een workflow? Een workflow is een programma opgebouwd uit uite een set van activities Coördineert zowel mensen als software Heeft een real-world workflow Draait een langere tijd en is transparant Staat dynamische veranderingen toe..zoals een flowchart of een state diagram
Real-world vragen Orders worden binnen 48 uur bevestigd en binnen 30 dagen verstuurd De meeste leveranciers bevestigen de order, maar sommigen ook niet. Daar moeten we zelf nog achteraan Wat is de status van de order en wat is de volgende stap?
Meerwaarde Windows Workflow Foundation Orders worden binnen 48 uur bevestigd en binnen 30 dagen verstuurd De meeste leveranciers bevestigen de order, maar sommigen ook niet. Daar moeten we zelf nog achteraan Wat is de status van de order en wat is de volgende stap? Long Running & Stateful Workflows kunnen 30 dagen draaien en men moet ten alle tijden de status weten Require Flexible Control Flow Flexibiliteit om stappen over te slaan of aan zelf anders in te vullen. Must Provide Transparency Mogelijkheid om de volgende stap als workflow te tekenen.
Architectuur Windows Workflow Foundation
Basisprincipe Windows Workflow Foundation Een workflow is een class Imports System.Workflow.Activities Public Class MyWorkflow Inherits SequentialWorkflow End Class Een workflow kan worden vastgelegd met markup <?Mapping XmlNamespace="Activities" ClrNamespace="System.Workflow.Activities" Assembly="System.Workflow.Activities"?> XOML.. <SequentialWorkflow x:class="myworkflow" xmlns="activities" xmlns:x="definition"> </SequentialWorkflow>
Windows Workflow Foundation - Activities Activities zijn de bouwstenen van workflows Een eventueel herbruikbaar stuk code dat uitgevoerd wordt Basic activities zijn stappen binnen de workflow Composite activities bevatten andere activities, bijvoorbeeld Sequence De Base Activity Library zijn out-of-the-box/standaard activities Derden kunnen zogenaamde custom activities ontwikkelen, bijvoorbeeld BestellingAfgerond Activities zijn classes Properties en events worden vastgelegd door de ontwikkelaar en zijn programmeerbaar vanuit workflows Activitities kennen methoden die ook geprogrammeerd zijn door de ontwikkelaar maar worden aangeroepen door de workflow runtime of designer, bijvoorbeeld Execute. Kunnen worden gecomipled in workflow assemblies of worden gedeployed als herbruikbare assemblies
Windows Workflow Foundation
Vragen? HTTP://WWW. NETFX 3. COM 2 0 0 7 A N D R É O B E L I N K W W W. O B E L I N K. C O M
.NET Framework 2.0 VS2005 Visual Basic 2005 C# C++ J# Delphi Common Language Specification (CLS) XML Webservices Web Forms Windows Forms ASP.NET Gegevens en XML Framework Class Library (FCL/BCL) Common Language Runtime (CLR) Visual Studio 2005 ( + Orcas ) Besturingssysteem