Clean Architecture (클린 아키텍처) 클린 아키텍처는 계층을 크게 나누어서 각 분리된 클래스가 한 가지 역할만 수행하도록 구현하는 방식입니다. 계층 구조를 보면, 외부에서 내부로 의존성을 가지고 있기 때문에 내부로 갈수록 의존성을 낮아지게 됩니다. 즉, 어떠한 동작을 할 때 자기보다 내부에 있는 계층이 변화하면 동작을 행하는 계층에도 영향이 있을 수도 있지만, 자신의 외부에 있는 계층이 변화하는 것 때문에 동작을 행하는 계층에 영향이 있어서는 안 됩니다. 쉽게 패키지 구조 탐색이 가능해집니다. 프로젝트의 유지 보수가 편리해집니다. 새로운 기능을 추가할 때, 안정적으로 빠르게 적용이 가능합니다. 테스트가 용이합니다. Clean Architecture는 모바일 개발을 어떻게 도와주는가? - (..
아키텍처 패턴 아키텍처 패턴은 디자인 패턴과 소프트웨어공학에서 발생하는 문제를 해결한다는 점에서 비슷합니다. 하지만 디자인 패턴은 특정 문제를 해결하기 위한 방법이고, 아키텍처 패턴은 전체적인 소프트웨어에서 발생하는 문제들을 해결하기 위한 방법입니다. 앱 아키텍처 패턴에는 MVC, MVP, MVVM, MVI 등 다양한 패턴이 존재합니다. 각 앱의 특성에 맞게 알맞은 패턴을 적용해 앱을 설계해야 합니다. MVC 패턴 MVC 패턴은 Model, View, Controller로 구성되어 있습니다. Model : 앱의 데이터를 저장하고 처리하는 역할을 담당합니다. SQLite, File, Content Provider 등이 포함됩니다. View : 화면 구성을 담당하는 영역입니다. 이 영역은 View 클래스를 ..
1. Activity 생명주기 활동 수명 주기에 관한 이해 | Android 개발자 | Android Developers 활동은 사용자가 전화 걸기, 사진 찍기, 이메일 보내기 또는 지도 보기와 같은 작업을 하기 위해 상호작용할 수 있는 화면을 제공하는 애플리케이션 구성요소입니다. 각 활동에는 사용자 인터페 developer.android.com 앱의 완성도와 안정성을 높이기 위해 반드시 알아야 함 다른 앱으로 전환 시, 비정상 종료 되는 문제 사용자가 앱을 사용하지 않는데, 시스템 리소스가 소비되는 문제 사용자가 앱을 나갔다가 돌아왔을 때, 진행상태가 저장되지 않는 문제 화면이 가로 ↔ 세로 전환 될 때, 비정상 종료되거나, 진행상태가 저장되지 않는 문제 콜백 onCreate 필수적으로 구현해야함 Ac..