Android

Layout xml 그룹 관리

c0de_h0ng 2021. 11. 16. 23:00
728x90

안드로이드 프로젝트를 생성하면 제일 먼저 만나는 layout 리소스는 activity_main.xml이다.

"activity_main.xml 흠.. activity 성격에 화면 이름은 main 이구나"라고 추측이 가능하다. 하지만 이러한 layout 리소스 파일은 프로젝트 단위(앱) 사이즈에 따라서 개수가 많아지게 되면 유지보수 효율성 및 가독성이 떨어진다. 그러면 layout 리소스 파일을 관리를 어떻게 하면 될까?

Layout 리소스 관리를 해야 하는 3가지 이유

  • xml 네이밍을 통해서 Root를 추적하기에 용이
  • 유지보수 측면에서 효율성
  • xml 네이밍 가독성 증가

Layout 리소스 관리 방법

  • Layout 리소스 네이밍
  • 플러그인 이용

Layout 리소스 네이밍

Layout 리소스 네이밍 방법은 네이밍 규칙을 만들어서 layout 리소스를 생성할 때 적용하는 것이다.

Layout 리소스 네이밍 적용 방법

👉 {루트}_{화면}. xml

//예시(내정보에 속해 있는 앱 환경 설정)
my_info_app_preference.xml

Layout 리소스 네이밍 적용

layout 리소스 네이밍 적용 전

위 4가지 리소스 파일은 맨 앞에 app이 붙어 있어서 앱에 관한 것으로 생각할 수 있지만 실제로는 서로가 관련이 없는 layout 리소스 파일이다.

layout 리소스 네이밍 적용 후

위에 6가지 리소스 파일은 맨 앞에 gift를 통해서 선물에 관한 layout리소스 파일인 것을 알 수 있다.

플러그인 이용

Android Studio에서는 편리한 개발을 위해 플러그인을 제공하고 있다. 그중에 Android File Grouping Plugin을 사용하면 특별한 layout 리소스 네이밍 규칙 없이 플러그인에서 자동으로 파일 단위로 나눠서 관리를 해준다.

- 플러그인 설치 방법

  1. Android File Grouping 플러그인 설치(링크 -> https://plugins.jetbrains.com/plugin/7876-android-file-grouping/versions)
  2. zip 파일 형식인 Android_File_Grouping.zip
  3. Preference(File) → Plugins 진입 후 'Install Plugin from Disk' 눌러서 다운로드한 zip 파일을 선택한다.
  4. 'Apply' → 'OK' 후 Android Studio 재시작한다.
  5. Project를 선택한다.
  6. layout 폴더에서 왼쪽 마우스 클릭 후 Group을 설정한다.
  7. layout 하위 depth로 폴더가 생성된다.

플러그인 적용

플러그인 적용 전

 

플러그인 적용 후

 

어플을 개발하고 유지 보수하는 것은 마라톤이라고 생각한다. 특히 인하우스 개발인 경우에는 처음부터 설계를 철저하고 명확하게 해야 나중에 고생을 안 한다.

처음 어플을 만들 때는 리소스 관리를 고려하지 않은 채 공장처럼 layout 리소스 파일을 찍어대너니 1년 뒤에는 "내가 이런 layout을 만들어었나?"라고 생각이 들었다.

따라서 개발 시작 전에 첫 번째 방법인 Layout 리소스 네이밍을 사전에 정의한 규칙대로 생성하거나 플러그인을 이용하면 100개, 1000개 이상의 xml이 있어도 처음 보는 개발자도 유추가 가능하며 기존 개발자는 유지보수 측면에서 효율성을 증가시킬 수 있다.