MVVM 디자인 패턴, LiveData로 반응 형 프로그래밍, 저장소 패턴, Room Persistence Library를 사용하여 제작 된 안드로이드 용 GitHub 클라이언트.
특징 : 페이지 매김, 검색 결과 캐싱 및 책갈피 추가 옵션.
코드는 기능별로 패키지화되어 있습니다. 데이터 패키지에는 로컬 데이터베이스 모델 클래스, 웹 서비스 및 리포지토리가 단일 진리 소스로 사용됩니다.
UI 패키지에는 앱의 각 화면에 대한 VIEW (활동) 및 VIEW MODEL (AndroidViewModel) 코드가 포함되어 있습니다. VIEW MODEL은 데이터 패키지의 VIEW 또는 MODEL 클래스에 대한 참조를 보유하지 않으므로 코드가 모듈화되어 있으며 화면을 변경하고 기능을 추가하기 쉽습니다.
LiveData는 앱 계층 간 통신에 사용됩니다. MODEL 레이어의 모든 변경 사항은 LiveData를 통해 VIEW MODEL로 전달 된 다음 VIEW 레이어로 전파됩니다.
Utils 클래스에는 기본 검색 용어, 페이지 당 결과 및 새 값으로 업데이트하려고하기 전에 결과를 로컬 캐시에 보관할 기간을 구성 할 수있는 Configuretion 인터페이스가 있습니다.
소스 코드는 https://github.com/giantturtle/RepoExplorerMVVM에서 확인하십시오.