For Developers, Microsoft Has More in Store than Ever Before, Part 2

As a follow-up to my previous article on the PDC this year, I present a few more technologies that you are sure to hear about.

LinQ: A Sneak Peek at C# 3.0

The .NET Language Integrated Query (LinQ) is by far the most compelling technology to be added to C#, in my opinion. Without going into a lot of detail, I will explain what it is and how and when it will be implemented. I look at LinQ and its relationship to objects as what WMI is to events. It is a query language that enables you to search your objects and their attributes and methods in a standard declarative manner. The following is a short sample:

using System;
using System.Query;
using System.Collections.Generic;

class app {
  static void Main() {
    string[] names = { "Developer.com", "Gamelan.com", "Jars",
                       "CodeGuru.com", "msdn.Microsoft.com" };

    IEnumerable<string> expr = from s in names
                               where s.Length &rt; 11
                               orderby s
                               select s.ToUpper();

    foreach (string item in expr)
      Console.WriteLine(item);
  }
}

The above code would produce the following result:

CodeGuru.com
Developer.com
msdn.Microsoft.com

For a meta-data guy like me, this has great potential to allow dynamic application creation and execution.

Now, if you join this data to a relational database and WMI or event data, you can start to see the potential. Don Box and Anders Hejlsberg wrote an MSDN article that explains the details of LinQ. Read it, learn it, live it. Keep in mind that LinQ is part of C# 3.0 and is not supported at this point. (I will write a very detailed article on LinQ for CodeGuru at a later date.)

To be clear, LinQ is indeed C#, but also so much more. As Microsoft Group Manager Alan Griver pointed out to me, it is a cross-team effort among the C#, VB, and SQL teams. "This is a platform technology, not tied to any given language," says Alan, which completely makes sense. Why should we C# guys have all the goodies? I think that makes this an even more compelling technology for everyone to learn.

Office 12: New UI and Tighter Integration

I have to admit that I am one of the individuals who takes Office for granted. I have been using it for so long that I don't think too much about it. I would not consider myself a power-user from an end-user perspective, but I do extend it with macros and write programs for it using the Visual Studio tools for Office (VSTO). So, the new UI for Office 12 was a bit of a surprise to me. I always find myself adjusting toolbars and trying to get my environment set up correctly, but from the looks of it, things should be more intuitive and easier to use in Office 12. From a development standpoint, with the introduction of the CLR with SQL Server 2005, Office development should be substantially easier and more efficient.

Expression: New UI Presentation Tools for Graphics and Web Designers

As a Flash designer/developer wannabe, I am very much looking forward to Expression, a suite of three tools all targeted at the UI or presentation designer:

  • Acrylic Graphic Designer incorporates vector and image editing as well as dynamic special effects and workflow in a single environment.
  • The Sparkle Interactive Designer enables you to create audio, video, and static designs into a single user experience, such as a movie or 3D interactive animation.
  • The Quartz Web Designer allows you to take the output from the other tools and create a Web design that is controlled by CSS and XML.

A beta of this tool is available on MSDN. I am interested to see the integration that this toolset has with Visual Studio.

So Many Tools...

Well, those were my highlights of the PDC 2005 this year. If you were not able to make it to the event, you can still see most of the content online at the PDC Web site on MSDN.

Microsoft and other software companies are delivering so many new tools and technologies these days that it is a challenge to keep track of all the products. The PDC and other conferences are a great way to stay in the loop and get a first-hand look at these products before they hit the shelves.



About the Author

Patrick Gallucci

Patrick Gallucci is a Senior Consultant in the Communications Sector at Microsoft. He has more than thirteen years experience in information technology. Patrick's area of focus is developing operational efficiencies using development tools and technologies such as .NET, SQL Server, BizTalk Server, Content Management Server, and Commerce Server. His certifications include MCSE, MCDBA, and MCT. Patrick is a recent instructor of MSF Design, Microsoft C#, ASP.NET, and other .NET classes.

Comments

  • Comment about the sample code...

    Posted by hspc on 10/18/2005 02:53pm

    Hi Since the expression in the LINQ sample selects s.ToUpper() I expected the results to be in capital letters. Not in the original case as in the article..

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Live Event Date: November 20, 2014 @ 2:00 p.m. ET / 11:00 a.m. PT Are you wanting to target two or more platforms such as iOS, Android, and/or Windows? You are not alone. 90% of enterprises today are targeting two or more platforms. Attend this eSeminar to discover how mobile app developers can rely on one IDE to create applications across platforms and approaches (web, native, and/or hybrid), saving time, money, and effort and introducing apps to market faster. You'll learn the trade-offs for gaining long …

  • Live Event Date: October 29, 2014 @ 11:00 a.m. ET / 8:00 a.m. PT Are you interested in building a cognitive application using the power of IBM Watson? Need a platform that provides speed and ease for rapidly deploying this application? Join Chris Madison, Watson Solution Architect, as he walks through the process of building a Watson powered application on IBM Bluemix. Chris will talk about the new Watson Services just released on IBM bluemix, but more importantly he will do a step by step cognitive …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds