Sobes.tech
Middle+

Коддогу кайсы кемчилик сиздин огоңузда, аны дароо алмаштыргыңыз келеби?

sobes.tech AI

AIден жооп

findViewById-нин орнина View Binding же Data Binding колдонуу. findViewById тип коопсуз эмес жана кодуңузду ашыкча кылат.

// findViewById колдонуу мисалы
val textView: TextView = findViewById(R.id.myTextView)
textView.text = "Hello"

Көбүнчө колдонулган варианттар:

// View Binding колдонуу мисалы
// build.gradleде активдештирилет
// buildFeatures { viewBinding true }
val binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
binding.myTextView.text = "Hello"
// Data Binding колдонуу мисалы
// build.gradleде активдештирилет
// buildFeatures { dataBinding true }
// Layout `<layout>` теги менен курчалган
val binding = DataBindingUtil.setContentView<ActivityMainBinding>(this, R.layout.activity_main)
binding.myTextView.text = "Hello"

Көңүл буруу керек:

  • Мүмкүн болгон null маанилерди иштетүү жок.
  • Бир класс же методдун өтө чоң болушу (бир жоопкерчиликтин бузулушу).
  • "сыйкырдуу" саптар же сандарды колдонуу ордуна константтарды колдонуу.
  • Кодду көчүрүп алуу.
  • Тесттердин (бирдик, интеграция) жоктугу.
  • Эски APIлерди колдонуу (мисалы, эски Android колдоо китепканаларынын версиялары).
  • Түсүнүү жана тейлөө кыйын болгон код комментарийлерсиз же маалыматсыз комментарийлер менен.
  • Компоненттердин жашоо циклин туура эмес башкаруу (мисалы, эс тутум агып кетүүлөрү).

Бул жагдайлар көбүнчө ишенимдүүлүк, тейлөө жана иштөө жөндөмдүүлүгү боюнча потенциалдуу көйгөйлөргө ишарат кылат.