Alias Tipe
Beri nama pada tipe kompleks
Alias Tipe adalah pelajaran Kotlin Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Kotlin Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Kotlin Academy mencakup 4 pelajaran total.
Apa Itu Alias Tipe?
Alias tipe memberikan nama baru untuk tipe yang sudah ada. Alias tidak memperkenalkan tipe baru — alias semata-mata merupakan alat keterbacaan yang diselesaikan saat kompilasi.
Anda mendeklarasikannya dengan kata kunci typealias.
typealias Name = String
fun main() {
val n: Name = "Alice"
println(n)
}Menamai Tipe Fungsi
Tipe fungsi bisa panjang. Alias membuat tanda tangan jauh lebih mudah dibaca.
typealias Handler = (String) -> Unit
fun register(h: Handler) {
h("event fired")
}
fun main() {
register { msg -> println(msg) }
}Menamai Tipe Generik
Generik yang bertingkat dalam seperti Map<String, List<Int>> lebih mudah dibaca dengan alias.
typealias ScoreBoard = Map<String, List<Int>>
fun main() {
val board: ScoreBoard = mapOf("team1" to listOf(10, 20))
println(board)
}Alias Bersifat Transparan
Karena alias adalah tipe yang sama, nilai dapat dipertukarkan sepenuhnya. Name dan String dapat dicampur bebas tanpa konversi.
typealias Name = String
fun shout(s: String) = s.uppercase()
fun main() {
val n: Name = "bob"
println(shout(n))
}Alias Berparameter
Alias tipe dapat memiliki parameter tipenya sendiri dan meneruskannya ke tipe yang mendasarinya.
typealias Pairs<T> = List<Pair<T, T>>
fun main() {
val data: Pairs<Int> = listOf(1 to 2, 3 to 4)
println(data)
}Membuat Alias untuk Kelas Bertingkat
Jalur kelas bertingkat atau kelas dalam yang panjang dapat diberi alias singkat, sehingga mengurangi keramaian dan kekacauan impor.
class Outer {
class Inner {
fun hello() = "inner hello"
}
}
typealias Shortcut = Outer.Inner
fun main() {
println(Shortcut().hello())
}Meningkatkan Keterbacaan Domain
Alias menyampaikan maksud. typealias UserId = Int mendokumentasikan bahwa bilangan bulat mewakili identitas pengguna, meskipun kompiler tetap memperlakukannya sebagai Int.
typealias UserId = Int
typealias Email = String
fun notify(id: UserId, to: Email) {
println("Notify user " + id + " at " + to)
}
fun main() {
notify(42, "a@b.com")
}Tidak Menambah Keamanan Tipe
Perlu diperhatikan: karena alias bersifat transparan, kompiler tidak akan mencegah Anda meneruskan UserId ketika alias Int yang berbeda diharapkan. Alias adalah dokumentasi, bukan penegakan.
typealias UserId = Int
typealias OrderId = Int
fun process(order: OrderId) = println("order " + order)
fun main() {
val user: UserId = 5
process(user) // compiles fine — both are Int
}Hanya Tingkat Teratas
Alias tipe harus dideklarasikan pada tingkat teratas sebuah berkas. Anda tidak dapat mendefinisikannya di dalam fungsi atau kelas. Letakkan alias di dekat kode terkait atau dalam berkas khusus.
typealias Callback = () -> Unit
fun run(cb: Callback) = cb()
fun main() {
run { println("done") }
}Kapan Menggunakan Alias
Gunakan alias tipe ketika:
- Tipe fungsi atau generik panjang dan digunakan berulang kali
- Anda menginginkan nama yang menjelaskan dirinya sendiri untuk tipe primitif
- Anda memerlukan nama singkat untuk tipe bertingkat
Jika memerlukan keamanan tipe yang sesungguhnya, gunakan kelas nilai.
Alias vs Kelas Nilai
Alias adalah tipe yang sama dengan nama baru — tanpa keamanan. Kelas nilai adalah tipe berbeda yang mencegah pencampuran nilai. Pelajaran berikutnya membahas kelas nilai.
Pemeriksaan Singkat
Uji pemahaman Anda tentang alias tipe.
Ringkasan
Anda mempelajari alias tipe:
- Dideklarasikan dengan
typealiaspada tingkat teratas - Hanya nama baru dan sepenuhnya transparan
- Bermanfaat untuk tipe fungsi, generik, dan keterbacaan
- Tidak menambah keamanan tipe
Selanjutnya: kelas nilai sebaris untuk pembungkusan tanpa biaya tambahan.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Alias Tipe” gratis?
Ya — teks lengkap “Alias Tipe” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Kotlin Academy, upgrade ke CoddyKit PRO. Kursus Kotlin Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Alias Tipe”?
Beri nama pada tipe kompleks Kamu berlatih Kotlin Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Kotlin Academy?
Tidak diperlukan pengalaman sebelumnya. Kotlin Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Alias Tipe” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Kotlin Academy ini?
Ya. Setiap pelajaran Kotlin Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.