HOME

TheInfoList



OR:

Presentation–abstraction–control (PAC) is a software
architectural pattern An architectural pattern is a general, reusable solution to a commonly occurring problem in software architecture within a given context. The architectural patterns address various issues in software engineering, such as computer hardware perfor ...
. It is an interaction-oriented software architecture, and is somewhat similar to
model–view–controller Model–view–controller (MVC) is a software architectural pattern commonly used for developing user interfaces that divide the related program logic into three interconnected elements. This is done to separate internal representations of infor ...
(MVC) in that it separates an interactive system into three types of components responsible for specific aspects of the application's functionality. The abstraction component retrieves and processes the data, the presentation component formats the visual and audio presentation of data, and the control component handles things such as the flow of control and communication between the other two components. In contrast to MVC, PAC is used as a hierarchical structure of agents, each consisting of a triad of presentation, abstraction and control parts. The agents (or triads) communicate with each other only through the control part of each triad. It also differs from MVC in that within each triad, it completely insulates the presentation (view in MVC) and the abstraction (model in MVC). This provides the option to separately multithread the model and view which can give the user experience of very short program start times, as the user interface (presentation) can be shown before the abstraction has fully initialized.


History

PAC was initially developed by
French French (french: français(e), link=no) may refer to: * Something of, from, or related to France ** French language, which originated in France, and its various dialects and accents ** French people, a nation and ethnic group identified with France ...
computer scientist, Joëlle Coutaz in 1987. Coutaz founded the User Interface group at the Laboratoire de Génie Informatique of IMAG.


See also

* Action Domain Responder *
Hierarchical model–view–controller Hierarchical model–view–controller (HMVC) is a software architectural pattern, a variation of model–view–controller (MVC) similar to presentation–abstraction–control (PAC), that was published in 2000 in an article in JavaWorld Magazi ...
*
Model–view–presenter Model–view–presenter (MVP) is a derivation of the model–view–controller (MVC) architectural pattern, and is used mostly for building user interfaces. In MVP, the ''presenter'' assumes the functionality of the "middle-man". In MVP, all pr ...
*
Model–view–viewmodel Model–view–viewmodel (MVVM) is an architectural pattern in computer software that facilitates the separation of the development of the graphical user interface (GUI; the ''view'')—be it via a markup language or GUI code—from the developme ...
*
Presenter First Presenter first is a software development approach that combines the ideas of the model–view–presenter (MVP) design pattern, test-driven development, and feature-driven development. Approach Presenter first concentrates on transforming each ...
*PAC-Amodeus


Notes


References

* * * * * *


External links

* Architectural outline for the game
Warcraft ''Warcraft'' is a franchise of video games, novels, and other media created by Blizzard Entertainment. The series is made up of five core games: '' Warcraft: Orcs & Humans'', '' Warcraft II: Tides of Darkness'', '' Warcraft III: Reign of Chao ...
as it might be implemented using the PAC Architectural Pattern
Programming of the application PACcraft:Architecture
(in French)
Pattern:Presentation-Abstraction-Control
(pattern description)
PAC description in the Portland Pattern Repository
* WengoPhone is a
free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, ...
VoIP Voice over Internet Protocol (VoIP), also called IP telephony, is a method and group of technologies for the delivery of voice communications and multimedia sessions over Internet Protocol (IP) networks, such as the Internet. The terms Interne ...
application that is written using the PAC design pattern. *
description of PAC
and motivation for use in WengoPhone. *
demonstration code
courtesy of the OpenWengo community. * {{DEFAULTSORT:Presentation-Abstraction-Control Software architecture Software design patterns Programming paradigms Human–computer interaction User interfaces