"Some Principles for judging whether code smells bad or good are defined in PrinciplesOfObjectOrientedDesign." . . . .