http://www.developer.com/

Back to article

The .NET Ecosystem is a Wonderful Place


February 18, 2005

One of the hallmarks of a successful programming environment is its ability to generate interst among independent software vendors. From that point of view, .NET must surely be measured as one of the major success stories of the past several years. From all-encompassing development environments to quick single-use utilities, Developer.com readers had no problem coming up with nomineers in the .NET Tool of the Year category of the Developer.com Product of the Year 2005 contest. Here are the finalists that the list was whittled down to:

  • Altova XMLSpy 2005 Integration Package for Microsoft Visual Studio .Net
  • ComponentOne Studio Enterprise Subscription
  • DeKlarit
  • RADvolution Designer 2005 Professional Edition
  • SharpDevelop IDE
  • The Mono Project

All in all, that's a fine selection of products. Let me introduce them in a bit more depth before announcing the winner..

XMLSpy and Visual Studio: Two Great Tools in One Shell

Altova's excellent XMLSpy XML editor was nominated in the Development Utility category of this year's contest. It's not too surprising, then, to find their Integration Package for Visual Studio .NET over here. The idea is simple: if you have both XMLSpy and Visual Studio .NET (either Professional or Enterprise) installed on your computer, you can replace the somewhat anemic XML editor in Visual Studio with the full XMLSpy set of tools. XMLSpy becomes the XML editor, blending seamlessly with the rest of the Visual Studio .NET shell.

This blending is thanks to one of the shrewdest possible moves on Microsoft's part: the release of a supported and free Visual Studio Integration Partners program. This program gives anyone the code and know-how to build their own utilities into VS .NET, which then becomes a sort of universal platform for development-related tools. For developers who prefer to work in an IDE, having tools handy right there is a blessing.

Altova made excellent use of the VSIP interfaces with this integration package. Everything just works the way you'd expect it to: one of the distinguishing features of a fine tool. If you've got XMLSpy and VS .NET, installing this piece to link them together is a no-brainer.

More Components Than You Can Shake a Stick at

Do you remember software development before components? I do, and it wasn't pretty - literally. Before the rise of user interface components (fueled largely by Microsoft's unleashing of VBX controls on the world) no one had time to build fancy user interfaces. But now things have changed. Thanks to offerings like ComponentOne Studio Enterprise anyone can build a spiffy-looking user interface with the latest doodads and styles on top of their otherwise pedestrian application.

ComponentOne isn't the only company in this business, but they pack a heck of a lot into their annual subscription of presentation-layer components. You get menus, toolbars, grids, spell-checking, web reporting, mobile device components, and dozens more. With their subscription pricing, ComponentOne also delivers a stream of updates, new releases, and beta software throughout the year.

On a bang for the buck basis, it's easy to see why this product got nominated. It doesn't take very long for it to earn its keep by providing far more user interface value than the average developer could easily write.

Pushbutton Application Development

It's every developer's dream: just describe your application to the computer, push a button, and then relax while the computer writes all of the source code. After all, writing code is just boring repetitive work, so why not let the computer do it? We're not at that promised land yet, but DeKlarit brings us one step closer.

DeKlarit is a generator for your application's business framework: the database schema, data access, and business logic layers. It's integrated into Visual Studio .NET, so you can just add some additional high-level design tasks to the work you're already doing. For example, you take input from end users to describe business components in terms of business rules and the data that they hold, and DeKlarit takes care of building the database and all of the code to work with it. DeKlarit supports C#, VB .NET, Access, SQL Server, and Oracle, so you've got a good amount of flexibility in what you generate.

All in all, DeKlarit succeeds well in its goal: hiding a lot of messy goo from the developer. You describe your business objects, you use them through well-defined interfaces, and you can pretty well forget about the low-level code that maintains them. DeKlarit does all the bookkeeping for you. We're going to see more and more of this approach in the coming years, but why wait? It's clear that products that build business applications fast are gaining in importance right now.

Supercharged Form Design

Another product that takes advantage of the extensibility built into Visual Studio .NET is RADvolution Designer. The basic idea of RADvolution is that it runs while you're designing Windows Forms and does a lot of the work for you.

For example, suppose you're designing a menu. RADvolution Designer will build the shell of the most common menu items for you. It will let you add forms to the menu easily, and build the code to open them. It also manages status bar text in concert with the menu choices, and does this without requiring you to write any code. To take another example, you can plop a bunch of controls nearly at random on form, select "Auto Layout", and have them all set up in neat rows and columns, with a sensible tab order and labels.

If you're tired of fussing around with things like layout panels, tab order setting, and anchoring things by hand, this is the sort of product you've been waiting for. And one of the nice things about the .NET universe is that such products exist.

Why Not a Free IDE?

For all that Visual Studio .NET is a wonderful design environment, it has one major drawback for some developers: its price can be quite steep. That's why it's good to know about SharpDevelop, a free, open-source IDE for both C# and Visual Basic .NET projects.

"Free," is, of course, a major selling point here. But that wouldn't be worth much if it wasn't coupled with real features. Fortunately, SharpDevelop has matured to the point where it's useful for writing quite serious code. It includes both forms designers and code editors. The code editor supports advanced features like code completion, folding, and of course syntax coloring. It even goes beyond VS .NET in some areas - for instance, there is integrated conversion from VB .NET to C# and vice versa, as well as integrated NUnit support. And, of course, there's the rock-bottom guarantee of GPL-licensed open-source code: if you don't like the way something works, you can always reimplement it yourself (provided, of course, you can take the time to understand a C# project of this magnitude).

With the .NET Framework SDK itself and SharpDevelop both being free, there's very little barrier to getting involved in serious .NET development. While I'm sure Microsoft would love to sell more Visual Studio boxes, they certainly don't mind seeing lots of developers using the underlying platform no matter which IDE they choose. A superior free IDE helps us all by driving innovation and widening the developer pool.

.NET Everywhere

The final nominee is the most ambitious. The Mono Project, which started clear back in 1991) is an ambitious undertaking. It aims to provide a complete open-source .NET implementation, starting with the ECMA standards for C# and the Common Language Infrastructure (which Microsoft wisely released in a bid for greater acceptance of .NET).

Mono is an amazing beast. In some areas it's already ahead of Microsoft's reelases: generics and other C# 2.0 features are already in shipping versions of Mono. Right now, with minimal effort, you can take many command-line or ASP.NET applications and rebuild them to run on Linux. They're also moving ahead on cross-platform forms technology for .NET applications.

Some people in the open source community have worried that Mono could be strangled at any time by Microsoft patent activity, but with Mono being under the wing of Novell, and with all of the development happening in a clean-room atmosphere, that looks to me to be unlikely. And the rapid development of the project indicates a broad base of support for the idea of ".NET everywhere." It's hard to see why a developer working in C# would be unhappy about having more platforms to sell code for.

  The Envelope Please

Just over 40% of Developer.com's readers voted for The Mono Project in this category, giving it a strong plurality of the votes and the trophy. To me, this looks like a vote of faith in the future of C# and .NET as a development platform, not just in the Microsoft world, but in general. No doubt the open source nature of the project helped it win; open source advocates tend to be vocal about the software that they support. But having tried out the software myself, I can say that it would be impressive whether it was free or something that I had to pay for from a commercial vendor. On top of the obvious advantages of being able to build cross-platform software with C#, it's good to see a small and nimble team pressing Microsoft when it comes to adding features and capabilities to the platform.

Trends and Thoughts

This year's nominees bring out three important trends in .NET development (or, indeed, in development in general). First, effort invested in building a solid, extensible IDE clearly pays off if you want to ship a major new software platform. Three of the products in this year's list took advantage of Visual Studio .NET's extensibility features to integrate themselves into the developer's daily experience, and they're among the hundreds of products out there to do so. Second, code generation is here to stay. While some developers still distrust code they don't write by hand (do they verify the generated assembler, I wonder?), most of us are quite willing to leverage good tools that let us work at a higher level of abstraction. Lastly, for all the complaining in some quarters that it's destroying the industry, open source continues to produce some extremely impressive software. Watch for these trends to continue as we move forward in the tools market for another year.


Mike Gunderloy is the author of over 20 books and numerous articles on development topics, and the lead developer for Larkware. Check out his latest books, Coder to Developer and Developer to Designer, both from Sybex. When he's not writing code, Mike putters in the garden on his farm in eastern Washington state.

Sitemap | Contact Us

Thanks for your registration, follow us on our social networks to keep up-to-date