Karl Lieberherr
Encyclopedia
Karl J. Lieberherr is a Professor of Computer Science at Northeastern University, in Boston.

He did his studies at ETH Zurich
ETH Zurich
The Swiss Federal Institute of Technology Zurich or ETH Zürich is an engineering, science, technology, mathematics and management university in the City of Zurich, Switzerland....

, obtaining an M.S. in 1973 and a Ph.D. in 1977.

He wrote the first book about adaptive programming. The work on this theme was one of several secondary influences on the development of aspect-oriented programming
Aspect-oriented programming
In computing, aspect-oriented programming is a programming paradigm which aims to increase modularity by allowing the separation of cross-cutting concerns...

.

Adaptive programming tries to create applications that are easy to maintain and evolve, creating a new abstraction layer in the design and implementation of Object-Oriented
Object-oriented programming
Object-oriented programming is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as data abstraction,...

 Applications. This concept takes encapsulation
Information hiding
In computer science, information hiding is the principle of segregation of the design decisions in a computer program that are most likely to change, thus protecting other parts of the program from extensive modification if the design decision is changed...

 to a new level allowing changes in the way an object works without changing the interface with other objects. This technique solves the situations where an object takes assumptions about how other objects work and a change in this object takes down that assumption creating a chain effect in the rest of the system.

Aspect oriented programming affects the way an application is created. Following the directives of this concept, one could create separate objects that treat data
Data
The term data refers to qualitative or quantitative attributes of a variable or set of variables. Data are typically the results of measurements and can be the basis of graphs, images, or observations of a set of variables. Data are often viewed as the lowest level of abstraction from which...

and process in a separated way. This allows a flexible application that can change and evolve easily.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK