Sobes.tech
Middle+

Mit tartasz hibának a kódban, amit azonnal szeretnél lecserélni?

sobes.tech MI

Válasz az MI-től

A findViewById használata a View Binding vagy Data Binding helyett. A findViewById nem típusbiztonságos, és redundáns kódhoz vezet.

// Példa a findViewById használatára
val textView: TextView = findViewById(R.id.myTextView)
textView.text = "Hello"

Előnyben részesített lehetőségek:

// View Binding használatának példája
// Aktiválva a build.gradle-ben
// buildFeatures { viewBinding true }
val binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
binding.myTextView.text = "Hello"
// Data Binding használatának példája
// Aktiválva a build.gradle-ben
// buildFeatures { dataBinding true }
// A layout `<layout>` tagbe kerül
val binding = DataBindingUtil.setContentView<ActivityMainBinding>(this, R.layout.activity_main)
binding.myTextView.text = "Hello"

Figyelembe kell venni:

  • A lehetséges null értékek kezelésének hiánya.
  • Egy osztály vagy metódus túl nagy mérete (egyedi felelősség elvének megsértése).
  • "varázs" szövegek vagy számok helyett konstansok használata.
  • Kódduplikáció.
  • Hiányzó tesztek (egység, integráció).
  • Elavult API-k használata (pl. régi Android támogatók könyvtárak verziói).
  • Nehezen érthető és karbantartható kód kommentárok nélkül vagy kevés információval ellátva.
  • A komponensek életciklusának helytelen kezelése (pl. memória szivárgások).

Ezek a pontok gyakran potenciális problémákat jeleznek a megbízhatóság, karbantarthatóság és teljesítmény terén.