Structuring code files for multiple programmers work.

  • Thread starter Thread starter Gary Shell
  • Start date Start date
G

Gary Shell

I am trying to figure out the best way to subdivide a project for multiple
programmers. I am embarking on a new development project with one other
person but with an idea in mind that we may need to add a couple more folks
on as we progress.

The user interface is an "outlook style one" with a treeview over a small
navigation pane with a splitter bar and a, for lack of a better term,
content area.

Selections made in the treeview will cause the content area to change
dramatically depending on the item selected in the treeview. This content
area will have anywhere from 3 to 10 tabs on it, again dependent on the item
selected in the tree view. All told there will be 30 to 50 different tabs.
I'd like to somehow encapsulate each one of these tabs such that they could
be checked out of SourceSafe individually.

Lets say I have one particular content area configuration which has 6 tabs.
I'd like to be able to assign tabs 1 through 3 to programmer A and 4 through
6 to programmer B. I don't know how I could check in or out just one tab.
It looks to me like all 6 tabs would have to reside on a single form and
that would preclude two developers from working on the twos sets of tabs as
outlined above. The ideal situation would be to have each tab actually
house a form, and then each of these forms could be individually checked
out. But our preliminary tests seem to show that the only thing a tab
"container" can hold is controls, not an entire form.

Anyone else tried to "team program" an "outlook style" of interface with
tabs in the content area? If so how did you structure the app to allow a
highly granular code file structure.

I just know this is gonna be some silly easy answer to this and I'll slam
the heel of my hand into my forehead, exclaiming "Doh!"

Thanks,
Gary Shell
 
It's easy to say Doh when you know the correct answer. It's not that easy to
come to correct answer.

I am not sure my answer is simple or completely correct. Tab as component is
class, and as such could be developed by one person. Same person could
develop several tabs or all. Depends on complexity. While tabs are not yet
complete - you use dumb classes (constructor / destructor). You check in new
version of class, recompile and go.
Of course it could be done in more complex way - not that much maybe - by
using plugin concept. Especially when you don't know how many tabs you or
user will create.

As about specific components - take a look at TabControl and related
TabPage. Because TabPage is inherited from Panel it can host easily other
panels or whatever controls you want to develop. E.g. in one of my programs
I put whole Outlook style interface onto one TabPage.

And possibly you should take a look at some book on object-oriented design?
Petzold's one is very good at demonstrating simple techniques of sensible
inheritance for windows UI components imo.

HTH
Alex
 
Back
Top