아키텍처

개발/Android

[안드로이드] 클린 아키텍처 - (1) 개념

오늘의 주제는 로버튼 마틴 형님의 "클린 아키텍처"라는 개념이다. 많은 기업들이 해당 아키텍처 구조를 사용하고 있으며, 비즈니스 로직 덩어리가 클수록 장점이 부각되는 구조이다. 하지만 기존의 "클린 아키텍처"라는 개념은 분야에 구애받지 않는 개념이라 안드로이드에서는 완벽하게 호환되지 않는다. 그래서 오늘은 안드로이드에서의 클린 아키텍처에 대해 설명하고자 한다. 구조도를 보면 컴포넌트나 의존성 구조가 조금 다르니 그 부분을 유의해서 보면 이해가 쉬울 것이다. 클린 아키텍처의 핵심적인 역할을 하는 SOLID에 대해 궁금하다면 이 포스팅을 참고하면 도움이 될 것이다. 클린 아키텍처와 SOLID클린 아키텍처는 이제 안드로이드 진영의 많은 기업들이 선호하는(?) 아키텍처가 되었다.내가 이 책을 읽었던 작년 이 맘..

개발/Android

[안드로이드] AAC ViewModel과 MVVM ViewModel

안드로이드 개발자라면 MVVM이 대세라는 말들과 그에 대한 여러 정보를 어렵지 않게 많이 접해봤을 것이다. 많은 기업들이 MVVM 패턴을 사용하고 있고, 여러 채용 공고들에도 아키텍처에 대한 이해나 MVVM 실무 경험 등이 푸함되어 있기 때문이다. 그래서 오히려 무지성으로 ViewModel에 대한 이해 없이 겉핥기식 MVVM 패턴을 사용하는 사람도 많아진 것 같다. 0. ViewModel이 왜 두가지로 나뉘게 되었는가 구글이 Jetpack을 내놓기 이전부터 개발자들은 MVVM 패턴을 적용하여 개발을 하고 있었다. 그러다 구글이 Jetpack을 내놓으면서 그 당시 개발자들에겐 낯익은 ViewModel도 포함되어 있어 다들 기존의 MVVM 구조에서 사용하던 ViewModel을 구글에서 다듬어 내놨으리라 기대..

개발/Android

Repository 패턴을 사용하는 이유

오늘은 많은 사람들이 애용하는 디자인패턴 중 하나인 Repository 패턴이다.1. Repository Pattern이란?ViewModel(Domain layer)과 Data 저장소 사이인 Data layer에 중간 계층(Repository)을 만들어 데이터의 출처에 구애받지 않고 동일한 인터페이스로 접근할 수 있게 만드는 패턴 여기서 동일한 인터페이스로 접근한다 라는 말의 뜻이 잘 이해가 되지 않을 수 있다. 간단한 예시를 들어보겠다. A라는 내부 DB에서 데이터를 가져오고, 추가적으로 B라는 외부 출처에서도 데이터를 가져와야하는 상황이다. 여기서 우리가 A와 B 둘 모두의 데이터에 접근 및 사용하기 위해서는 A라는 내부 DB에 대한 처리 + B라는 외부 DB 이 둘 모두에 대한 작업이 필요할 것이다..

최선의 최선
'아키텍처' 태그의 글 목록