amiry jd
amiry jd

Reputation: 27585

What's the difference between Design pattern, Architectural pattern, Architectural style, and Architecture?

Can anyone please describe the differences between Design pattern, Architectural pattern, Architectural style, and Architecture? Thanks in advance.

Upvotes: 2

Views: 1939

Answers (3)

Amit
Amit

Reputation: 21

  • An Architectural Style is the application design at the highest level of abstraction
  • An Architectural Pattern is a way to implement an Architectural Style
  • A Design Pattern is a way to solve a localized problem

For example:

  • What you want to implement in your project or requirement like REST or CRUD operation with high level of abstraction is Architecture style
  • How are you going to implement it is Architecture pattern
  • The problems you will encounter and are going to solve is Design pattern

Upvotes: 1

NidhinSPradeep
NidhinSPradeep

Reputation: 1304

Design pattern deals with implementaion of a common solution for ceratin problems that can happen while designing a large software application. The examples of problems which i meant here are - code duplication, maintainibility of code for future enhancement etc

Eg: Factory pattern, Dependency Injection pattern

Architectural patterns mainly deals with entire architecute of a software application. They are very re usable and generic and can be adopted based on the requirements.

Eg: MVC, REST, 3 Tier

Upvotes: 0

Rob Conklin
Rob Conklin

Reputation: 9456

Design Pattern generally refers to design pattern of a particular bit of code (a few objects or functions) such as Factory Pattern, or Visitor

An architectural pattern refers to the pattern design for a solution, such as Event-Driven, MVC, 3-Tier, etc. It is usually concrete, and can be plugged into a problem with a fairly known set of parameters.

Architectural Style is more abstract, and refers to things like Separation of Layers, SOA, etc. It is not a "solution" to a problem, but is a description of a design.

Architecture is the actual design and implementation of a given solution. It is concrete and specific to a specific solution.

Upvotes: 5

Related Questions