Skip to content

kfranckiewicz/architecture

 
 

Repository files navigation

Software Architectural Patterns and development approaches

Architecture is a structure, a way to distribute your application components in various groups. There is not a single way to organize your projects because it could depend on several aspects like project state, team size, time constraints, etc

An architectural pattern is a general, reusable resolution to a commonly occurring problem in software architecture within a given context. Pattern is an implementation that solves a particular problem. A principle is an abstraction, a guide to design.

There is no single way to structure a project, and each architecture has its own characteristics. Even though you do not define an architecture, following the next principles will lead you to maintain a well-organized code.

Principles

  • Stability
  • Performance
  • Durability
  • Scalability
  • Flexibility
  • Encapsulation
  • Testability
  • Separation of Concerns
  • Reduced Complexity (DI)
  • Concentrate on Domain/Business
  • Independence from framework, DB, UI, external service

Code Review

Coding

Read

About

Software Architectural Patterns

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published