Middle+
Android geliştirmede antipatternler hakkında bilgi ver.
sobes.tech yapay zeka
AI'dan gelen yanıt
- Uzun süreli işlemler için
AsyncTaskkullanımı (daha iyisi Kotlin Coroutines veya RxJava kullanmak). - ViewModel'e View/Context iletmek (hafıza sızıntılarına neden olur).
- Temel mantık için doğrudan
ActivityveyaFragment'tan kalıtım (bileşimi kullanmak daha iyidir). - Kaynaklar yerine katı şekilde kodlanmış dizeler, sayılar, renkler.
- Uzun senkron işlemlerle ana akış (
MainThread) engellemek. - Yaşam döngüsü gerektiren verileri saklamak için statik değişkenler kullanmak.
- Performans sorunlarına yol açan aşırı iç içe layout kullanımı (
ConstraintLayoutveyaLinearLayoutileweightdaha iyidir). - Konfigürasyon değişikliklerinin (ekran döndürme, dil değişimi) ele alınmaması.
- UI akışından doğrudan veritabanlarına veya ağ işlemlerine erişim.
- Büyük nesneleri veya gizli verileri saklamak için
SharedPreferences'ın yanlış kullanımı. - Hata yönetiminin eksikliği veya yanlış uygulanması (örneğin, boş
catchblokları). - Uygun aktivitelerin olup olmadığını kontrol etmeden gizli intentler kullanmak.
- RxJava gibi aboneliklerin yanlış yönetimi, bu da sızıntılara yol açar.
Aşırı iç içe layout örneği:
<!-- Kötü -->
<LinearLayout>
<LinearLayout>
<TextView/>
</LinearLayout>
</LinearLayout>
<!-- İyi -->
<LinearLayout>
<TextView/>
</LinearLayout>