|
Introduction to WPF
This session took place on the first day of actual break-out sessions. It showed a preview of what WPF looks like and what you can do with it. I was surprised by the spin they were trying to put on WPF, however. The presenter wasn't marketing the WPF as a new paradigm of UI development that comes with Windows Vista and Windows XP for the creation of compelling Windows apps. He basically said that you could "flip a switch" and be able to run a WPF app in a Web Browser or as a Windows App. This really dissappointed me, because there's a truckload of minutae involved in doing something like that, and you have to be concerned with back-end development, location, and accessibility, as well as simple concerns like code-behind code, and you can't do that simultaneous web/WPF deployment situation unless the client is running the WPF runtime and IE7 - which means they probably need Vista itself. Other than that, the only thing that I found about this session that wasn't "old news" to me was the printing support, and how you can use XAML documents to persist their contents to an Open Packaging Standard zip-style file that contains data that conforms to XPS (XML Paper Specification).
Building State Machine Workflow Applications with WWF
This was an awesome session. Instead of loading us down with a bunch of redundant "how to" type information, the presenter spent a little bit of time on the mechanics of creating WWF applications, and then spent the rest of the talk covering patterns. Implementations of the hierarchical state composition was an awesome alternative to the 'communicating states' state machine pattern where you can create a parent state that contains a bunch of states that can respond to their own independent events as well as events shared by the parent state. The example used was an order that could exit 2 different states by being sent the 'order cancelled' event. The presenter also covered the Skip and Rework pattern and Dynamic Change patterns where you can actually add states and state transitions to the state machine workflow at runtime. Fantastic. This is the stuff I've been waiting to see. The first day was a wash, but day 2 of the breakouts is turning out quite nicely.
Building Reliable and Transacted Services in WCF
This one definitely wins the coolest demo of the day award. Shy Cohen set up a system where he had a service that published a sequence of face moves to solve a Rubik's cube puzzle via callbacks. There was an intermediary service that simulated packet loss over a congested network. Finally, there was a WPF application that displayed a rotating 3d model of a Rubik's cube. He kicked the solution service on , and the Rubik's cube started spinning and twisting, solving itself according to the sequence of instructions. The key point here was that using reliable sessions - you can be assured that the message being sent will be delivered, and it will be delivered in the right order. He also demonstrated simple transacted services and reliable services using MSMQ. The big take-away from this is the unified model : your code looks the same whether you're working against an MSMQ reliable service or whether you're working against an IPC service or an HTTP service. WCF rocks.
More to come as the day goes on. I'm headed to the WCF P2P session later today, so there should be some more good information to be had.