In software development, presentation logic is concerned with how business objects are displayed to users of the software, e.g. the choice between a pop-up screen and a drop-down menu. The separation of business logic from presentation logic is an important concern for software development and an instance of the separation of presentation and content.
One major rationale behind "effective separation" is the need for maximum flexibility in the code and resources dedicated to the presentation logic. Client demands, changing customer preferences and desire to present a "fresh face" for pre-existing content often result in the need to dramatically modify the public appearance of content while disrupting the underlying infrastructure as little as possible.
The distinction between "presentation" (front end) and "business logic" is usually an important one, because:
- the presentation source code language may differ from other code assets;
- the production process for the application may require the work to be done at separate times and locations;
- different workers have different skill sets, and presentation skills do not always coincide with skills for coding business logic;
- code assets are easier to maintain and more readable when disparate components are kept separate and loosely coupled;
- Paragon Corporation (2003-07-19). "Separation of Business Logic from Presentation Logic in Web Applications".
- Parr, Terence John (2004). Enforcing strict model-view separation in template engines. Proceedings of the 13th international conference on World Wide Web. ISBN 1-58113-844-X.