Click here to Skip to main content
15,908,841 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
GeneralRe: The best architecture solution for working with multiple data sources Pin
Pete O'Hanlon2-Jul-07 22:43
mvePete O'Hanlon2-Jul-07 22:43 
GeneralRe: The best architecture solution for working with multiple data sources Pin
rokford4-Jul-07 1:46
rokford4-Jul-07 1:46 
GeneralRe: The best architecture solution for working with multiple data sources Pin
led mike3-Jul-07 4:50
led mike3-Jul-07 4:50 
GeneralRe: The best architecture solution for working with multiple data sources Pin
rokford4-Jul-07 1:15
rokford4-Jul-07 1:15 
QuestionWhat is the best possible Design Pattern Pin
JoeContreras27-Jun-07 13:01
JoeContreras27-Jun-07 13:01 
AnswerRe: What is the best possible Design Pattern Pin
nitikin2-Jul-07 1:05
nitikin2-Jul-07 1:05 
GeneralRe: What is the best possible Design Pattern Pin
JoeContreras2-Jul-07 7:07
JoeContreras2-Jul-07 7:07 
QuestionLibrary Architecture for Multiple Applications and Multiple Developers [modified] Pin
brmorris26-Jun-07 15:42
brmorris26-Jun-07 15:42 
Hi,

I've been surfing around for articles on best approaches to library architecture for multiple applications used by multiple developers and so far have come up with very little so I thought I may as well just ask some questions.

Our company has been developing solutions for a number of years using Borlands Delphi and a FAT Client-style architecture where most of the code gets compiled and linked into one executable per application (There were historical reasons behind this style that I won't go into). So structuring our code library has been fairly easy, using a Visual Source Safe as our primary source control, we simply share the code into the application folder, then we reference all the code as relative path.

However, since starting development in C# (and the dotNet Framework) its obvious that this approach was not going to cut it.

So then development started and progressed down the path of separate, specific assemblies for each specific algorithm/datastore/UI etc. Now I/We have the problem of structuring these assemblies/libraries so that multiple applications reference them both in development and deployment. Deployment isn't much of a worry as we are placing all the assemblies in a folder on the target platform but our major problem is referencing these assemblies during development. Ie in Solution/Project files, VSS and also in our Build System (FinalBuilder)

I'll give you an example.
LibraryA and LibraryB are two assemblies that contain algorithms for two separate/different situations. They have there own Project and Solution files, their own specific tests, are in their own separate folders with our source control and are built separately within our Build System.

Now Application1 needs to use both LibraryA and LibraryB. Application1 is laid out in the same way that both libraries are (VSS, BuildSystem etc) but there needs to be a reference to both assemblies within the Project file. And it needs to be available at Design time (within VS) and during automated Build time (FinalBuilder).

I know about the GAC and as a company we have decided against using it.

Our preliminary idea is to use a Global assembly area of our own, that each developer has (using an environment variable) and it contains all the assemblies within our library, so all references are directed at this location. So our Build System just needs to ensure that these assemblies are available when building each application. Other ideas that have been discussed was to setup our Build System to build all dependent projects before the main project and reference each dependent project within the main projects Solution file with the references to the dependent projects build locations.

So my question(s) is/are:
What are some of the approaches that other organisations/people use to reference assemblies at design/development time across multiple applications and multiple developers?


Hopefully I have explained our problem sufficiently and I'm betting that this is a issue in more than one place of business, so I'm sure the answer(s) is out there. Please share your thoughts and ideas.

Thanks

Brett Morris


-- modified at 21:50 Tuesday 26th June, 2007
AnswerRe: Library Architecture for Multiple Applications and Multiple Developers Pin
Chris-Kaiser10-Jul-07 16:40
Chris-Kaiser10-Jul-07 16:40 
Questionvirtual functions Pin
tom groezer25-Jun-07 9:42
tom groezer25-Jun-07 9:42 
AnswerRe: virtual functions Pin
Pete O'Hanlon25-Jun-07 10:24
mvePete O'Hanlon25-Jun-07 10:24 
GeneralRe: virtual functions Pin
nitikin2-Jul-07 1:23
nitikin2-Jul-07 1:23 
GeneralRe: virtual functions Pin
Pete O'Hanlon2-Jul-07 3:23
mvePete O'Hanlon2-Jul-07 3:23 
Questiontransparency on IE Pin
xxrono25-Jun-07 1:12
xxrono25-Jun-07 1:12 
AnswerRe: transparency on IE Pin
Pete O'Hanlon25-Jun-07 2:10
mvePete O'Hanlon25-Jun-07 2:10 
QuestionHelp needed to end the madness. Pin
daviiie23-Jun-07 0:11
daviiie23-Jun-07 0:11 
AnswerRe: Help needed to end the madness. Pin
Pete O'Hanlon25-Jun-07 2:26
mvePete O'Hanlon25-Jun-07 2:26 
AnswerRe: Help needed to end the madness. Pin
nitikin29-Jun-07 0:40
nitikin29-Jun-07 0:40 
QuestionRequest your comments to design my System. Pin
AmarjeetSinghMatharu20-Jun-07 22:00
AmarjeetSinghMatharu20-Jun-07 22:00 
QuestionThoughts on iBatis? Pin
Dave Sexton20-Jun-07 2:51
Dave Sexton20-Jun-07 2:51 
AnswerRe: Thoughts on iBatis? Pin
Paul Conrad4-Nov-07 7:06
professionalPaul Conrad4-Nov-07 7:06 
GeneralRe: Thoughts on iBatis? Pin
Dave Sexton5-Nov-07 10:27
Dave Sexton5-Nov-07 10:27 
GeneralPhone Numbers Editor Pin
Brady Kelly20-Jun-07 1:16
Brady Kelly20-Jun-07 1:16 
GeneralRe: Phone Numbers Editor Pin
led mike20-Jun-07 5:58
led mike20-Jun-07 5:58 
GeneralRe: Phone Numbers Editor Pin
Brady Kelly20-Jun-07 6:07
Brady Kelly20-Jun-07 6:07 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.