Category: Silverlight

Microsoft Prism 4.0 at Alpha

The long awaited Prism 4 is getting closer to a release version. As of Aug 18 Prism is now at Alpha status.

We are actively working with the Alpha version now. Among other tweaks some libraries have been renamed and/or combined to simplify the namespaces. This will mean some revisiting of your project files, to remove old library references and add the new ones, but it will be worth it in the end!

Cheers, Dave

Microsoft Prism 4.0 in pre-release

Prism is a pattern of modular development, used to produce “very large” applications. The current platforms that Prism targets are WPF and Silverlight. Prism was developed by Microsoft and is available to the development public as an open source project here.

The basic premise of Prism is one of divide and conquer. The divide is cleverly performed by using loose coupling of modules (in English that means that modules know little if anything about each other).

Prism includes a practice referred to as Unity. The Unity container is responsible for providing interfaces to modules and objects on request and acts as the central port of call that modules use to communicate with other modules.

There is a very good set of videos giving examples of Prism on the Channel 9 site here.

The latest version combines a second practice known as MEF (Managed Extensibility Framework). This is another Microsoft produced open source project. MEF uses clever techniques to identify requirements in projects, at runtime, by analysing “import” and “export” directives that exist only in the Metadata of the project. MEF is designed to allow for a plug-in style environment, like the Visual Studio IDE.

We are now using Prism and MEF on a medium to large scale project that is expected to have a lifespan of many years.

We will post updates on techniques as we progress on the project. I must say it’s good to be back on hard-core Silverlight development after a spell of APS.Net development.

Thanks, Dave

Silverlight at the end of the tunnel!

Don’t let the GUI get you down…

The problem with really complicated websites, is that the interface of a standard HTML based website really lets you down.

We are designing around a very powerful and very scaleable database design. In many ways it is like an Amazon-style database, but with it’s own unique twists.

The requirements for editing content on work well enough in our Site Manager, which is a full-blown Windows application with drag-drop, cut & paste etc, but trying to make the data entry usable on a website is a struggle with established technology. Even our favorite combination of ASP.NET with AJAX still feels sluggish and like we are trapped in the 90′s.

All about timing…

Just last month, Microsoft has released their Azure platform (Microsoft’s cloud computing option). This gives us the massive processing and storage potential we have been waiting for, without having to switch from our prefered C#/.Net combination to Python or another language.

Microsoft’s answer to flash, Silverlight, is now in a stable usuable state with the release of Silverlight 2. The power of Silverlight is in putting desktop-app functionality into a web-browser. The down-side is Silverlight’s current browser support (only about 4 main browsers can run it as of this writing).

What now?

Now we have the necessary “possibilities” covered, we are currently buried up to our necks in Silverlight reference materials and code samples to see how practical it is to turn our crazy ideas into reality.

We can’t find the exact third-party controls we need for, but we have seen enough of what is possible with Silverlight to know we can build our own… One component in particular that we are building for will have such broad appeal that we will likely offer it as a component for other developers. That one should appear publicly in the next few weeks.

Anyway, as I like to say, that website won’t write itself, so I must get back to cutting code.

Keep a lookup for new announcements from us over the Xmas period!

WordPress Themes