참고한 글

  1. https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html
  2. https://blog.coderifleman.com/2017/12/18/the-clean-architecture/

Clean Architecture에 대해 적용해 보았으나 깊이 있게 공부하기 위해 작성된 내용을 정리하겠습니다.

Untitled

이 그림에서 알아야 할 부분이 무엇일까?

위의 아키텍처들의 세세한 부분은 모두 다르지만 매우 비슷하기도 하다고 한다. 이들은 모두 같은 목적을 갖고 있는데 그것은 바로 **관심사의 분리**이다.

관심사란 무엇일까?

<aside> 💡 소프트웨어를 계층으로 나눔으로써 관심사를 분리한다. 그리고 모두 비지니스 규칙을 위해 최소 하나 이상의 계층과 인터페이스를 위한 또 다른 계층을 두고 있다고 한다.

</aside>

관심사란 해석하기 나름일 수 있지만, 역할을 의미하지 않을까? 각각 역할을 나누고 비지니스 규칙으로 Protocol을 각자 가질 수 있지 않을까?