We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I find that having a "standard" project directory with sub-directories for all projects to be of great value.
I do not know what others have done when they start a new project, but I can tell you that I simply copy-n-paste, then rename this "template" into my ..\Projects\ directory, and then work from within the template's standardized structure.
e.g. ..\Projects\Alpha
Where "Alfa" is the renamed standardized structure.
I will add sub-directories to this standard structure when it is deemed appropriate. I highly recommend this structure to people who work on multiple projects and add this bit of advice to their methods.
--Cpt. Vince Foster 2nd Cannon Place Fort Marcy Park, VA
"...I simply copy-n-paste, then rename this "template" into my ..\Projects\ directory ..."
All standard stuff.
We have the procedure described in our firmware creation checklist Volume#7, Chapter#9, Section#28, Sub-Section#12, Point#12. We are then pointed to Addendum Volume#12, Chapter#27, Section#98, Sub-Section#4, Point#14.
(Those contractors really knew how to do it properly.)
I wasn't thinking on the "minor" scale of just the code-monkey's working directory and its possible IDE sub-directories, but rather for the project as a whole...
E:\ACME\ENG\PRJ\WIDGET\ +-\Docs { All project documentation } | +-\Elect\Released { All electrical stuff here } | \Rev- { Officially Released Schem } | \RevA { Revision Lists } | \Rev[etc] | \Work { Working directory for elex} | +-\Mech\Released { All mechanical stuff here } | \Rev- { Officially Released DWGs } | \RevA { Revision Lists } | \Rev[etc] | \Work { Working directory for mech} | +-\PDFs { Actual data-sheets or a short-cut to a dBase of data-sheets } | +-\Pics { Photos, graphics, and other images for the project } | +-\PLDs\Released { Officially Released Schem } | \Rev- { VHDL, Verilog, CUPL, ABLE, etc } | \RevA { Officially Released HDLs } | \Rev[etc] { Revision Lists } | | \Work { Working HDL code directory } | \ { FPGA IDE Derived Directories } | \ { FPGA IDE Derived Directories } | \ { FPGA IDE Derived Directories } | +-\Sim\Released { Officially Released Sims } | \Rev- { Officially Released Sims } | \RevA { Revision Lists } | \Rev[etc] | \Work { Simulation working directory (SPICE/Simulink/etc) } | +-\Soft\Released { Officially Released Software } | \v0_00 { Officially Released code } | \v1_21 { Revision Lists } | \v[etc] | \DFDs { UML/[pick your flavor] documentation } | \FQT { Formal Quality Testing needs } | \Master { in a Master/Slave scenario } | \Released { Officially Released Master Software } | \v0_00 { Officially Released Master } | \v1_21 { Revision Lists } | \v[etc] | | \Work { Software working directory (C/C++/ASM/etc) } | +-\Specs { Specifications, eg ANSI XYZ, NEMA, etc } | +-\Test { Testing Plans and results } | +-\Weblinks { Worth-while website short-cuts } | +-\[as needed: e.g. corrispondance] | +-\[as needed: e.g. Slideshows]
For the '\Work' directories, I personally allow the .C .ASM .LST .MAP .SRC .OBJ all reside within the same "\Work" directory. My Editor (CodeWright 7.5) can segregate them for me. I don't really care if these IDE generated files are separated into their own folders. (Should I?)
Dear [Flat] Black, You are right, it is in Checklist Volume#7, Chapter#9, Section#28, Sub-Section#12, Point#12. We are then pointed to Addendum Volume#12, Chapter#27, Section#98, Sub-Section#4, Point#14.C.
I was wondering what other people have for their 'standard' project directories.