Sobes.tech
Middle+

Erzählen Sie von Antipatterns in der Android-Entwicklung.

sobes.tech KI

Antwort von AI

  • Verwendung von AsyncTask für lange Operationen (besser Kotlin Coroutines oder RxJava verwenden).
  • Übergabe von View/Context an ViewModel (führt zu Speicherlecks).
  • Direkte Vererbung von Activity oder Fragment für Basallogik (besser Komposition verwenden).
  • Harte Kodierung von Strings, Zahlen, Farben anstelle der Verwendung von Ressourcen.
  • Blockieren des Haupt-Threads (MainThread) durch lange synchrone Operationen.
  • Verwendung statischer Variablen zum Speichern von Daten, die eine Lebenszyklus benötigen.
  • Übermäßige Verschachtelung von Layouts, was zu Leistungsproblemen führt (ConstraintLayout oder LinearLayout mit Gewicht ist besser).
  • Fehlende Behandlung von Konfigurationsänderungen (Bildschirmrotation, Sprachwechsel).
  • Direkter Zugriff auf Datenbanken oder Netzwerkoperationen vom UI-Thread.
  • Falsche Verwendung von SharedPreferences zum Speichern großer Objekte oder vertraulicher Daten.
  • Fehlende Fehlerbehandlung oder falsche Implementierung (z.B. leere catch-Blöcke).
  • Verwendung von impliziten Intents ohne Überprüfung auf passende Aktivitäten (resolveActivity).
  • Falsches Management von Abonnements (z.B. in RxJava), was zu Lecks führt.

Beispiel für übermäßige Verschachtelung von Layouts:

<!-- Schlecht -->
<LinearLayout>
    <LinearLayout>
        <TextView/>
    </LinearLayout>
</LinearLayout>

<!-- Gut -->
<LinearLayout>
    <TextView/>
</LinearLayout>