목록분류 전체보기 (57)
SW 공부노트

저장소 패턴은 데이터의 출처에 관계 없이 동일한 인터페이스로 데이터에 접근할 수 있도록 하는 패턴이다. 즉, 데이터소스(DataSource)를 캡슐화 시킨다. 위 이미지를 통해 쉽게 이해할 수 있다. ViewModel에서 직접 데이터를 가져오는 것이 아니라 Repository에 접근해 데이터를 받아오는 것이다. Repository에서 Remote Data인지, Loval Data인지 필요한 데이터를 가져와 ViewModel에 전달해준다. 즉, Data Layer가 캡슐화되고 ViewModel이 포함된 Presentation Layer에서 직접 Data Layer를 호출하지 않고, Repository를 통해서만 접근이 가능하게 되는 것이다. * Data Layer = 리포지터리 + 데이터 소스 Data L..
https://developer.android.com/codelabs/android-hilt?hl=ko#0 Android 앱에서 Hilt 사용 | Android 개발자 | Android Developers 이 Codelab에서는 Hilt를 사용하여 종속 항목 삽입을 실행하는 Android 앱을 빌드해 보겠습니다. developer.android.com 이 글은 안드로이드 developers에서 제공하는 Android 앱에서 Hilt 사용 코드랩을 공부하며 작성한 글입니다. DI using Hilt DI는 프로그래밍에서 널리 사용되는 기법으로, DI 원칙을 따르면 훌륭한 앱 아키텍처를 설계할 수 있다. DI를 구현하면 다음과 같은 이점이 있다. 코드 재사용 가능 리팩터링 편의성 테스트 편의성 Hilt는 독..
Dependency 란? Dependency는 '의존성'을 의미한다. 의존성이란 하나의 객체가 다른 객체에 의존하는 것을 말한다. 즉, 하나의 객체가 어떤 용로도 다른 객체에 필요한 것을 의미한다. 함수에 필요한 클래스 또는 참조변수나 객체에 의존하는 걸 예로 들 수 있다. class Worker{ private car = Car() fun commute(){ car.drive() } } 위 예제에서 Worker 객체는 Car 객체에 의존하고 있다. Worker 객체 내에 Car 객체가 존재하므로 Worker 객체가 생성되면 Car 객체는 계속 존재해야 하는 것이다. Worker 객체가 commute 함수를 사용하려면 Car 객체가 필요하기 때문에 Worker가 Car에 의존한다고 볼 수 있는 것이다. ..

https://developer.android.com/jetpack/guide?hl=ko 앱 아키텍처 가이드 | Android 개발자 | Android Developers 앱 아키텍처 가이드 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 이 가이드에는 고품질의 강력한 앱을 빌드하기 위한 권장사항 및 권장 아키텍처가 포함 developer.android.com 이 글은 안드로이드 developers의 앱 아키텍처 가이드를 공부하며 작성한 글입니다. App Architecture Guide 모바일 앱 사용자 환경(Mobile app user experience) 일반적인 안드로이드 앱에는 Activity, Fragment, service, content provider, br..