You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
18 lines
690 B
18 lines
690 B
Designing good classes
|
|
----------------------
|
|
* To guide design on the class level, ask: "How will this class be used?"
|
|
|
|
* A class should represent one coherent abstraction or concept.
|
|
|
|
* Look for code reuse opportunities (would this class be useful elsewhere?)
|
|
|
|
* When working with a class externally, you should not have to understand the internal implementation.
|
|
|
|
* Every constructor and public method should leave the instance variables in a consistent and correct state for the next public method call.
|
|
|
|
* Generally avoid going over 7 (plus or minus 2) instance variables in a class.
|
|
|
|
* Do not repeat data unless truly necessary.
|
|
|
|
* Do not give variables more scope than they require.
|