Re: Single assembly or multiple assemblies for big apps?
- From: "Scott M." <s-mar@xxxxxxxxxxxxx>
- Date: Mon, 31 Jul 2006 17:59:09 -0400
;)
Good luck!
"Claudio Pacciarini" <ClaudioPacciarini@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in
message news:253C108E-0BDE-4D4B-BC24-20E6EBB697A2@xxxxxxxxxxxxxxxx
Hi Scott and Frank,
Thanks for your kind responses. My intention is to help my team improve
the
way we design and develop some of our applications. Your email and all the
rest of the emails I've been receiving will hopefully help me achieve that
goal.
Thanks so much.
Claudio
PS: Scott, your reference to the abacus was hilarious. :-)
--
Claudio Pacciarini
"Claudio Pacciarini" wrote:
Hi everyone,
I have a question about .NET code sharing and reuse, and also about
application design best practices / guidelines.
Currently, we have many different .NET projects in source depot. Although
they are different, in some of them we share C# code by referencing
source
files that are external (not part of the projects) on each project.
For instance, some of our projects have the typical "sources" file with:
SOURCES = \
..\..\some_other_different_unrelated_project_A\fileA1.cs \
..\..\some_other_different_unrelated_project_B\fileB1.cs \
..\..\some_other_different_unrelated_project_B\fileB2.cs \
Program.cs
Class.cs
And so on.
Some people in my team think that DLLs and assemblies are evil and should
be
completely avoided. Therefore, they advocate treating all projects in the
depot as one huge, monolithic project (even they are not, as they are
different projects), sharing code by referencing source files all over
the
depot.
Basically, each application has one and only one assembly containing all
the
application source code plus all source code that belong to other
projects
too but is reused by referencing the other project(s) C# source files.
Other team members (BTW facing huge opposition) insist in packing the
shareable code into one or more assemblies, although for some people,
assemblies and DLLs are absolutely forbidden.
Can someone please tell me the pros and cons of each approach? Is it
right
to be completely against packing certain substantial modules or pieces of
functionality into separated assembly/assemblies, as opposed to having
one
and only one single, huge monolithic assembly containing the whole
application + other project source files?
Those in favor of having shareable code packed into separate assemblies,
instead of putting everything (all the source code of the application
plus
the sources of our libraries, plus the sources of all subsystems, etc.)
into
one, big monolithic assembly, point to these other URIs:
http://msdn.microsoft.com/practices/compcat/default.aspx?pull=/library/en-us/dnbda/html/distapp.asp
http://msdn.microsoft.com/practices/compcat/default.aspx?pull=/library/en-us/dnbda/html/apparchch2.asp
http://weblogs.asp.net/savanness/archive/2003/07/22/10417.aspx
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconassembliesoverview.asp
So, I wonder, are there any guidelines and/or best
practices/patterns/anti-patterns in regards to C# source code sharing and
reusing among different projects? Any authoritative answers? Is it
reassonable to build big, different applications from one huge source
tree,
having only one and just one assembly per application and nothing more?
Or it
makes more sense to split the app into multiple assemblies, but keeping
the
number of assemblies to a minimum?
Thanks and regards,
Claudio
.
- References:
- Single assembly or multiple assemblies for big apps?
- From: Claudio Pacciarini
- RE: Single assembly or multiple assemblies for big apps?
- From: Claudio Pacciarini
- Single assembly or multiple assemblies for big apps?
- Prev by Date: RE: Single assembly or multiple assemblies for big apps?
- Next by Date: Re: process choking
- Previous by thread: RE: Single assembly or multiple assemblies for big apps?
- Next by thread: Dotnet application Memory perfmon counters
- Index(es):
Relevant Pages
|