When working on an application Module a developer should decide how it will be used by other modules. This is known as the Module's interface. It basically describes which module objects can be accessed by other modules.
A Module Interface is described by setting the value of the Object Visibility property of its objects.
Tips on how to defining the interface#
An interface must be easy to use and to learn, and hard to misuse. It must be kept in mind that its main purpose is to expose a set of functionalities in order to satisfy a set of requirements. It is adviced to be thought to keep it easy to read, mantain and extend, the best way in doing so is keeping it simple.
- Use the Module Interface Tab to have a clearer vision of the interface.
- Keep it well documented, it is the 'face' of the Module, it should be easy to understand by anyone.
- Keep it simple, minimize changes. Keep in mind though that it will possibly change, therefore make changes as friendly as possible.
- Use decriptive names — for objects, methods, parameters, etc.
And consistently name them.
- The implementation details should not be exposed in the interface.