Skip to content

Architectural Styles

Fábio Nogueira edited this page Dec 21, 2016 · 3 revisions

Home -> Basic Concepts

Estilos Arquiteturais e Padrões de Projeto

Estilos Arquiteturais

Como descrito em [MKMG 1996], um estilo arquitetural provê um vocabulário de projeto (clients and servers, pipes and filters, blackboards, etc.) e um conjunto de regras determinando como os elementos que compõem o vocabulário podem interagir, em outras palavras, um estilo arquitetural provê uma linguagem especializada que pode ser utilizada na descrição de uma classe de problemas.

Padrões de Projeto

In the sequence we present a small list of design patterns that are used in Dsoa project.

  • Proxy Pattern

    Additional information: http://www.oodesign.com/proxy-pattern.html

  • Interceptor Pattern

    Additional information: http://kircher-schwanninger.de/michael/publications/ieee_internet.pdf

  • Type Object Pattern(by Ralph Johnson & Bobby Woolf):
    Decouple instances from their classes so that those classes can be implemented as instances of a class. Type Object allows new "classes" to be created dynamically at runtime.

    The key to the Type Object pattern is two concrete classes, one whose instances represent the application’s instances and another whose instances represent types of application instances. Each application instance has a pointer to its corresponding type.

    Type Objects are usually used in Reflective Middleware to represente Metaobjects. In this context, "real objects" can delegate messages to their Type Objects, which implement the expected behavior. The real objects can also act as a Decorators, enhancing messages before forwarding them to the Type Object.

    The Type Object Pattern

    Additional information: http://www.cs.ox.ac.uk/jeremy.gibbons/dpa/typeobject.pdf

  • Extension Objects Pattern(by Erich Gamma): This pattern should be used when we anticipate that an object’s interface needs to be extended in the future. Additional interfaces are defined by extension objects. This means that this patterns enable us to extend the behavior of an object. It can be used when the subject can assume different roles (even unantecipated) roles.

    The Extension Object Pattern

References

[MKMG 1996] Architectural Styles, Design Patterns, and Objects Additional information: http://www.mif.vu.lt/~plukas/resources/Extension%20Objects/ExtensionObjectsPattern%20Gamma96.pdf

Clone this wiki locally