Android 0, temiz döküm
Google'ın IO 2017'de duyurduğu şeylerden biri, 'dökülmüş' olarak adlandırılan bir şeydir :). Android geliştiricisinin findViewById () için manuel bir döküm yapması gerekmez. Örneğin findViewById () kullanarak metin görünümü almanın eski yolu böyle bir şey olacaktır.
TextView txtDesc = (TextView) findViewById(R.id.textViewDesc);
txtDesc.setText(getString(R.string.info_angkot_description));
Yeni yol böyle olurken
TextView txtDesc = findViewById(R.id.textViewDesc);
txtDesc.setText(getString(R.string.info_angkot_description));
Bu basit bir değişiklik. Ancak deneyimli bir programcı için böyle temiz bir kod sizi çok mutlu edebilir ve kodlama ruh halinize yardımcı olur :)
Bunu yapabilmek için sadece proje derlenmiş sdk sürümünü uygulama build.gradle sürüm 26 olarak ayarlamanız gerekiyordu.
Yine de önceki sdk sürümünü de hedefleyebilirsiniz, bu yüzden müdahaleci olmayan bir değişikliktir.
Şimdi asıl sorun, tüm bu süre boyunca döküm kullanan eski kodu nasıl temizliyorsunuz. Özellikle yüzlerce etkinlik dosyanız varsa. Manuel olarak yapabilir veya yapmak için bir stajyer kiralayabilirsiniz 😛. Ama neyse ki tüm bu stajyer için, android stüdyo zaten bu konuda bize yardımcı olmaya hazır.
Eğer caret koymak (veya gereksiz döküm tıklayın) android stüdyo gereksiz döküm işlemek için 2 seçenek önerecektir.
Öncelikle bu gereksiz kadroyu kaldırmanızı öneririz veya temizleme kodunu seçebilirsiniz. Bu dosya için yedekli dökümlerin tümünü kaldıracak. Bu daha iyi, ama daha fazlasını istiyoruz. Her dosyayı açmak istemiyoruz ve bunu tek tek temizlemek istiyoruz.
IntelliJ fikrini Özel yapan şeylerden biri de niyet eylemi adı verilen bir özellik. Tek yapmanız gereken ctrl + shift + A tuşlarına basın ve ardından temiz yazın. Kod Temizleme işlemini seçin ve tüm proje kapsamını seçin. Bu birkaç basit adımla kodunuz çok daha temiz olacaktır.
Önemli bir nokta, bunu bazı kod sürümleme sistemi ile yapmanızdır. Bu şekilde niyet eylemi tarafından yapılan değişiklikleri karşılaştırabilir ve istediğiniz dosyaları geri alabilirsiniz.
Orijinal gönderiden kopyalandı:
https://medium.com/@abangkis/android-0-clean-up-casting-c30acec56cef
<T extends View> T findViewById(int id)
?