Data Independence :
The technique of writing a program, function, or procedure in such a way that it will be able to perform its operation on data supplied to it without a built-in description of the data format.
Generically, the design of a function or program that obeys the principle of information hiding. A function or program is said to be encapsulated if other programs or functions have no knowledge of its inner workings. A data structure is said to be encapsulated if knowledge of its internal organization is limited to a single function or module.
See Also: Information Hiding, Lexical Scoping, Modularity, Side Effect
The resulting state of a module of a program written to conform to the principals of information hiding.
See Also: Information Hiding
Roughly, a measure of a system’s adherence to the principles of modular programming. The principles of modular programming are not precisely defined, but may be said to comprise these basic ideas: programs should be organized as well-defined modules; modules should correspond with syntactic units of the programming language (such as functions or source files); a module should accomplish a well-defined task; a module should interact with as few other modules as possible; interactions between modules should be explicitly specified in the source code for the modules; modules should obey the principle of information hiding.
See Also: Encapsulation, Information Hiding, Lexical Scoping, Side Effect
Generically, a procedure or function (or a set of related procedures and functions) that can be treated as a unit. Sometimes used to refer specifically to the code in a single object file, normally the result of compiling a single source file.
See Also: Object File, Program File
Side Effect :
An unexpected effect of executing a function or program. When a function changes the state of a system in a way that is not explicitly specified by the function’s name or calling protocol, the change is called a side effect. Reliance on side effects is contrary to the principles of modular programming.
See Also: Encapsulation, Information Hiding, Lexical Scoping, Modularity