Proyek ini dibuat dalam rangka memenuhi submisi tugas dari kelas akademi "Menjadi Android Developer Expert" dari Dicoding.
Proyek ini mengimplementasi prinsip Clean Architecture dengan pendekatan MVP Pattern. Di sini, saya mengambil referensi pendekatan dari sini yang ditulis oleh Mindorks dan telah digunakan di internal development team mereka, yang tentunya telah saya modifikasi sesuai kebutuhan.
Kelas Akademi Menjadi Android Developer Expert ini terdiri dari 4 modul, yang di setiap akhir sesi mewajibkan peserta untuk mensubmit aplikasi yang dibuat sendiri agar dapat lanjut ke modul berikutnya. Setiap submisi tugas akan direview oleh para top developer tanah air yang telah ditunjuk oleh Dicoding. Berikut keempat submisi tersebut, sbb :
Untuk menyelesaikan modul Fundamentals, Anda diharuskan men-submit aplikasi yang telah Anda buat sendiri. Aplikasi yang akan Anda buat adalah aplikasi katalog film. Dengan memanfaatkan materi pada modul Fundamentals dan ditambah dengan API dari themoviedb.org, Anda diharapkan dapat membuat aplikasi yang sesuai dengan persyaratan untuk menyelesaikan submission.
- Halaman untuk mencari film.
- Halaman detail untuk menampilkan detail fim yang telah dipilih pada halaman list film.
- Tampilan poster dari film.
[Versi 1.0.0] (https://github.com/DhytoDev/catalogue-movie-dicoding-MADE/releases/tag/1.0.0)
Untuk menyelesaikan modul UI & UX, Anda harus melanjutkan aplikasi Catalogue Movie yang pernah dibuat sebelumnya pada project Fundamentals. Dengan memanfaatkan materi UI & UX , Anda perlu menambahkan beberapa hal baru.
- Navigasi untuk halaman upcoming, now playing, dan search.
- Menggunakan recyclerview untuk menampilkan data bisa berupa list, atau card.
- Halaman setting untuk mengganti bahasa atau localization. Aplikasi harus mendukung bahasa Indonesia dan bahasa Inggris.
- Semua fungsi dari fitur project sebelumnya (Submission Project Catalogue Movie) harus tetap berjalan.
[Versi 2.0.0] (https://github.com/DhytoDev/catalogue-movie-dicoding-MADE/releases/tag/2.0.0)
Untuk menyelesaikan modul BasisData, Anda harus membuat aplikasi lanjutan dari modul project UI/UX yaitu Catalogue Movie. Anda akan menambah beberapa fitur baru dengan memanfaatkan materi SharedPreferences, SQLite, Read and Write File, serta ContentProvider.
- Tombol pada detail untuk menambahkan film favorit.
- Halaman untuk menampilkan list movie favorit.
- Menggunakan contentprovider.
- Membuat aplikasi baru yaitu aplikasi favorit (boleh dengan menggunakan module baru) untuk mengakses list favorit.
[Versi 3.0.0] (https://github.com/DhytoDev/catalogue-movie-dicoding-MADE/releases/tag/3.0.0)
Untuk menyelesaikan modul Extended Application, Anda harus memasukkan aplikasi lanjutan dari modul project Basis Data yaitu Catalogue Movie. Aplikasi Catalogue Movie ditambah fitur baru yaitu menggunakan StackWidget.
- Tambahkan widget favorit movie dengan menggunakan StackWidget.
- Tambahkan scheduler untuk : - Daily Reminder, mengingatkan untuk kembali ke catalog movie. Daily reminder harus selalu berjalan tiap jam 7 pagi. - Release Today Reminder, menampilkan film yang release hari ini. Release reminder harus selalu berjalan tiap jam 8 pagi.
- Harus bisa menyesuaikan orientasi portrait dan landscape.
- Harus bisa menjaga data yang sudah dimuat / ditampilkan.
[Versi 4.0.0] (https://github.com/DhytoDev/catalogue-movie-dicoding-MADE/releases/tag/4.0.0)