Presentation–abstraction–control

Presentation–abstraction–control

Presentation–abstraction–control (PAC) is a software architectural pattern. It is an interaction-oriented software architecture, and is somewhat similar to model–view–controller (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 .[1]

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.

The structure of an application with PAC.

Hierarchical model–view–controller (HMVC)

A variation of MVC similar to PAC was published in an article[2] in JavaWorld Magazine, the authors apparently unaware[3] of PAC which was published 13 years earlier. The main difference between HMVC and PAC is that HMVC is less strict in that it allows the view and model of each agent to communicate directly, thus bypassing the controller.

The controller has some oversight. The controller selects the model and then selects the view, so there is an approval mechanism by the controller. The model prevents the view from accessing the data source directly.

See also

References

Notes

  1. ^ Kai, Qian (2009). "Interaction-oriented Software Architectures". Software Architecture and Design Illuminated. Jones and Bartlett Illuminated. pp. 200. ISBN 9780763754204. 
  2. ^ Jason Cai, Ranjit Kapila, and Gaurav Pal (July 2000). "HMVC: The layered pattern for developing strong client tiers". JavaWorld. http://www.javaworld.com/javaworld/jw-07-2000/jw-0721-hmvc.html. Retrieved 2006-05-25. 
  3. ^ "TP" (2000). "Is HMVC PAC? (letter to the editor)". JavaWorld. Archived from the original on 2005-02-05. http://web.archive.org/web/20050205080537/http://www.javaworld.com/javaworld/jw-09-2000/jw-0908-letters.html. Retrieved 2006-05-25. 
  4. ^ Laurence Nigay; Joëlle Coutaz (1991). "Building User Interfaces: Organizing Software Agents.". ESPRIT '91 Conference. Brussels, Belgium: November 1991. http://citeseer.ist.psu.edu/nigay91building.html. 
  5. ^ Laurence Nigay (January 1994) (in French, with abstract in English) (PDF). Conception et modélisation logicielles des systèmes interactifs : application aux interfaces multimodales. PhD dissertation, 315 pages, University of Grenoble, France. pp. 131–268. http://iihm.imag.fr/publs/1994/THESE1994_Nigay.pdf. 
  6. ^ Nigay, Laurence; Joëlle Coutaz (1997). "Software Architecture Modelling: Bridging Two Worlds Using Ergonomics and Software Properties.". Formal Methods in Human-Computer Interaction. Springer-Verlag. chapter 3, pp. 49–73. ISBN 3-540-76158-6. http://iihm.imag.fr/publs/1997/FormalMethodChapNigay97.pdf. 

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Presentation Abstraction Control — Saltar a navegación, búsqueda La estructura de una aplicación con PAC. PAC (Presentation Abstraction Control, o en español, Presentación Abstracción Control) es un patrón de arquitectura de software para sistemas interactivos basada en una… …   Wikipedia Español

  • Presentation-abstraction-control — NOTOC Presentation abstraction control (PAC) is a software architectural pattern, somewhat similar to model view controller (MVC). PAC is used as a hierarchical structure of agents, each consisting of a triad of presentation, abstraction and… …   Wikipedia

  • Presentation-Abstraction-Control — Darstellung Abstraktion Steuerung bzw. englisch Presentation Abstraction Control (PAC) bezeichnet ein Architekturmuster zur Strukturierung von interaktiven Softwaresystemen. Will man diese Systeme so entwickeln, dass sie aus einzelnen Teilen… …   Deutsch Wikipedia

  • Presentation, abstraction, controle — Présentation, abstraction, contrôle Pour les articles homonymes, voir PAC. Le patron de conception PAC a été introduit par la chercheuse en informatique grenobloise Joëlle Coutaz dans les années 1980 en tant que modèle abstrait d architecture… …   Wikipédia en Français

  • Présentation, Abstraction, Contrôle — Pour les articles homonymes, voir PAC. Le patron de conception PAC a été introduit par la chercheuse en informatique grenobloise Joëlle Coutaz dans les années 1980 en tant que modèle abstrait d architecture logicielle pour les interfaces homme… …   Wikipédia en Français

  • Présentation, abstraction, contrôle — Pour les articles homonymes, voir PAC. Le patron de conception PAC a été introduit par la chercheuse en informatique grenobloise Joëlle Coutaz dans les années 1980 en tant que modèle abstrait d architecture logicielle pour les interfaces homme… …   Wikipédia en Français

  • Présentation, Asbtraction, Contrôle — Présentation, abstraction, contrôle Pour les articles homonymes, voir PAC. Le patron de conception PAC a été introduit par la chercheuse en informatique grenobloise Joëlle Coutaz dans les années 1980 en tant que modèle abstrait d architecture… …   Wikipédia en Français

  • Model–view–controller — A general representation of the MVC design pattern. Model view controller concept. The solid line represents a direct as …   Wikipedia

  • Model-view-controller — (MVC) is an architectural pattern used in software engineering. Successful use of the pattern isolates business logic from user interface considerations, resulting in an application where it is easier to modify either the visual appearance of the …   Wikipedia

  • Component-based usability testing — (CBUT) is a testing approach which aims at empirically testing the usability of an interaction component. The latter is defined as an elementary unit of an interactive system, on which behaviour based evaluation is possible. For this, a component …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”