티스토리 뷰
("Fundamentals of Software Architecture")
* Structure: 기반. 마이크로 서비스, 계층형 구조, 마이크로커널 등
Structure가 Architecture 전부를 설명하지는 않음.
* Architecture characteristics: 성공 기준. 시스템이 잘 동작하는지 확인하기 위해 필요함.
* Architecture decision: 시스템이 어떻게 만들어져야 하는가에 대한 결정. (표현 계층에서 DB에 직접 접근하면 안된다는 등), 개발 팀이 어떤 것을 해야 하고 하지 말아야 하는가
* Design Principle: 규칙이 아닌 가이드라인. (성능을 위해 가능하면 비동기 메시징을 사용한다, 특정 환경에서는 REST나 gRPC를 사용한다 등)