"Clean code does one thing well.”
클린 코드는 하나의 일을 잘 하는 코드이다.
- Bjarne Stroustrup, inventor of ‘C++
“Clean code is simple and direct."
클린 코드는 간결하며, 직접적이다.
- Grady Booch, author of ‘Object-Oriented Analysis and Design with Applications’
시스템의 각 요소들을 명확하게 분리하면서도, 유연하게 연결될 수 있도록 디자인 하는 SW 설계 구조

구성 요소 분리
클린 아키텍처는 소프트웨어 시스템의 다양한 부분을 독립적인 구성 요소로 분리하는 것을 강조하기에, 시간이 지남에 따라 시스템을 더 쉽게 유지 관리할 수 있습니다.
모듈화
클린 아키텍처는 모듈식 설계를 권장합니다. 이는 시스템의 개별 구성 요소를 분리해, 테스트와 유지보수를 쉽게 만들어 줍니다.
확장성
클린 아키텍처는 시스템 구축에 사용되는 기본 기술과 요구사항의 변화를 수용할 수 있는 확장 가능한 설계를 제공합니다.
재사용성
클린 아키텍처는 여러 시스템에서 재사용 가능한 컴포넌트를 만드는 것을 장려합니다.
이이 따라, 개발자가 다른 SW혹은 기능을 개발 할 때 구축하는 데 필요한 시간과 노력이 줄어들게 됩니다.
개념의 단순함
클린 아키텍쳐의 개념은 단순하고, 이해 하기도 굉장히 간단합니다.
워낙 개념이 이해하기 쉽기에 여러 개발자들과 IT 스타트업들이 도입을 시도했고, 하나의 큰 트렌드로 이어지게 되었습니다.

reference
https://blog.toktokhan.dev/%EC%9A%94%EC%A6%98-%EB%8C%80%EC%84%B8-clean-architecture-67b80df66c6