Good project setup

Get answers to all your basic programming questions. No Ogre questions, please!
User avatar
paddy
Greenskin
Posts: 136
Joined: Sun Aug 01, 2004 7:07 pm

Good project setup

Post by paddy »

I am still learning C++ and while I understand oop pretty well, I am interested if anyone can suggest some reading on good organizational patterns for setting up projects.

I am working with Ogre, CEGUI, and a lot of my own code and so far I have been adding my custom CEGUI classes to my own project workspace and seperating .h from .cpp files for each major class with some util classes in the .h area, but I really want to do things the right way so a project can grow without getting really messy. (Using VC6 btw)


Is there any good documentation/tuts/guides on this in general, and more or less specifically about c++?


TIA
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 8

Post by haffax »

I don't know any such tutorials. Maybe there are some articles on project setup on MSDN. But there are a huge amount of successful open source projects (This is the forum of one of them. ;)) So my advice is to learn from actual projects. Look at the setup they chose.

Chances are, that when you start a project and it evolves you learn, that your projects structure is suboptimal anyway. This is ok, to do it right the first time is very difficult and needs much experience.

As an example for a project using Ogre you can look at a project our team is working on (see my signature). The browsable source code can be found here: http://svn.berlios.de/viewcvs/dsa-hl/rl/trunk/. This setup is our second trial, we had to change it, when we decided to seperate certain aspects of the game into libraries. Till now we are very content with our setup.

Hope this helps. :)
team-pantheon programmer
creators of Rastullahs Lockenpracht
Mdobele
Halfling
Posts: 55
Joined: Mon Jun 07, 2004 11:01 am

Post by Mdobele »

Best plan is to simply MAP your progress out onto a UML diagram. When you chart how your classes are interacting with each other you gain a better understanding on how to keep it all nice and managable.

Also you will have a clear reference when you start getting into a major project and forget half the stuff you did 2 weeks ago :roll: .
PrimedGames
www.PrimedGames.com

Email Me At
Mdobele( AT )primedgames.com
// Replace AT with @ of course