Smalltalk Standards

Why Have Standards?

  • The aim is higher quality code
  • Towards "Right First Time"
  • Eases Re-Use by limiting surprises

BUT:

There's a trade-off between standards and the learning curve faced by developers

The fundamental aim of all standards must be to raise the quality of the delivered system. The need for any standards that do not contribute to this aim must be questioned.
"Right First Time" code is both more reliable and is easier to maintain than code which has evolved.
Developers should know what to expect when they look at any part of the system, that what is meant by "limiting surprises".
Complex standards need a steep learning curve so you should take care to make the standards accessible and to eliminate unnecessary standards.