As the comment says, think
Loose Coupling. :-)
It has been understood since the early 70's that interactions between parts of your software are the source of the hardest to track bugs, and inevitably this is where all sizeable software projects will run into problems. Pick up The Mythical Man-Month for details.
What this means is that you should define your software in terms of small components with well-defined, behaviour and simple interfaces. You then can hook them up together keeping interaction between components to a minimum.
As for books, well I am a big fan of Steve McConnell, Code Complete is a classic that explains a lot of how to do the factoring at a low level, and offers references on topics it doesn't cover (like testing).
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.