These concepts simplify the construction and maintenance of applications through
modularization. An object is a ‘black box’ that can be constructed and modified independently of the rest of the system, provided the external interface is not changed. In some systems, for example Smalltalk, the ideas of encapsulation and information hiding are brought together. In Smalltalk the object structure is always hidden and only the operation interface can ever be visible. In this way the object structure can be changed without affecting any applications that use the object.