![]() |
|
Published 2008-03-27 Printer-friendly version
I'm just back from Microsoft Canada's Heroes happen {here} event in Winnipeg. I took in the developer session (presented by Microsoft's Jean-Luc David), which mainly dealt with Visual Studio 2008. Overall it was a good presentation, although as is the case with these kinds of events you seldom get to see code in much detail, and everything goes by in a blur. Rather than give you a blow by blow report, I'll focus on the things that stuck in my mind.
LINQ got a fair bit of coverage. LINQ stands for Language INtegrated Query, and is another fascinating product to come out of the C# team headed up by Anders Hejlsberg, the man largely responsible for Turbo Pascal and Delphi. (Some say there's a Clarion connection to Hejlsberg - certainly there's one via Niels Jensen, one of the founders of Borland who later left to form JPI, which merged with Clarion to become TopSpeed Corporation.)
LINQ is pretty cool stuff, and I expect it will become the standard .NET query language before too long. The big deal with LINQ is you can use it to query a lot of different kinds of data. You can query SQL, of course, but you can also use it with XML and all kinds of lists and collections. Just as you have ADO.NET providers (think drivers), so you have LINQ providers for databases such as Oracle, PostgreSQL, and MySQL. But don't get hung up on just databases. How about querying Amazon, or Flickr?
I've been tracking LINQ for a while, but I'm less familiar with Windows Presentation Foundation (WPF). There are any number of ways to create user interface elements in .NET, and WPF (formerly Avalon) aims to be the "one ring to rule them all." WPF produces vector-based graphics, not raster graphics, so the idea is you can scale user interface widgets under WPF. So how do you build WPF applications? You use a markup language called XAML (pronounced "zammel") to assemble the UI and wire up the business logic to that UI.
The visual scalability of XAML/WPF apps is evident in the Visual Studio XAML editor; there's a slider control with which you can resize the window and its controls. Depending on the number of controls, you might scale down all or part of a desktop window so it could fit on a mobile device.
How about WPF on the web? That's where Microsoft's Silverlight comes in - it's a way to present XAML apps in a web browser.
The final item before lunch was a reporting demonstration, but David had difficulties connecting to SQL Server. These connection problems were responsible for a number of glitches in the presentation; you gotta love demos. We did get to see a report wizard after the lunch break (using an Access database) and after many years of enjoying (if that's the right word) Clarion's extensive reporting capabilities I have to say I found the reporting demo singularly unimpressive. But at least you no longer need Crystal Reports in Visual Studio.
And here's a nicety in VS: when the Intellisense window is displayed, it may cover some of your code. Pressing Ctrl fades the window so you can see the code underneath. Here's the usual Intellisense window:

And here's what it looks like when I press Ctrl:

You might have to squint a bit - the window is seriously faded. As soon as I release Ctrl the Intellisense window is back to its usual appearance.
Sometimes it's the little things that matter so much.
The lone afternoon session began with a lengthy and sometimes quite funny commercial/video, featuring a psychiatrist counseling a user who had lost his first love for his PC. He rediscovers his passion upon visiting a thinly-disguised Apple store, which he derides as a "candy coated wonderland of faux artsiness."
The rest of the session dealt with web development, including a described (but not demonstrated) web control which creates forms and views based on the structure of the database (rather than a data dictionary). There were some nifty demonstrations of web services courtesy of Windows Communication Foundation (WCF, formerly Indigo), which I didn't entirely follow. But it appears that among other things WCF makes it easy to create one service which is available in multiple dialects, including SOAP, REST, JSON, and POX (plain old XML). And if you're accustomed to FireFox's web development addons, take a look at Web Development Helper for IE.
Visual Studio's ability to debug Javascript looks pretty useful; if you've done any amount of web development, you're either already using Javscript or you will soon.
There are also a couple of nifty new web controls, including ListView, which allows you to customize the HTML used to display the data, and DataPager, which makes paged browses easy to create. These are both new in .NET 3.5.
David answered the oft-asked question of which of Microsoft's many web-related tools developers should actually use. The short answer:
On the subject of separating the user interface from the business logic, Microsoft's new ASP.NET MVC framework got a mention. MVC stands for Model-View-Controller and has been around for almost thirty years. In the last decade or so it's become more popular for web applications (ClarionMag is delivered to you by way of a custom MVC application) and with Microsoft finally getting on the bandwagon MVC appears to be going mainstream. A preview release of ASP.NET MVC is available, and requires .NET 3.5.
One final note on web development: if you're still using tables to format your web pages you need to get down and dirty with cascading style sheets, or CSS. For an extreme example of how you can radically change the appearance of a page with style sheets, and without altering the page itself in any way, check out the CSS Zen Garden and click on the alternate design links. Each link simply applies a different style sheet to the page you're viewing.
Of course, it wouldn't be a proper Microsoft seminar without some treats from Bill. The goodie bag included an NFR version of Visual Studio 2008 Standard Edition, the November 2007 CTP for SQL Server 2008 with a voucher for an eval version of Standard Edition when released, one year trial editions of Windows Server 2008 and Vista Ultimate SP1, plus a few other lesser items. If you can't get to a seminar, or you don't want to shell out for Visual Studio, you can still get the individual express versions for free.
I don't use Visual Studio that much, but I do find it handy to keep around as a learning tool and a reference point. I sometimes find myself compiling (and occasionally writing) C# code so I can be sure it works as expected; mostly I do this in Clarion.NET using the C# compiler, but certainly VS is the gold standard for hand coding, especially when it comes to the latest and greatest .NET libraries. For more on Clarion# as compared to Visual Studio check out the Clarion.NET FAQ.
If you get a chance to take in a similar seminar, I think you'll probably find it worth your while. I certainly gained a helpful perspective on some of Microsoft's new technology.
Copyright © 1999-2009 by CoveComm Inc. All Rights Reserved. Reproduction in any form without the express written consent of CoveComm Inc., except as described in the subscription agreement, is prohibited.
Clarion Magazine ISSN 1718-9942
One year: $169
(includes all back issues since '99)
Renewals from $119
Two years: $269
Renewals from $219