Clean Archeitecture에서 모르는 부분을 정리합니다.
4527 단어 AndroidarchitectureiOS
말하자면 구조를 청소하기 전에.
청정건물이 적힌 신청자를 보면 MVC, MVM 등의 아키텍처와 비교해 4층으로 둥근 그림을 함께 그리는 경우가 많다.(본가는 여기.이고 일본어로 번역하신 분.의 입구도 있다.)
나는 갑자기 이 그림을 보고도 어떻게 된 일인지 모르겠다.하지만 이 그림은 양파 구조와 육각 구조를 아는 것으로 이해할 수 있다.
육각 구조(Hexagonal Architecture)
나는 육각형 건축이 전통적인 MVC, MVM 등 차원 구조에서 전환하려고 시도한 것을 이해했다.
기존 계층 구조의 설명에서 흔히 볼 수 있는'왼쪽 UI에서 오른쪽 Data Store(또는 위에서 아래로) 정보를 전달한다'는 생각은 아니고, 시스템을'내쪽(application)과 바깥쪽(infrastructure)'으로 나누고, UI, 외부, DB, 외부, 서버의 통신도 바깥쪽으로 본다.밖→안→밖으로 흘러가!이런 생각.
기본적으로 이 밖→내→밖을 이해할 수 있으면 매우 가볍다.
양파 아키텍처
따라서 육각형 구조의 사상을 바탕으로 내외 계층을 더욱 실제적으로 분리하려고 한다양파 구조.
육각형 구조에 적용된 부분을 Application Service, Domain Service, Domain Model로 분해한다.하지만 이 세 사람이 무엇을 맡을지는 아직 명확하지 않다.(적어도 블로그에서)
클린 아키텍처
양파 구조의 목적과 거의 같을 수 있지만 각 구성 요소의 역할, DTO와 데이터베이스의 기록 데이터가 어느 정도 사용되어야 하는지 등을 더욱 명확하게 제시했다.따라서 실현할 때 양파 구조보다 청결 구조에 기반한 정보가 좋다.
구체적인 시행례와 MVC 등의 비교에는 이미 좋은 항목이 있어 생략했다.위키백과 항목을 참고하다.
아직 이해가 안 되는 부분.
1) 청정 구조도 오른쪽 하단의 흐름도에 대한 이해.
일반적으로 Input port/Output port은 육각 건축의 영향을 받는 부분이라고 생각하지만, 이 그림은 단방향으로 통행하는 화살표만 있다.예를 들어'UI→Usecase→외부 서버 통신'처리를 하는 경우 서버 응답을 처리할 때도'서버 응답→Usecase→UI'절차에 따라 오른쪽 아래 절차를 따를 수 있지 않겠는가?이 경우 학급 구성은?뭐, 샘플을 만들면 유창하겠지만 시간이 부족해서 더 빠를 수도 있어요.
(추기: 기타 항목 생각을 정리했다.)
2) DDD
Use Case는 Enity가 메소드를 가지는 쪽이나 Value Object를 사용해야 하는 쪽을 설계자에게 위임하는 범위로 구분됩니다.그래서 EVA의 절반까지 읽은 DDD 책을 읽어야 한다.그렇지 않으면 숲속에서 길을 잃을 것이다.
3) 애플리케이션의 전반적인 고려 사항
원래는 iOS 활동에서 알았기 때문에 스마트폰 애플리케이션을 기반으로 고려했지만, 스마트폰 앱의 경우 와이파이가 끊기거나 백스테이지에 갔다는 등 앱 전반에 몇 가지 관심사가 있는 것 같아요.이 상황에 대한 대처법을 어디서 정리할까 해서요.아마도 밖→안→바깥 부분은 변화가 없을 것이다. 안→바깥 부분에서 어떻게'전체적인 주지'를 할 것인가.뭐, 단순한 콜백이 아닌 것 같아.
생각을 정리해 보니 밖→안→밖에는 문제가 없는 것 같다.
(추기: 여기 다른 항목#3 생각을 정리했다.)
참고 자료
청결 구조
https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
http://blog.tai2.net/the_clean_architecture.html
http://dev.classmethod.jp/smartphone/iphone/event-report-ios-all-stars-2/
http://qiita.com/kondei/items/41c28674c1bfd4156186
양파 구조
http://jeffreypalermo.com/blog/the-onion-architecture-part-1/
https://www.infoq.com/jp/news/2014/11/ddd-onion-architecture
육각형 구조
http://blog.tai2.net/hexagonal_architexture.html
Reference
이 문제에 관하여(Clean Archeitecture에서 모르는 부분을 정리합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/gki/items/91386b082c57123f1ba0
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
1) 청정 구조도 오른쪽 하단의 흐름도에 대한 이해.
일반적으로 Input port/Output port은 육각 건축의 영향을 받는 부분이라고 생각하지만, 이 그림은 단방향으로 통행하는 화살표만 있다.예를 들어'UI→Usecase→외부 서버 통신'처리를 하는 경우 서버 응답을 처리할 때도'서버 응답→Usecase→UI'절차에 따라 오른쪽 아래 절차를 따를 수 있지 않겠는가?이 경우 학급 구성은?뭐, 샘플을 만들면 유창하겠지만 시간이 부족해서 더 빠를 수도 있어요.
(추기: 기타 항목 생각을 정리했다.)
2) DDD
Use Case는 Enity가 메소드를 가지는 쪽이나 Value Object를 사용해야 하는 쪽을 설계자에게 위임하는 범위로 구분됩니다.그래서 EVA의 절반까지 읽은 DDD 책을 읽어야 한다.그렇지 않으면 숲속에서 길을 잃을 것이다.
3) 애플리케이션의 전반적인 고려 사항
원래는 iOS 활동에서 알았기 때문에 스마트폰 애플리케이션을 기반으로 고려했지만, 스마트폰 앱의 경우 와이파이가 끊기거나 백스테이지에 갔다는 등 앱 전반에 몇 가지 관심사가 있는 것 같아요.이 상황에 대한 대처법을 어디서 정리할까 해서요.아마도 밖→안→바깥 부분은 변화가 없을 것이다. 안→바깥 부분에서 어떻게'전체적인 주지'를 할 것인가.뭐, 단순한 콜백이 아닌 것 같아.
생각을 정리해 보니 밖→안→밖에는 문제가 없는 것 같다.
(추기: 여기 다른 항목#3 생각을 정리했다.)
참고 자료
청결 구조
https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
http://blog.tai2.net/the_clean_architecture.html
http://dev.classmethod.jp/smartphone/iphone/event-report-ios-all-stars-2/
http://qiita.com/kondei/items/41c28674c1bfd4156186
양파 구조
http://jeffreypalermo.com/blog/the-onion-architecture-part-1/
https://www.infoq.com/jp/news/2014/11/ddd-onion-architecture
육각형 구조
http://blog.tai2.net/hexagonal_architexture.html
Reference
이 문제에 관하여(Clean Archeitecture에서 모르는 부분을 정리합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/gki/items/91386b082c57123f1ba0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)