Icon Ripple Progress Button Notifications Toggle Refresh Floating Loading Drawer Arrow Clock Seekbar rangebar
Input
Textfield Picker Textview Label Edittext
Menu
Navigation Tabs Toolbar Swipe Menu
More
Apps Animations Dialogs Secure Tap Target Actionbar
Movie
Programmatically (No XML) for android
Nov 11, 2021 1 min read
MoviesDemo-Android
https://www.themoviedb.org sitesinin sağladığı API üzerinden vizyonda olan ve yakında vizyona girecek olan film listesinin çekildiği, ekrana listelediği bir projedir. Üst slider’da vizyonda olan, alt listede ise yakında vizyona girecek olan filmleri görebiliyoruz. Herhangi bir listeden filme tıklandığında onun detaylarını görüntüleyebiliyoruz.
Kullanılan 3. Parti Kütüphaneler
Picasso
Kotlin Coroutines
Kullanılan Mimari Ve Detayları
Projede tasarım anlamında XML koduna yer verilmedi. Tasarımlar programatik olarak Kotlin dili ile yazıldı.
Her Activity ve Fragment’ların ConstraintLayout’dan türetilmiş Layout katmanı bulunmaktadır. Bu katmanlar kendilerine ait Fragment veya Activity ile haberleşmektedir.
Tek Activity, birden fazla Fragment mantığı temel alınmıştır.
Activity, Fragment’ları tutma ve yönlendirme görevi görür.
Fragment’lar ihtiyaca göre Primary Fragment, Secondary Fragment, Tertiary Fragment olarak alt bölümlere ayrılır.
Her Fragment sınıfının ihtiyaç durumunda Logic işlemlerinin yapıldığı Interactor katmanı olabilir. Interactor sınıfları Coroutines sınıfından miras alır. Bu sayede gerekli olduğu durumlarda Coroutines teknolojisi ile Asnyc olarak kod parçacıklarını çalıştırabilir.
Interactor sınıfı olan Fragment’lar birbirleri ile haberleşmesi mümkün olur.
API işlemleri için WebService sınıfı mevcuttur. Bu sınıf Fragment’ların Interactor sınıfı ile iletişim halinde olurlar.