compared to Flash and SVG

On the website was noted in the forums. A couple posters compared to Flash and SVG. I pointed out some significant differences between and Flash or SVG, and I repost those differences here.

The runtime is free, like Flash. has these differences with Flash:

  • It is not an activeX control, it is a .NET dll written in 100% managed code that can be simply deployed.
  • It is designed for .NET programmers, with an API compliant with standard MS guidelines. Flash is clumsy for .NET programmers.
  • Because it is a .NET assembly, it can be used in any .NET language.
  • Because it is used by compiled .NET languages, it has a speed advantage over Flash. All components created with can also be reused in any .NET program.
  • There is a designer integrated in Visual Studio .NET, so programmers can create graphical components the same way they would create a Windows Form or UserControl. Each component can be given custom properties, methods, and events.

Based on the above description you can probably see how it is much easier for .NET developers to use instead of SVG and an ActiveX control:

  • Easier to deploy, especially in restricted security settings, because it is 100% managed code, and does not depend on an ActiveX control.
  • A .NET oriented API, as described above. We also strove to make it easier to use than SVG.
  • Use any .NET language, not javascript.
  • All languages compiled.
  • A heck of a lot faster than SVG. This is due to the compilation and years of optimization work on the run-time engine.
  • No parsing is required at run-time. Components created in the designer are compiled down to binary MSIL at compile time.
  • Great scalability.
  • Fully exposes GDI+ capabilities -- features that are not available on SVG include path gradients, bell curve gradients, many text properties.
  • A component oriented architecture. We encourage the creation and reuse of graphical industry-specific components, each of which is a .NET class with custom properties, methods and events. Once a library of components is created, they can be reused acrosss multiple higher level screens or components. Components can be nested to any depth.

I believe it is that last point that is the greatest strength over a data-file oriented system such as SVG.


  • Yes - the fact that its the only robust vector graphics system not glued to XML at the hip is a definite plus. Plus, I can use it from Boo ( ), so its all good!

    Irony is a Java advocate calling anything proprietary. ;0

  • Use from any .NET language! I checked out Boo a few weeks ago. Definitely a cool thing. I always liked the python syntax. The "wrist-friendly" idea is one I can really appreciate.

    There is no console with intellisense one can use to interactively create objects and assign properties? I was looking for the same thing with Iron Python. This type of thing would be great for testing features, as it is more isolated than testing things in the designer.

  • Naw; booish.gui (Windows.Forms version of booish) doesn't have intellisense. Boowx, Boo Windows Explorer, has rudimentary intellisense, but nothing to be trusted.

    The SharpDevelop binding is the most promising at the moment; project support, booish.gui pad integrated into the project, stuff like that. Its unfortunately missing Code Completion, though.

    Frankly, I never used to be really enamored with using an interactive shell, but since I've started Booing, I've found that I'm using it more and more just to quickly test new features.

    Pretty cool stuff, but having to use Lutz .NET Reflector to look up methods is kind of a pain in the ass. I'm hoping that the guy doing the BooBinding for SharpDevelop gets Code Completion done.

  • The Big Plus of using Boo's interactive shells:

    You can watch the effects of code in real time. It really simplifies GUI development when you're not using an editor, or you're doing some programmatic stuff behind the scenes and need to test it.

  • Yes, that is exactly what I was thinking. I worked with some similar systems before, it was great for quick testing and isolation of problems. But without the intellisense.... not so fun.

  • Typo in the SVG comparison??

    Didn't you mean this:

    "Easier to deploy, especially in restricted security settings, because it is 100% MANAGED code, and does not depend on an ActiveX control. "


  • Thanks Hugh, I will fix!

Comments have been disabled for this content.