E
Ectoplasma
Hello,
I have arrived at quite an architectural challenge.
I am at the verge of deciding to rewrite a large application written
in C++ with MFC. I am quite sure we will switch to C# language on the
..NET platform. Second choice, but unlikely, is Java. Because I am not
very experienced with architectural choices and have little experience
yet, and because I just want to know which choices there are, I post
it here in this group.
The application has the following concept:
- Windows main application: MDI user interface. Uses all following
components.
- Component: database access to store documents data
- Component: store data to binary file instead of database
- Component: data (document), large in size and complex in structure;
a document employs one of several different models, one component for
each type of model; code specific to maintain / access data resides in
the respective model type component (including media storage)
- Component: analysis of document of particular data model (one
analysis component specific to each model); storage of the analysis
data.
- Component: optimisation of document of particular data model (one
component specific to each model); storage of the optimised data;
component uses (data from) analysis component
- Component: visualisation; one component for eg. 2D visualisation,
one for 3D, etc. (Q: How can a component handle user interaction
specific to its respective visualisation type?)
I want this application to work on component "plug in" basis. I want
to be able to choose which components to incorporate in the app at
build time. Later on maybe also on run time.
Can anyone comment on this, maybe recommend a (practical, language
specific) book or a project that can serve as an example? What kind of
(binary) components to use, DLL's? What kind of interfaces? Which
methods have proven in past projects?
Thank you,
K.
I have arrived at quite an architectural challenge.
I am at the verge of deciding to rewrite a large application written
in C++ with MFC. I am quite sure we will switch to C# language on the
..NET platform. Second choice, but unlikely, is Java. Because I am not
very experienced with architectural choices and have little experience
yet, and because I just want to know which choices there are, I post
it here in this group.
The application has the following concept:
- Windows main application: MDI user interface. Uses all following
components.
- Component: database access to store documents data
- Component: store data to binary file instead of database
- Component: data (document), large in size and complex in structure;
a document employs one of several different models, one component for
each type of model; code specific to maintain / access data resides in
the respective model type component (including media storage)
- Component: analysis of document of particular data model (one
analysis component specific to each model); storage of the analysis
data.
- Component: optimisation of document of particular data model (one
component specific to each model); storage of the optimised data;
component uses (data from) analysis component
- Component: visualisation; one component for eg. 2D visualisation,
one for 3D, etc. (Q: How can a component handle user interaction
specific to its respective visualisation type?)
I want this application to work on component "plug in" basis. I want
to be able to choose which components to incorporate in the app at
build time. Later on maybe also on run time.
Can anyone comment on this, maybe recommend a (practical, language
specific) book or a project that can serve as an example? What kind of
(binary) components to use, DLL's? What kind of interfaces? Which
methods have proven in past projects?
Thank you,
K.