Android/아키텍쳐6 레이어 구조를 모듈로 나눠보자 이전 글에서는 아키텍쳐를 어떻게 나누고 해당 레이어 간의 종속관계에 대해 설명하였다. 해당 레이어간의 종속관계를 그림으로 표현하면 아래와 같다. 그런데 우리는 인간이기에 레이어간 나누고 종속관계를 컨벤션으로 할지어도 의존을 무시하고 개발 할 수 있다. 그러므로 우리는 강제적으로 의존의 흐름을 만들어야 하는데 이는 라이브러리(혹은 모듈)을 만들어 의존을 강제할 수 있다. 이번 편에서는 라이브러리를 만들어 아키텍쳐로 나누는 법에 대해 알아보자. 먼저 레이어에 대해 모듈을 만드는 방법은 아래 사진과 같다. 처음 앱을 생성했을때 app모듈이 생되는데 Application 클래스가 위치된다. app모듈은 ui 모듈로 사용하고 나머지 domain 모듈과 data 모듈을 생성한다. 생성하면 아래와 같다. APP모듈(.. 2023. 7. 7. Architecture 구조도 (이론편 - Data 레이어) 2023. 7. 7. Architecture 구조도 (이론편 - Domain 레이어) 2023. 7. 7. Architecture 구조도 (이론편 - UI 레이어) 먼저 들어가기 앞서 내가 생각하는 아키텍쳐 구조도는 다음과 같다. 위의 그림에 대해 정리해 보면 아래와 같다. 이번 편은 UI레이어에 대한 설명과 나의 생각을 작성해 보겠다. 사용자 상호작용(예: 버튼 누르기) 또는 외부 입력(예: 네트워크 응답)으로 인해 데이터가 변할 때마다 변경사항을 반영하도록 UI가 업데이트되어야 합니다. 사실상 UI는 데이터 레이어에서 가져온 애플리케이션 상태를 시각적으로 나타난다. 아래의 사진과 같이 UI레이어는 UI element 와 State holder 가 합쳐진 형태이고 Data 레이어(or Domain 레이어)에 의존한다. UI 레이어 구현 방법 UI라는 용어는 UI라는 용어는 사용하는 API(뷰 또는 Jetpack Compose)와 관계없이 데이터를 표시하는 활동 및.. 2023. 7. 6. 아키텍쳐에 관하여 먼저 글을 작성하기 앞서, 나는 취업 전 클린 아키텍쳐? , MVVM? , MVC, MVP? , AAC-ViewModel과 MVVM-ViewModel 의 차이점 등등 아키텍쳐에 많은 노력을 들였었다. 이유는 지금 당장 공고를 보면 대기업 부터 스타트업까지 모든 공고에는 Google-Architecture-Guide Clean-Architecture, MVVM 이 자격 요건에 항상 작성되어 있었고 당연히 알아야 하고 확실히 알아야 한다는 생각에 사로잡혀 있었다. 그래서 많은 검색과 다양한 블로그를 읽고 다양한 유료강의를 듣고 유명한 개발자에게 DM을 보내 질문을 하였지만 각자가 생각한 Clean-Architecture에 대한 설명을 할 뿐 명확한 근거를 얻을 수 없었고 실체를 더더욱 알 수 가없었다. 그런.. 2023. 6. 28. 클린아키텍쳐에 대해서 정리해보자~ 먼저 클린 아키텍쳐에 대해 한마디로 설명하면 소프트웨어의 관심사를 계층별로 분리하는 소프트웨어 디자인 철학이다. 나는 이것을 알기 위해 MVP , MVVM , MVI, 구글 아키텍쳐 가이드 등등... 정말 많은 것을 찾아 봤지만 수많은 자신들의 아키텍쳐가 널려 있었다...(진짜 너무 헷갈려....) 그래서 이번에 정리를 해보려고 한다. 먼저 로버트C 마틴 아저씨가 정리한 것을 그림으로 표현한것이다. 위의 그림처럼 Domain Layer, Data Layer, Presentaion Layer(난 UI Layer라고도 부른다.) 총 세가지의 레이어로 나뉘어 분리시킨다. 셋의 관계는 Domain레이어는 아무에게도 의존하지 않고 언어(Java,Kotlin)의 형태로 되어 있다. Data레이어는 Domain레이어.. 2022. 9. 8. 이전 1 다음