[Android, Multi Module] 멀티 모듈을 위한 구조 설계
다중 모듈 탐색 권장사항유연성을 통해 탐색 그래프를 결합하여 앱의 완전한 탐색 그래프를 구성할 수 있다.- 단일 대상 활용 (fragment)- 일련의 관련 대상을 캡슐화하는 중첩 그래프- 중첩된 것처럼 다른 탐색 그래프 파일을 삽입할 수 있는 요소 활용 아래 예는 각 기능 모듈이 한 기능에 중점을 두고 이 기능을 구현하는 데 필요한 모든 대상을 캡슐화하는 단일 탐색 그래프를 제공한다.프로덕션 앱에는 이 상위 수준 기능 모듈의 구현 세부정보인 하위 모듈이 하위 수준에 여러 개 있을 수 있다.이러한 모듈은 간접적으로 App 모듈에 포함되어 진다. 각 기능 모듈은 자체 탐색 그래프와 대상이 있는 독립된 단위이다. (내비게이션 메뉴)app 모듈은 각각에 종속되므로 아래와 같이 build.gradle 파일에..
- [Android] Architecture/[Android] Multi Module
- · 2023. 7. 29.
[Android, Multi Module] 멀티모듈 구성
일반적인 모듈화 패턴 멀티 모듈로 프로젝트를 구성할 때, 모든 프로젝트에 맞는 하나의 모듈화 전략은 없다. Gradle의 유연한 특성으로 인해 프로젝트를 구성하는 방법에는 제약이 없으며, 다중 모듈로 Android 앱을 개발할 때 일반적인 규칙과 공통 패터만 지킨다면 자신만의 모듈화 전략을 세울 수 있다. 규칙1. 높은 응집력 및 낮은 결합력 원칙 가장 중요한 방법은 결합력 및 응집력 속성을 사용하는 것이다. 결합력은 모듈이 서로 종속된 정도를 측정하고, 응집력은 단일 모듈의 요소가 기능적으로 관련된 방식을 측정한다. 일반적으로 결합력은 낮추고 응집력은 높여야 한다. [낮은 결합력] - 모듈이 최대한 서로 독립적이어야 한다. - 한 모듈의 변경사항이 다른 모듈에 미치는 영향이 없거나 최소화 되어야 한다...
- [Android] Architecture/[Android] Multi Module
- · 2023. 7. 29.
[Android, Multi Module] 멀티모듈의 개념과 장단점
모듈화 ! 증가하는 코드베이스 문제 코드베이스에서 확장성, 가독성 및 저반적 코드 품질은 시간이 지남에 따라 감소하게 된다. 그 이유는 코드베이스 규모가 커지고 있음에도 불구하고 유지관리 담당자가 쉽게 유지관리할 수 있는 구조를 적용하기 위한 적극적인 조치를 취하지 않기 때문이다. 모듈화를 통해서 유지관리 가능성을 개선하고, 이러한 문제를 방지할 수 있는 방식으로 코드베이스를 구조화하는 방법이다. [모듈화] 모듈화는 코드베이스를 느슨하게 결합된 독립적인 부분으로 구성하는 방법이다. 각 부분이 모듈에 해당하며, 각 모듈은 독립적이며 명확한 역할을 한다. 하위 문제를 해결하기 위해 문제를 더 작고 쉬운 문제로 나누면, 대형 시스템 설계와 유지보수의 복잡성이 감소한다. 위 이미지는 다중 모듈 코드베이스에 종속..
- [Android] Architecture/[Android] Multi Module
- · 2023. 7. 29.