application design

  • Thread starter Thread starter bill
  • Start date Start date
B

bill

I am migrating a VB6 webclass (IIS application) to a dotNet webforms
project.

There are dozens of designers, class modules, and code modules in this
webclass project, which I will move into VB.NET or CS.NET classes to be
referenced from the web forms project.

I am trying to decide whether to pack all the logic into a single
assembly/dll with numerous classes, or use numerous assemblies with some
classes in each. I guess the answer is somewhere in between, but I don't
want to be arbitrary about it.

There are also dozens of screens in this webclass project, each with an html
template. When designing a web forms project, is it typical to utilize one
web form with many user controls being hidden and moved, or use a number of
web forms to create the interface?

My question is whether there is any conventional wisdom in making these
determinations, and if there are any good, concise references to provide
guidance.

The books and documentation I've read describe how to build the
functionality, but I haven't found much on actually designing the structure
of the whole project.

Thanks
Bill
 
As a rule, your pages and code behind should be in a single assembly.
Optionally, you can create separate assemblies for your business logic
and database layers. That is up to you. There is a "small" performance
hit (very small) with using a large number of separate assemblies. One
reason is the security checks by the framework to ensure the account
attempting to use the assembly has the proper authentication.

Microsoft's performance book recommends fewer assemblies if
the choice is a choice of preference but does not say you shouldn't
use multiple assemblies for your different layers.

There is also nothing wrong with putting all of your classes in the
same assembly even though they may not be in the same layer.
Just remember to keep the functionality of the classes separate
based on the layer they belong in.
 
Here's some information about how you can easily tinker with different
designs and to see what works out best for your application.
http://www.dotnetjunkies.com/Article/74851895-C4D4-4F11-956D-A27D849E4A62.dcik

I used that technique to experiment and generate code conforming to the CSLA
object structure that's defined in this highly recommended book on object
modeling:

Expert One-on-One Visual Basic .NET Business Objects (by Rockford Lhotka)
http://www.amazon.com/exec/obidos/A...3229?creative=327641&camp=14573&link_code=as1

or here's the C# version if you prefer:
http://www.amazon.com/exec/obidos/A...9024?creative=327641&camp=14573&link_code=as1
 
Thanks for the advice - that's what I was looking for. What is the book you
refer to?

-Bill
 
Thanks - it's been a while since i looked at Visio.
I'll get the book on business objects you refer to.
-Bill
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top