In this article Damian Conway outlines ten development practices that he considers essential for developing big, business critical systems. Also, incredibly useful for developing big, user critical Cocoa programs.
The examples are in Perl, but the development practices are basic good practice and can be applied to any language.
A short summary:
- Design the Module’s Interface First
- Write the Test Cases Before the Code
- Create Standard Documentation Templates for Modules and Applications
- Use a Revision Control System
- Create Consistent (Command-Line / User) Interfaces
- Agree Upon a Coherent Layout Style and Automate It (with perltidy)
- Code in Commented Paragraphs
- Throw Exceptions Instead of Returning Special Values or Setting Flags
- Add New Test Cases Before you Start Debugging
- Don’t Optimize Code—Benchmark It