12 ms·
In your case you may want to start focusing on unit test-driven development and refactoring so that you don't have to rebuild your whole project just to impleme
by kyllo 12y ago
In your case you may want to start focusing on unit test-driven development and refactoring so that you don't have to rebuild your whole project just to implement and test a new feature. Mocking/stubbing out the dependencies of the code unit under test will help with this too.
Also, at a certain code base size you need to build abstractions and aggressively contain complexity in order to stay productive. This is the reason for Greenspun's Tenth Rule: http://en.m.wikipedia.org/wiki/Greenspun's_tenth_rule http://en.m.wikipedia.org/wiki/Greenspun's_tenth_rule
While humorous, it contains a kernel of truth. When complexity gets high you need to keep the project organized at a higher level, which eventually means using more sophisticated build tools, metaprogramming and/or macros to implement a DSL, or even bringing in a full-blown scripting language to write glue code that calls your core modules.