class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Ma'lumotlar internetdan olinishi lozim, lekin men misolni kichraytirdim
val post = Post(1, "Netology", "First post in our network!")
// Kotlin Android Extensions yordami tufayli hech qanday findViewById ishlatilmaydi
authorTv.text = post.author
contentTv.text = post.content
if (post.likedByMe) {
likeBtn.setImageResource(R.drawable.ic_favorite_active_24dp)
}
// lambda
likeBtn.setOnClickListener {
// Qisqartirish uchun hech narsa yozilmadi
}
shareBtn.setOnClickListener {
val intent = Intent().apply {
// lambda with receiver
action = Intent.ACTION_SEND
putExtra(Intent.EXTRA_TEXT, """
${post.author}
${post.content}
""".trimIndent())
type = "text/plain"
}
startActivity(intent)
}
}
}
Shuni esda tutingki, agarda siz Java asoslarini bilsangiz va unga eng oddiy ilovalar yozsangiz, Kotlinni o’rganish uchun bir xil yo’lni bosib o’tishingiz shart emas. Siz umumiy qabul qilingan konstruktorlarni, o’zgaruvchilarni va ma’lumotlar turlarini (tiplarini) bilsangiz bas. Java-ga juda o’xshash kodni yozishni boshlashingiz mumkin, keyin Kotlinni o’rganish jarayonida undan ko’proq ishlar qilishni boshlashingiz mumkin.
Ushbu maqolada Android mobil dasturlash sohasiga kirishning aniq va universal usulini taklif qilindi. Birinchi bosqich Java-ni uzoq, ammo an’anaviy va tushunarli sintaktik konstruktsiyalar bilan o’rganishdir. Ularni o’zlashtirganingizdan keyin siz “shakar” Kotlinga o’tishingiz mumkin. Bunday tartib siz uchun qulay bo’ladi deb o’ylayman.
Mobil dasturlashning eng mashhur ikki tilini bilish — Java va Kotlin-boshqa Android dasturchilari orasida sizga foyda keltiradi. Yuqorida aytib o’tilganidek, ish beruvchilar Kotlin dasturlash tilida bilimi bor dasturchilarni izlaydi, va Kotlin bilimlari Java-siz o’zlashtirilishi mumkin emas. Har qanday holatda, siz va sizning kelajakdagi jamoangizni qiziqtiradigan narsalarni tanlash uchun turli tillarda mobil ilovalarni yozishni o’rganishingiz kerak.