Layer Wise Design Patterns

Layered archietctures allows to use different design patterns at different layers. This post descttibes a taxonomy of design pattrens that could/should be used in each layer of architecture.

Presentation Layer

  • Intercepting Filter - Intercepts incoming requests and outgoing responses and applies a filter.
  • Context Object - Encapsulates state in a protocol-independent way to be shared throughout your application
  • Front Controller - A container to hold the common processing logic that occurs within the presentation tier
  • Application Controller - Centralizes control, retrieval, and invocation of view and command processing
  • View Helper - Encourages the separation of formatting-related code from other business logic
  • Composite View - suggests composing a View from numerous atomic pieces
  • Dispatcher View - defers business processing until view processing has been performed.

Business Layer

  • Business Delegate -reduces coupling between remote tiers and provides an entry point for accessing remote services in the business tier.
  • Service Locator - encapsulates the implementation mechanisms for looking up business service components.
  • Session Facade - provides coarse-grained services to the clients by hiding the complexities of the business service interactions.
  • Application Service - centralizes and aggregates behavior to provide a uniform service layer to the business tier services.
  • Business Object -implements your conceptual domain model using an object model.
  • Composite Entity -implements a Business Object using local entity beans and POJOs.
  • Transfer Object -provides the best techniques and strategies to exchange data across tiers
  • T O Assembler -constructs a composite Transfer Object from various sources
  • Value List Handler -uses the GoF iterator pattern to provide query execution and processing services

Integration Layer

  • Data Access Object -enables loose coupling between the business and resource tiers
  • Service Activator -enables asynchronous processing in your enterprise applications using JMS.
  • Domain Store -provides a powerful mechanism to implement transparent persistence for your object model.
  • Web Service Broker -exposes and brokers one or more services in your application to external clients as a web service using XML and standard web protocols

architectures design-patterns layer wise patterns architecture layers patterns

You May Also Enjoy

ELK Stack!

Layer Wise Design Patterns

Liskov Substitution Principle

Layer Wise Design Patterns

Static Class Vs SingleTon Pattern

Layer Wise Design Patterns

Chain of Responsibilty

Layer Wise Design Patterns

Dialogue & Discussion