Wednesday, 21 August 2013

Is Microsoft Prism suitable for development of a non-GUI modular realtime server?

Is Microsoft Prism suitable for development of a non-GUI modular realtime
server?

I am working on a server side application which should dynamically load
modules at startup based on whether or not they exist as assemblies. I've
done something similar before, but this time it's production code and I
want to use frameworks for modularization and instantization (using IoC
containers). I initially found Microsoft's Prism (with Unity) to be a
suitable framework to do this, but I am growing concerned as I am
implementing initialization and bootstrapping. The server will not have
it's own GUI and will presumably run as a windows service at a later time.
(I'm developing it as a simple console application in the meantime.)
Various clients (roughly one client application per module) will be
developed to interact with the server over WCF.
Should I even be using Prism for such an application, since it seems so
geared towards GUI-enabled applications? I stopped coding when using the
base class Microsoft.Practices.Prism.UnityExtensions.UnityBootstrapper
which requires implementation of a CreateShell() method. I kind of
expected it to be named something like Run() or something similar. I don't
really have a shell, or at least a GUI shell. Am I reading to much into
this, and does it make sense to use Prism without worrying about it having
potentially redundant GUI functionality? Am I using the right tool for the
job?

No comments:

Post a Comment