Klien GitHub untuk Android yang dibangun menggunakan pola desain MVVM, pemrograman reaktif dengan LiveData, pola repositori, Room Persistence Library.
Fitur: Pagination, caching hasil pencarian dan opsi untuk menambahkan bookmark.
Kode dikemas berdasarkan fitur. Paket data berisi kelas model database lokal, layanan web dan repositori yang digunakan sebagai sumber tunggal kebenaran.
Paket UI berisi kode VIEW (Activities) dan VIEW MODEL (AndroidViewModel) untuk setiap layar dalam aplikasi. LIHAT MODEL tidak memiliki referensi apa pun ke PANDANGAN atau kelas MODEL dalam paket data sehingga kode bersifat modular dan mudah untuk mengubah layar dan menambahkan fitur.
LiveData digunakan untuk berkomunikasi antar lapisan aplikasi. Setiap perubahan dalam lapisan MODEL disebarkan melalui LiveData untuk LIHAT MODEL dan kemudian ke layer LIHAT.
Di kelas Utils ada antarmuka Configuretion di mana Anda dapat mengonfigurasi istilah pencarian default, hasil per halaman dan untuk berapa lama hasil harus disimpan di cache lokal, sebelum mencoba memperbarui dengan yang baru.
Periksa kode sumber di: https://github.com/giantturtle/RepoExplorerMVVM