310 likes | 440 Views
WinFx – Avalon & Indigo. Stephen Turner Software Design Engineer Microsoft UK sturner@microsoft.com. The WinFX Vision. Enable developers to take advantage of new technologies and hardware advances Increase developer productivity Improve application security, deployment and manageability
E N D
WinFx – Avalon & Indigo Stephen Turner Software Design Engineer Microsoft UK sturner@microsoft.com
The WinFX Vision • Enable developers to take advantage of new technologies and hardware advances • Increase developer productivity • Improve application security, deployment and manageability • Leverage existing developer skills • Enabled by a new programming model, WinFX™ • Built on the .NET Framework • Easily extend Win32 applications
TM Windows “Longhorn” Developer ArchitectureAs Announced at PDC 2003 Presentation Data Communication Base Operating System Services
“This is a pragmatic [step], and overall it will let enterprises and developers do better planning.” David Smith, Vice President, Gartner Longhorn Update: One Year On • Customer feedback based on PDC 2003 and WinHEC 2004 • Improved clarity on timeline • “Downlevel” operating system support • Updated plans • Longhorn client shipping in 2006 • Avalon & Indigo technology planned for Windows XP & Windows Server 2003 • WinFS technology to ship post Longhorn • Planned for beta around Longhorn ship date • Better alignment of client and server
Beta Beta Beta Developer Roadmap 2007 2006 2005
Avalon Vision • 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
Integrated Vector-based Graphics and Composition • Modern graphics capabilities • 2D and 3D graphics • Image effects and codec • Hardware accelerated sub-pixel ClearType • Video and audio • Revolutionizing the Graphics and Media pipeline • Across the display, audio, printing, and remoting sub-systems • Direct3D-based hardware acceleration throughout the rendering pipeline • Anticipates future hardware technologies • Resolution independence • Double floating point precision • Deeper color pipeline Enabling high-quality, cinematic experiences
Avalon Application Model Document Model Graphics Model Tools and Languages Element Services Media Integration Layer Composition and Rendering DirectX .NET Framework Unified Approach to UI, Documents, and MediaIntegration: The Guiding Vision • Application Model • Composable component architecture • Layout engine • Two-way transformable data binding • Rich visual styling and theming • Browser hosting • Graphics Model • 2D & 3D Graphics • Imaging • Text • Video and audio • Animation • Document Model • Fixed, flow and adaptive layouts • Advanced typography • Container services • Rights management
Markup for Windows 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 Width="100"> OK <Button.Background> LightBlue </Button.Background> </Button> Button b1 = new Button(); b1.Content = "OK"; b1.Background = new SolidColorBrush(Colors.LightBlue); b1.Width = 100; Dim b1 As New Button b1.Content = "OK" b1.Background = New _ SolidColorBrush(Colors.LightBlue) b1.Width = 100
Avalon 1.0 Target Scenarios • Avalon is the future of Windows presentation technology • Other technologies are often still better choices today • Recommended Avalon 1.0 usage • Web sites that want to push the limits of user experiences • Windows applications with complex data visualization scenarios • Windows Forms is still the best solution for mainstream rich client Windows applications • DirectX is still the platform for extremely intensive graphics (games, CAD applications) • ASP.NET is the reach solution for server-based platform-agnostic applications
Avalon November CTP Themes • First release for Windows XP and Windows Server 2003 • Based on Whidbey Beta 1 • Tablet PC support • Layout and control changes • ToggleButton, TabControl, ViewBox • Storyboards • 3D drawing enhancements • AdvancedMaterial • Continued refinements • Performance • Globalization • Object model modifications • Media and printing are not enabled in this release • Expect ongoing changes between now and Beta 1 More details at: http://msdn.microsoft.com/longhorn (“What’s New in Nov CTP” article)
Avalon Self-Guided Tour • Controls • Components and Controls • Control Styling • Panels • Introduction to Panels • Shapes and 3D graphics • Lines, Curves, and Shapes • Create a 3-D Scene • Container • Create a New Container • Create a New Stream in the Container • Documents • Create Adaptive-flow-format Documents • Set Typographic Properties • Data Binding • Data Binding http://winfx.msdn.microsoft.com/
From Objects to Services Service Orientation (Today) Interface-based Dynamic Loading Runtime Metadata Components (1990s) Message-based Schema+Contract Binding via Policy Class-based Polymorphism Encapsulation Object Orientation (1980s)
The Four Tenets of SO Developers opt-in to consuming, exposing, and defining public-facing service façade. Boundaries are explicit Services and consumers are independently versioned, deployed, operated, and secured. Services are autonomous Data never includes behavior; Objects with data and behavior are a local phenomenon. Share schema & contract, not class Compatibility based on policy Capabilities and requirements represented by a unique public name; Used to establish service suitability.
“Indigo” • Unifies today’s distributed technology stacks • Composable functionality • Appropriate for use on-machine, cross machine, and cross Internet The unified framework for building service-oriented applications on the Windows platform • Cross-platform interoperability • Integration across Microsoft products • Interoperability with today’s distributed stacks • Service-oriented programming model • Supports all features required by SOAs • Maximized productivity for building SOAs
Distributed Stacks Today ServicesInteroperableASP.NET Infrastructure ComponentsTransactionsCOM+ Infrastructure Objects Extensible CLR Infrastructure QueuingReliable MsgMSMQ Infrastructure • Each stack has different strengths, target scenarios • Customers want to mix and match, compose • Reliable services • Interoperable transactions
The Union of Today’s Stacks Message- Oriented Programming Attribute- Based Programming WS-* Protocols Composability Extensibility SOA Interop
CLR Type Integration Behavior CLR Type Integration Behavior Error Handling Behavior TCP Transport Channel HTTP Transport Channel TCP Transport Channel UDP Transport Channel Queue Transport Channel HTTP Transport Channel UDP Transport Channel Throttling Behavior Transaction Behavior Instancing Behavior Instancing Behavior Custom Behavior Metadata Behavior Custom Behavior Custom Channel Security Channel Security Channel Custom Channel Full Duplex Channel Reliable Messaging Channel Reliable Messaging Channel Concurrency Behavior Cross-Proc Transport Channel Composability in Action Service Model Layer Messaging Layer Behaviors Channels
[TcpTransport] [CustomTransport] [ServiceContract(SecureChannel=true, SecurityMode ="Windows")] [ServiceSettings(InstanceMode=InstanceMode.PerCall)] class MyService { [CustomBehavior] [ServiceOperation(TransactionFlowAllowed = true)] void DoSomething(string argument) { // Do something transacted here } } Feature Overview Programming Model
Cross-Platform Interop ReliabilityWS-Reliable Messaging TransactionsWS-AtomicTransaction WS-Coordination SecurityWS-Security WS-Trust WS-Federation Metadata WSDL, WS-Policy, WS-Discovery Messaging SOAP, WS-Addressing, WS-Eventing XML XML, XSD, XPath Transports HTTP, TCP
WinFX Requirements & Distribution • System Requirements • Windows XP SP2, Windows Server 2003 or higher • Pentium-class 1GHz CPU (minimum) • At least 256MB RAM • DirectX 9 hardware accelerated graphics (preferred) • Distribution Strategy • Available via Windows Update • Working on pre-install arrangements w/ major OEMs (currently 60% shipping .NET Framework) • Included with Windows “Longhorn” • Fully Redistributable
Call to Action • Prepare today’s applications for platform advances • Get on the path to WinFX by installing .NET Framework 2.0 • Make use of web services • Install Avalon from MSDN Subscriber Downloads • Use self-guided tours • Find samples: WinFX SDK, blogs, Longhorn Dev Center • Newsgroups: microsoft.public.developer.winfx.* • Evaluate scenarios for WinFX usage • Distributed applications with advanced web service needs • Web sites that want to push the limits of user experiences • Windows applications with complex data visualization scenarios