SlideShare a Scribd company logo
안드로이드 Clean Architecture 적용기


Kurt 강현석
Android Programmer
SPOQA conference 2021 : Always Evolving!
SPOQA conference 2021 : Always Evolving!
SPOQA conference 2021 : Always Evolving!
목차
• Clean Architecture in Android

• Clean Architecture 적용기

• 마치며
SPOQA conference 2021 : Always Evolving!
Clean Architecture in Android
SPOQA conference 2021 : Always Evolving!
들어가기 전에
SPOQA conference 2021 : Always Evolving!
들어가기 전에
SPOQA conference 2021 : Always Evolving!
Clean Architecture
SPOQA conference 2021 : Always Evolving!
Clean Architecture
App
Domain
Data
SPOQA conference 2021 : Always Evolving!
MVVM
SPOQA conference 2021 : Always Evolving!
Data Layer
Data
SPOQA conference 2021 : Always Evolving!
Domain Layer
Domain
SPOQA conference 2021 : Always Evolving!
App Layer
App
SPOQA conference 2021 : Always Evolving!
정리하면
App
Domain
Data
SPOQA conference 2021 : Always Evolving!
Clean Architecture 적용기
SPOQA conference 2021 : Always Evolving!
기존 App 구조
SPOQA conference 2021 : Always Evolving!
어디서부터 시작해야 될까요?
SPOQA conference 2021 : Always Evolving!
그래서 저는…
SPOQA conference 2021 : Always Evolving!
기존 App 구조
App
SPOQA conference 2021 : Always Evolving!
Domain Module 추가
Domain
App
SPOQA conference 2021 : Always Evolving!
Repository 구현
Domain
App
SPOQA conference 2021 : Always Evolving!
Data Module 추가
App
Domain
Data
SPOQA conference 2021 : Always Evolving!
UseCase 구현
Domain
UseCase
ViewModel
Repository
SPOQA conference 2021 : Always Evolving!
끝난 것 같지만…
SPOQA conference 2021 : Always Evolving!
의존성 문제
App
Domain
Data
SPOQA conference 2021 : Always Evolving!
예를 들면
SPOQA conference 2021 : Always Evolving!
예를 들면
SPOQA conference 2021 : Always Evolving!
예를 들면
SPOQA conference 2021 : Always Evolving!
Mapper
SPOQA conference 2021 : Always Evolving!
Mapper
SPOQA conference 2021 : Always Evolving!
Mapper
SPOQA conference 2021 : Always Evolving!
Model Naming
App Layer Domain Layer Data Layer
Entity
DTO
VO
SPOQA conference 2021 : Always Evolving!
Entity
Data Layer
Entity
SPOQA conference 2021 : Always Evolving!
Data Transfer Object
Domain Layer
DTO
SPOQA conference 2021 : Always Evolving!
View Object
App Layer
VO
SPOQA conference 2021 : Always Evolving!
Model & Mapper
App Layer Domain Layer Data Layer
Entity
Mapper
DTO
Mapper
VO
SPOQA conference 2021 : Always Evolving!
정리하면
App Layer Domain Layer Data Layer
Entity
DataSource
Repository
Mapper
UseCase
DTO
ViewModel
View
Mapper
VO
SPOQA conference 2021 : Always Evolving!
마치며
SPOQA conference 2021 : Always Evolving!
마치며
좋았던 점
- S.O.L.I.D 원칙 준수
- Testability
아쉬운 점
- 많은 클래스 생성
[제3회 스포카콘] [안드로이드] 클린 아키텍처 적용하기

More Related Content

PDF
iOS Modular Architecture with Tuist
PDF
클린아키텍처와 DDD - day1
PDF
Visual Dataprepで建築データを美味しく下ごしらえ UNREAL FEST EXTREME 2021 SUMMER
PPTX
初心者ががんばる建築ビジュアライゼーション:ライティング編 - UE4勉強会in大阪#4
PDF
徹底解説!UE4を使ったモバイルゲーム開発におけるコンテンツアップデートの極意!
PPTX
[CGWCC2016] UE4でリギング
PDF
NDC15 - 사례로 살펴보는 MSVC 빌드 최적화 팁
PDF
はじめてのScriptable Build Pipeline
iOS Modular Architecture with Tuist
클린아키텍처와 DDD - day1
Visual Dataprepで建築データを美味しく下ごしらえ UNREAL FEST EXTREME 2021 SUMMER
初心者ががんばる建築ビジュアライゼーション:ライティング編 - UE4勉強会in大阪#4
徹底解説!UE4を使ったモバイルゲーム開発におけるコンテンツアップデートの極意!
[CGWCC2016] UE4でリギング
NDC15 - 사례로 살펴보는 MSVC 빌드 최적화 팁
はじめてのScriptable Build Pipeline

What's hot (20)

PDF
CERT コーディングスタンダードご紹介 (OSC2017@Osaka)
PDF
UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)
PDF
ゲームジャムに使える! いろんな素材サイトとライセンスに関するご注意
PDF
게임 애셋 스트리밍 패치
PDF
UE4を使用したバーチャルヒューマンの映像制作 UNREAL FEST EXTREME 2021 SUMMER
PDF
第2回UE4勉強会 in 大阪 - マテリアル基礎・初級
PDF
ピクサー USD 入門 新たなコンテンツパイプラインを構築する
PDF
UE4とBlenderでランニングコストを抑えるモダンなワークフロー
PPT
SonarQube Overview
PDF
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
PDF
「Press Button, Drink Coffee」 UE4における ビルドパイプラインとメンテナンスの全体像
PPTX
Unityネイティブプラグインマニアクス #denatechcon
PPTX
Localization case study on EARTH DEFENSE FORCE: IRON RAIN
PPTX
UE4 Saitama 初心者向けハンズオン #7『サウンド機能』
PDF
UE4背景アーティスト勉強会(前編) 背景ワークフロー解説
PPTX
UE4で実現できた理想のゲーム開発ワークフロー
PDF
【Unity道場 2017】パーティクルエフェクト実践編 ~ヒットエフェクト制作プレイクダウン~
PPTX
世界へ向けたゲーム開発 〜ローカライズ支援ツール『LION』〜
PDF
UE4のモバイル開発におけるコンテンツアップデートの話 - Chunk IDとの激闘編 -
PDF
猫でも分かるUE4のポストプロセスを使った演出・絵作り
CERT コーディングスタンダードご紹介 (OSC2017@Osaka)
UE4 Hair & Groomでのリアルタイムファーレンダリング (UE4 Character Art Dive Online)
ゲームジャムに使える! いろんな素材サイトとライセンスに関するご注意
게임 애셋 스트리밍 패치
UE4を使用したバーチャルヒューマンの映像制作 UNREAL FEST EXTREME 2021 SUMMER
第2回UE4勉強会 in 大阪 - マテリアル基礎・初級
ピクサー USD 入門 新たなコンテンツパイプラインを構築する
UE4とBlenderでランニングコストを抑えるモダンなワークフロー
SonarQube Overview
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
「Press Button, Drink Coffee」 UE4における ビルドパイプラインとメンテナンスの全体像
Unityネイティブプラグインマニアクス #denatechcon
Localization case study on EARTH DEFENSE FORCE: IRON RAIN
UE4 Saitama 初心者向けハンズオン #7『サウンド機能』
UE4背景アーティスト勉強会(前編) 背景ワークフロー解説
UE4で実現できた理想のゲーム開発ワークフロー
【Unity道場 2017】パーティクルエフェクト実践編 ~ヒットエフェクト制作プレイクダウン~
世界へ向けたゲーム開発 〜ローカライズ支援ツール『LION』〜
UE4のモバイル開発におけるコンテンツアップデートの話 - Chunk IDとの激闘編 -
猫でも分かるUE4のポストプロセスを使った演出・絵作り
Ad

Recently uploaded (20)

PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Electronic commerce courselecture one. Pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPT
Teaching material agriculture food technology
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Encapsulation theory and applications.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Reach Out and Touch Someone: Haptics and Empathic Computing
Network Security Unit 5.pdf for BCA BBA.
Electronic commerce courselecture one. Pdf
Spectral efficient network and resource selection model in 5G networks
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Teaching material agriculture food technology
Digital-Transformation-Roadmap-for-Companies.pptx
The AUB Centre for AI in Media Proposal.docx
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
MIND Revenue Release Quarter 2 2025 Press Release
Programs and apps: productivity, graphics, security and other tools
Mobile App Security Testing_ A Comprehensive Guide.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Advanced methodologies resolving dimensionality complications for autism neur...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Encapsulation_ Review paper, used for researhc scholars
Encapsulation theory and applications.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Ad

[제3회 스포카콘] [안드로이드] 클린 아키텍처 적용하기