Presentation is loading. Please wait.

Presentation is loading. Please wait.

Jeremy Boyd - Intergen MSDN Regional Director WinFX Managed APIs for Windows.

Similar presentations


Presentation on theme: "Jeremy Boyd - Intergen MSDN Regional Director WinFX Managed APIs for Windows."— Presentation transcript:

1 Jeremy Boyd - Intergen MSDN Regional Director jeremyb@intergen.co.nz WinFX Managed APIs for Windows

2 Windows Platform

3 Agenda Quick tour through WinFX: Windows Presentation Foundation Windows Workflow Foundation Windows Communication Foundation

4 Enabling the User Experience for Developers Windows Presentation Foundation

5 Presentation Challenges How do I improve productivity and usability? How can software exploit available hardware and form factors? How do I differentiate my software from my competition? How can my software reach the broadest possible audience? How can developers and designers collaborate?

6 Windows Presentation Foundation Unified approach to UI, Documents, and Media Integration as part of development and experience Integrated, vector-based composition engine Utilizing the power of the PC throughout the graphics stack Declarative programming Bringing designers directly into application development Ease of deployment Allowing administrators to deploy and manage applications securely

7 Microsoft Presentation Technologies UX Richness Developer Productivity ASP.NET 2.0 (HTML) Windows Forms 2.0 Win32 Direct 3D v9 Availability: 20052006 ASP.NET “Atlas” Approachable Direct 3D v10 Richness Windows Presentation Foundation Optimized Richness & Approachable

8 XAML Extensible Application Markup Language Build applications in simple declarative statements Can be used for any CLR object hierarchy Code and content are separate Streamline collaboration between designers and developers Easy for tools to consume and generate Button b1 = new Button(); b1.Content = "OK"; b1.Background = new SolidColorBrush(Colors.LightBlue); b1.Width = new Length(100); OK HorizontalGradient White LtBlue Dim b1 As New Button b1.Content = "OK" b1.Background = New SolidColorBrush(Colors.LightBlue) b1.Width = New Length(100)

9 XAML in context of WPF WPF: Rich Control Library Border, BulletDecorator, Button, Canvas, CheckBox, ComboBox, ContextMenu, Control, DockPanel, DocumentViewer, Expander, FlowDocumentPageViewer, FlowDocumentReader, FlowDocumentScrollViewer, Frame, Grid, GridSplitter, GridView, GroupBox, Image, Label, ListView, ListBox, Menu, Panel, PasswordBox, Popup, Tooltip, etc etc…. Panels Styles and Resources Animations, Triggers, Storyboards, Timelines Bindings

10 Windows Presentation Foundation

11 Enabling Workflow in Applications Windows Workflow Foundation

12 What is a Workflow? “A set of activities… that co-ordinate people or and/or software… in to some kind of process or flow” Examples: Flowchart, State Diagram

13 Software Challenges Long Running “Orders are shipped over 30 days” Flexible Flow Control “This must be approved – NOW!” Transparency into running state “What's going on with this process??” Transactional “Its all, or nothing..”

14 Traditional Implementation

15 Windows Workflow Implementation

16 Workflow Solutions with WF Supports long running transactions Allows flexible flow control Allows monitoring Allows transactional boundaries Allows unification of business analyst, developer and end user view

17 Opportunities with Workflow Business Applications – LOB / B2B IT Management Information Worker Process System Workflow Human Workflow Participants: people, roles Flow style: flexible, dynamic Data: unstructured, documents Participants: apps, services Flow style: prescriptive, protocols Data: structured, transactional

18 Workflow Basics Workflows are sets of activities Workflows are hosted in a process Workflows are executed in the WF runtime Workflows can be persisted

19 Windows Workflow Foundation My Workflow built using Visual Designer Hosting Process Windows Workflow Foundation Base Activity Library Windows Workflow Runtime Workflow Services

20 Workflow Basics using System.Workflow.Activities; public class MyWorkflow : SequentialWorkflow { /// code here /// code here} </SequentialWorkflow> Workflow is a Class: Workflow can also be defined in markup (XOML):

21 Windows Workflow Foundation

22 The unified framework for building Service-Oriented applications. Windows Communication Foundation

23 Service-Oriented Tenets Services and consumers are independently versioned, deployed and operated. Services are autonomous Data never includes behavior Share schema & contract, not class Requirements of service declared independent of contract – e.g. Security Compatibility based on policy Service and Consumer are separated by an explicit façade. Boundaries are Explicit

24 Endpoints Endpoint Client Service

25 Client Service A BC Address Where? Contract What? Binding How? CBACBACBA Address, Binding, Contract

26 Client Service A BC CBACBACBA Client: ChannelFactory factory = new ChannelFactory (); C service = factory.CreateChannel(); service.Operation(); Service: ServiceHost host = new ServiceHost( typeof( ServiceType), baseUri ); host.Open(); Creating and Consuming

27 Contract and Service Definition [ServiceContract] public interface IHello { [OperationContract] string Hello(string name); [OperationContract] MyMessageOut DoIt(MyMessageIn m); } public class HelloService : IHello { public string Hello(string name) { return “Hello, ” + name; } public MyMessageOut DoIt(MyMessageIn m) { return new MyMessageOut(); }

28 Service Configuration App.Config: <service type=“HelloService" <endpoint address=“http://localhost/HelloService" binding=“basicHttpBinding" contract="IHello" />

29 Standard / Specification Support

30 Windows Communication Foundation

31 Summary Windows Presentation Foundation gives us the opportunity to build a great user experience Windows Workflow Foundation gives us the opportunity to model effective business process Windows Communication Foundation gives us the opportunity to build service-oriented systems WinFX is beta, but with a go-live licence – get it now! WinFX is beta, but with a go-live licence – get it now!

32 Binding Features EncodingTransportSecurity Reliable Messaging Transactions

33 Which Binding Do I Use? BasicHttpBinding WsHttpBinding Interop? What Level? Duplex? WsDualHttpBinding NetNamed PipeBinding NetMsmqBinding NetPeerTcpBinding NetTcpBinding No Basic No Yes Local? Need Queues? Peer to Peer? No Yes WS-* Yes


Download ppt "Jeremy Boyd - Intergen MSDN Regional Director WinFX Managed APIs for Windows."

Similar presentations


Ads by Google