Skip to content

SOLID architecture and design

Architecture

  • Any software system has an [[architecture]]
  • There's no "the highest level of abstraction of a system"
  • Architecture has a social role (communicative)
  • [[DBMS]] and [[UI]] are just tools, strive to make them irrelevant.

Design

  • Software design is about designing the individual modules or components
  • What are the responsibilities, functions of module x? or class y?
  • What can it do? what not?

Architecture and Design Patterns

  • [[Architecture patterns]] are standard forms of relationships between components that are deemed to be significant.
  • They can be split into - [[behavioral design patterns]], [[structural design patterns]] and [[creational design patterns]].