스팀 앱 개발기 #20 - 클린 아키텍처를 위한 모듈 구성 (2)
API 연동을 구현하기 전에 클린 아키텍처를 앱에 적용하기 위한 모듈 구성을 진행하고 있습니다. 저번 포스트에서 데이터 역할을 맡을 dorian-steem-data 모듈을 추가하였구요. 이번 포스트에서는 도메인 역할을 맡을 dorian-steem-domain 모듈을 추가할 예정입니다.
도메인 모듈 추가하기
(1) Project Explorer에서 최상단 폴더를 마우스 오른쪽 버튼으로 클릭하고 팝업 메뉴 New - Module을 선택합니다.
(2) 도메인 모듈의 이름을 아래 그림과 같이 설정하고 Finish 버튼을 클릭합니다.
모듈 템플릿은 Java or Kotlin Library로 선택했습니다. 이 모듈에는 코틀린 언어로 데이터 클래스들만 정의할 예정이므로 안드로이드 관련 클래스들은 필요하지 않기 때문입니다.
(3) Project Explorer에서 dorian-steem-domain 모듈이 추가되었는지 확인합니다.
앞으로 어떤 클래스들을 정의할지는 다음 포스트에서 이어질 예정입니다.
SteemitAccount 클래스
이 클래스는 처음에는 비어 있습니다. 시험 삼아 데이터 클래스로 변환하구요. 계정 이름을 의미하는 account 필드를 추가해 봅니다.
data class SteemitAccount(
val account: String
)
나중에 계정 관련 필드들을 추가할 예정입니다.
GitHub Commit
마치며...
다음 포스트에서는 앱의 클린 아키텍처를 구현하기 위해 도메인 모듈 추가 방법에 대해 이야기하고자 합니다.
지난 스팀 앱 개발기
- #19 - 클린 아키텍처를 위한 모듈 구성 (1)
- #18 - VEST로부터 STEEM POWER를 계산하는 방법
- #17 - VEST를 STEEM POWER로 변환하기 위해 필요한 get_dynamic_global_properties API
- #16 - 지갑 내용을 읽기 위해 필요한 API
- #15 - 지갑 서브화면(WalletFragment) 레이아웃 구성해 보기
- #14 - 지갑 서브화면(WalletFragment)에서 계정 인식하기
- #13 - 프로파일 서브화면(ProfileFragment)에서 계정 인식하기
- #12 - 태그 서브화면에서 태그 인식하기
- #11 - 검색 레이아웃을 메인 화면에 적용
- #10 - 태그 및 계정 검색 레이아웃 만들기
- #9 - BaseActivity 클래스 정의 그리고 MainActivity 클래스에 적용
- #8 - BaseFragment 클래스 정의 그리고 기존 프래그먼트들에 적용
- #7 - ProfileFragment 그리고 WalletFragment에 데이터 바인딩 적용
- #6 - 태그별 검색 내용을 보여줄 TagsFragment에 데이터 바인딩 적용
- #5 - GitHub에 소스 올리기
- #4 - 하단 내비게이션의 탭 관련 클래스 이름 수정
- #3 - 하단 내비게이션 바의 아이콘, 텍스트 수정
- #2 - 프로젝트 생성
- #1 - 시작하며...
[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.