The first technique I'd like to discuss deals with creating more easily extensible classes.
By extensible, I mean classes that are easy for other users to extend in any way that they see fit.