Namespacing and Code Organization

Mads talks about namespacing and organization on the Workspaces. This is what I've come up with, maybe it will help you out.

My code is organized in the following pattern:
Namespace:
CompanyName.BrandName.ComponentName

In the case if GenX.NET, it's Interscape.CodesideAssistance.GenX. Since my reasons for this go outside the scope of this blog, I will talk about it in my corporate blog at a later date. At any rate, my namespace hierarchy looks like this:

  • Interscape
    • CodesideAssistance
      • GenX
      • ScrollingDataGrid
      • ForumsConfigurator
      • Iewc
      • SimpleRss
    • ezc2
      • SimpleCard

It's fairly simple, really, and allows for consistency across product lines and brands.

As for my GotDotNet Workspace, it is laid out as follows:

  • Product Name
    • MajorVersion.MinorVersion
      • Major.Minor.FrameworkVersion.BuildNumber

Again, using GenX.NET as an example, it looks like this:

  • GenX.NET
    • 2.0
    • 3.0
      • 3.0.3300.1099
      • 3.0.5000.1099
  • ScrollingDataGrid
    • 1.0
      • 1.0.3300.5495
      • 1.0.5000.5495

For more on my versioning policy, click here. That's it. I keep it pretty simple. What do YOU use?

No Comments