<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="id">
	<id>https://wiki.unissula.ac.id/index.php?action=history&amp;feed=atom&amp;title=Kotlin_%28bahasa_pemrograman%29</id>
	<title>Kotlin (bahasa pemrograman) - Riwayat revisi</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.unissula.ac.id/index.php?action=history&amp;feed=atom&amp;title=Kotlin_%28bahasa_pemrograman%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.unissula.ac.id/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=history"/>
	<updated>2026-09-16T04:28:56Z</updated>
	<subtitle>Riwayat revisi halaman ini di wiki</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://wiki.unissula.ac.id/index.php?title=Kotlin_(bahasa_pemrograman)&amp;diff=36940&amp;oldid=prev</id>
		<title>Maintenance script: Pembersihan konten sesuai kebijakan Wiki Unissula</title>
		<link rel="alternate" type="text/html" href="https://wiki.unissula.ac.id/index.php?title=Kotlin_(bahasa_pemrograman)&amp;diff=36940&amp;oldid=prev"/>
		<updated>2026-09-09T06:25:01Z</updated>

		<summary type="html">&lt;p&gt;Pembersihan konten sesuai kebijakan Wiki Unissula&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;id&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Revisi sebelumnya&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revisi per 9 September 2026 06.25&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Baris 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Baris 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;Kotlin&#039;&#039;&#039; adalah sebuah bahasa pemrograman dengan [[pengetikan statis]] yang berjalan pada [[Java Virtual Machine|Mesin Virtual Java]] ataupun menggunakan kompiler [[LLVM]] yang dapat pula dikompilasikan kedalam bentuk [[kode sumber]] JavaScript. Pengembang utamanya berasal dari tim programer dari JetBrains yang bermarkas di Rusia.&amp;lt;ref&amp;gt;Janice Heiss. [http://www.oracle.com/technetwork/articles/java/breslav-1932170.html The Advent of Kotlin: A Conversation with JetBrains&#039; Andrey Breslav]. &#039;&#039;oracle.com&#039;&#039;. Oracle Technology Network. April 2013.&amp;lt;/ref&amp;gt; Meskipun sintaksisnya tidak kompatibel dengan bahasa [[Java]], Kotlin didesain untuk dapat bekerja sama dengan kode bahasa Java dan bergantung kepada kode bahasa Java dari [[Java Class Library|Kelas Pustaka Java]] yang ada, seperti berbagai framework Java yang ada. Tim Pengembang memutuskan menamakannya Kotlin dengan mengambil nama dari [[Pulau Kotlin|sebuah pulau di Rusia]], sebagaimana Java yang mengambil nama dari pulau Jawa di Indonesia.&amp;lt;ref&amp;gt;Mobius. [https://www.youtube.com/watch?v=VU_L2_XGQ9s Андрей Бреслав — Kotlin для Android: коротко и ясно]. 2015-01-08.&amp;lt;/ref&amp;gt; Setelah Google mengumumkan bahwa Kotlin menjadi bahasa kelas satu bagi Android, maka bersama Java dan C++, Kotlin menjadi bahasa resmi untuk pengembangan aplikasi-aplikasi Android.&amp;lt;ref&amp;gt;[https://developer.android.com/kotlin Kotlin dan Android]. &#039;&#039;Android Developers&#039;&#039;.&amp;lt;/ref&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Riwayat ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Riwayat ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Pada Juli 2011, [[JetBrains]] meluncurkan Project Kotlin, bahasa baru untuk JVM, yang telah dikembangkan selama satu tahun.&amp;lt;ref&amp;gt;Paul Krill. [https://www.infoworld.com/d/application-development/jetbrains-readies-jvm-based-language-167875 JetBrains readies JVM language Kotlin]. &amp;#039;&amp;#039;InfoWorld&amp;#039;&amp;#039;. 22 July 2011.&amp;lt;/ref&amp;gt; Pimpinan JetBrains Dmitry Jemerov mengatakan bahwa sebagian besar bahasa tidak memiliki fitur yang mereka cari, kecuali [[Scala (bahasa pemrograman)|Scala]]. Namun, ia menyebut waktu [[Kompilator|kompilasi]] Scala yang lambat sebagai kekurangan.&amp;lt;ref&amp;gt;Paul Krill. [https://www.infoworld.com/d/application-development/jetbrains-readies-jvm-based-language-167875 JetBrains readies JVM language Kotlin]. &amp;#039;&amp;#039;InfoWorld&amp;#039;&amp;#039;. 22 July 2011.&amp;lt;/ref&amp;gt; Salah satu tujuan yang dinyatakan dari Kotlin adalah untuk mengkompilasi secepat Java. Pada bulan Februari 2012, JetBrains membuat proyek open source di bawah [[Lisensi Apache|lisensi Apache 2]].&amp;lt;ref&amp;gt;John Waters. [https://adtmag.com/articles/2012/02/22/kotlin-goes-open-source.aspx Kotlin Goes Open Source]. &amp;#039;&amp;#039;ADTmag.com&amp;#039;&amp;#039;. 1105 Enterprise Computing Group. 22 February 2012.&amp;lt;/ref&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Pada Juli 2011, [[JetBrains]] meluncurkan Project Kotlin, bahasa baru untuk JVM, yang telah dikembangkan selama satu tahun.&amp;lt;ref&amp;gt;Paul Krill. [https://www.infoworld.com/d/application-development/jetbrains-readies-jvm-based-language-167875 JetBrains readies JVM language Kotlin]. &amp;#039;&amp;#039;InfoWorld&amp;#039;&amp;#039;. 22 July 2011.&amp;lt;/ref&amp;gt; Pimpinan JetBrains Dmitry Jemerov mengatakan bahwa sebagian besar bahasa tidak memiliki fitur yang mereka cari, kecuali [[Scala (bahasa pemrograman)|Scala]]. Namun, ia menyebut waktu [[Kompilator|kompilasi]] Scala yang lambat sebagai kekurangan.&amp;lt;ref&amp;gt;Paul Krill. [https://www.infoworld.com/d/application-development/jetbrains-readies-jvm-based-language-167875 JetBrains readies JVM language Kotlin]. &amp;#039;&amp;#039;InfoWorld&amp;#039;&amp;#039;. 22 July 2011.&amp;lt;/ref&amp;gt; Salah satu tujuan yang dinyatakan dari Kotlin adalah untuk mengkompilasi secepat Java. Pada bulan Februari 2012, JetBrains membuat proyek open source di bawah [[Lisensi Apache|lisensi Apache 2]].&amp;lt;ref&amp;gt;John Waters. [https://adtmag.com/articles/2012/02/22/kotlin-goes-open-source.aspx Kotlin Goes Open Source]. &amp;#039;&amp;#039;ADTmag.com&amp;#039;&amp;#039;. 1105 Enterprise Computing Group. 22 February 2012.&amp;lt;/ref&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://wiki.unissula.ac.id/index.php?title=Kotlin_(bahasa_pemrograman)&amp;diff=1145&amp;oldid=prev</id>
		<title>Maintenance script: Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi</title>
		<link rel="alternate" type="text/html" href="https://wiki.unissula.ac.id/index.php?title=Kotlin_(bahasa_pemrograman)&amp;diff=1145&amp;oldid=prev"/>
		<updated>2026-08-23T04:14:29Z</updated>

		<summary type="html">&lt;p&gt;Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi&lt;/p&gt;
&lt;a href=&quot;https://wiki.unissula.ac.id/index.php?title=Kotlin_(bahasa_pemrograman)&amp;amp;diff=1145&amp;amp;oldid=745&quot;&gt;Lihat perubahan&lt;/a&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://wiki.unissula.ac.id/index.php?title=Kotlin_(bahasa_pemrograman)&amp;diff=745&amp;oldid=prev</id>
		<title>Maintenance script: Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 27695942; atribusi sumber disertakan.</title>
		<link rel="alternate" type="text/html" href="https://wiki.unissula.ac.id/index.php?title=Kotlin_(bahasa_pemrograman)&amp;diff=745&amp;oldid=prev"/>
		<updated>2026-08-23T03:48:25Z</updated>

		<summary type="html">&lt;p&gt;Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 27695942; atribusi sumber disertakan.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Halaman baru&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Kotlin&amp;#039;&amp;#039;&amp;#039; adalah sebuah bahasa pemrograman dengan [[pengetikan statis]] yang berjalan pada [[Java Virtual Machine|Mesin Virtual Java]] ataupun menggunakan kompiler [[LLVM]] yang dapat pula dikompilasikan kedalam bentuk [[kode sumber]] JavaScript. Pengembang utamanya berasal dari tim programer dari JetBrains yang bermarkas di Rusia. Meskipun sintaksisnya tidak kompatibel dengan bahasa [[Java]], Kotlin didesain untuk dapat bekerja sama dengan kode bahasa Java dan bergantung kepada kode bahasa Java dari [[Java Class Library|Kelas Pustaka Java]] yang ada, seperti berbagai framework Java yang ada. Tim Pengembang memutuskan menamakannya Kotlin dengan mengambil nama dari [[Pulau Kotlin|sebuah pulau di Rusia]], sebagaimana Java yang mengambil nama dari pulau Jawa di Indonesia. Setelah Google mengumumkan bahwa Kotlin menjadi bahasa kelas satu bagi Android, maka bersama Java dan C++, Kotlin menjadi bahasa resmi untuk pengembangan aplikasi-aplikasi Android.&lt;br /&gt;
&lt;br /&gt;
== Riwayat ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pada Juli 2011, [[JetBrains]] meluncurkan Project Kotlin, bahasa baru untuk JVM, yang telah dikembangkan selama satu tahun. Pimpinan JetBrains Dmitry Jemerov mengatakan bahwa sebagian besar bahasa tidak memiliki fitur yang mereka cari, kecuali [[Scala (bahasa pemrograman)|Scala]]. Namun, ia menyebut waktu [[Kompilator|kompilasi]] Scala yang lambat sebagai kekurangan. Salah satu tujuan yang dinyatakan dari Kotlin adalah untuk mengkompilasi secepat Java. Pada bulan Februari 2012, JetBrains membuat proyek open source di bawah [[Lisensi Apache|lisensi Apache 2]].&lt;br /&gt;
&lt;br /&gt;
Nama itu berasal dari [[Pulau Kotlin]], dekat [[Sankt-Peterburg|St. Petersburg]]. [[Andrey Breslav]] menyebutkan bahwa tim memutuskan untuk menamainya setelah sebuah pulau, seperti halnya Java dinamai menurut pulau [[Jawa]] di Indonesia (meskipun bahasa pemrograman Java diartikan dengan nama kopi daripada pulau). JetBrains berharap bahasa baru ini akan mendorong penjualan [[IntelliJ IDEA]].&lt;br /&gt;
&lt;br /&gt;
Kotlin versi 1.0 dirilis pada 15 Februari 2016 Versi ini secara resmi ditetapkan sebagai versi rilis stabil pertama dan JetBrains telah menetapkan dukungan versi sebelumnya untuk jangka panjangan dengan versi ini.&lt;br /&gt;
&lt;br /&gt;
Pada [[Google I/O]] 2017, [[Google]] mengumumkan dukungan kelas pertama untuk Kotlin pada [[Android (sistem operasi)|Android]].&lt;br /&gt;
&lt;br /&gt;
Kotlin versi 1.2 dirilis pada 28 November 2017. Fitur berbagi kode antara JVM dan platform Javascript baru ditambahkan pada versi rilis ini.&lt;br /&gt;
&lt;br /&gt;
Kotlin versi 1.3 dirilis pada 29 Oktober 2018, membawa coroutines pada pemrograman asynchronous.&lt;br /&gt;
&lt;br /&gt;
Pada 7 Mei 2019, Google mengumumkan bahwa bahasa pemrograman Kotlin sekarang menjadi bahasa pilihan untuk pengembang aplikasi Android.&lt;br /&gt;
&lt;br /&gt;
Kotlin 1.4 dirilis pada Agustus 2020, misalnya dengan beberapa perubahan kecil pada dukungan untuk platform Apple, yaitu pada [[Interoperabilitas|interop]] [[Objective-C]]/[[Swift (bahasa pemrograman)|Swift]].&lt;br /&gt;
&lt;br /&gt;
Kotlin 1.5 dirilis pada Mei 2021.&lt;br /&gt;
&lt;br /&gt;
Kotlin 1.6 dirilis pada November 2021.&lt;br /&gt;
&lt;br /&gt;
Kotlin 1.7 dirilis pada Juni 2022.&lt;br /&gt;
&lt;br /&gt;
Kotlin 1.8 dirilis pada Desember 2022, 1.8.0 dirilis pada 11 Januari 2023.&lt;br /&gt;
&lt;br /&gt;
== Desain ==&lt;br /&gt;
Pemimpin pengembangan Andrey Breslav mengatakan bahwa Kotlin dirancang untuk menjadi bahasa [[Pemrograman berorientasi objek|berorientasi objek]] berkekuatan industri, dan &amp;quot;bahasa yang lebih baik&amp;quot; daripada [[Java]], tetapi masih sepenuhnya dapat dioperasikan dengan kode Java, memungkinkan perusahaan untuk melakukan migrasi bertahap dari Java ke Kotlin.&lt;br /&gt;
&lt;br /&gt;
[[Tanda titik koma|Titik koma]] adalah opsional sebagai [[Terminator pernyataan|terminator]] [[Pernyataan (ilmu komputer)|pernyataan]]; dalam kebanyakan kasus, [[Garis baru|baris baru]] sudah cukup bagi [[Kompilator|kompiler]] untuk menyimpulkan bahwa pernyataan telah berakhir.&lt;br /&gt;
&lt;br /&gt;
Deklarasi [[Variabel (ilmu komputer)|variabel]] dan [[Parameter (pemrograman komputer)|daftar parameter]] Kotlin memiliki [[tipe data]] yang muncul setelah nama variabel (dan dengan pemisah [[Tanda titik dua|titik dua]]), mirip dengan [[Ada (bahasa pemrograman)|Ada]], [[BASIC]], [[Pascal (bahasa pemrograman)|Pascal]], [[TypeScript]] dan [[Rust (bahasa pemrograman)|Rust]]. Ini, menurut sebuah artikel dari Roman Elizarov, pemimpin proyek saat ini, menghasilkan penyelarasan nama variabel dan lebih menyenangkan untuk dilihat terutama ketika ada beberapa deklarasi variabel berturut-turut dan satu atau lebih tipe terlalu rumit untuk inferensi tipe atau perlu dideklarasikan secara eksplisit agar dapat dipahami oleh pembaca manusia.&lt;br /&gt;
&lt;br /&gt;
Variabel di Kotlin dapat dibaca-saja, dideklarasikan dengan  [[kata kunci]], atau bisa berubah, dideklarasikan dengankata kunci.&lt;br /&gt;
&lt;br /&gt;
Anggota kelas bersifat publik secara default, dan kelas itu sendiri adalah [[Kelas akhir|final]] secara default, artinya membuat kelas turunan dinonaktifkan kecuali kelas dasar dideklarasikan dengan  kata kunci.&lt;br /&gt;
&lt;br /&gt;
Selain [[Kelas (ilmu komputer)|kelas]] dan [[Metode (pemrograman komputer)|fungsi anggota]] (yang setara dengan metode) pemrograman berorientasi objek, Kotlin juga mendukung [[pemrograman prosedural]] dengan penggunaan [[Subrutin|fungsi]]. Fungsi dan konstruktor Kotlin mendukung [[argumen default]], daftar [[Fungsi variadik|argumen panjang variabel]], argumen [[Parameter bernama|bernama]], dan kelebihan beban dengan tanda tangan unik. Fungsi anggota kelas adalah virtual, yaitu dikirim berdasarkan jenis runtime dari objek yang dipanggil.&lt;br /&gt;
&lt;br /&gt;
Kotlin 1.3 menambahkan dukungan untuk kontrak, yang stabil untuk deklarasi pustaka standar, tetapi masih eksperimental untuk deklarasi yang ditentukan pengguna. Kontrak terinspirasi oleh desain [[Eiffel (bahasa pemrograman)|Eiffel]] [[Desain berdasarkan kontrak|dengan paradigma pemrograman kontrak]].&lt;br /&gt;
&lt;br /&gt;
Menurut pengembang Kotlin, Anda dapat memanggil kode [[JavaScript]] dari Kotlin, misalnya menulis aplikasi [[React]] yang aman untuk jenis tertentu, atau menulis dan memelihara [[aplikasi web]] tumpukan penuh yang berbagi logika validasi dengan frontend, atau Anda dapat &amp;quot;menghasilkan pustaka dari kode Kotlin Anda yang dapat dikonsumsi sebagai modul dari basis kode apa pun yang ditulis dalam JavaScript atau [[TypeScript]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Sintaks ==&lt;br /&gt;
&lt;br /&gt;
=== Gaya pemrograman prosedural ===&lt;br /&gt;
Kotlin melonggarkan batasan Java yang mengizinkan metode dan variabel [[Statis (kata kunci)|statis]] hanya ada di dalam badan kelas. Objek dan fungsi statis dapat didefinisikan di tingkat atas paket tanpa memerlukan tingkat kelas yang berlebihan. Untuk kompatibilitas dengan Java, Kotlin menyediakan anotasi &amp;lt;code&amp;gt;JvmName&amp;lt;/code&amp;gt; yang menentukan nama kelas yang digunakan saat paket dilihat dari proyek Java. Misalnya, &amp;lt;code&amp;gt;@file:JvmName(&amp;quot;JavaClassName&amp;quot;)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Titik masuk utama ===&lt;br /&gt;
Seperti pada [[C (bahasa pemrograman)|C]], [[C++]], [[C Sharp (bahasa pemrograman)|C#]], Java, dan [[Go (bahasa pemrograman)|Go]], [[titik masuk]] ke [[Program komputer|program]] Kotlin adalah fungsi bernama &amp;quot;main&amp;quot;, yang dapat dilewatkan array yang berisi argumen [[Antarmuka baris perintah|baris perintah]] apa pun. Ini opsional karena Kotlin 1.3. [[Perl]], [[PHP]] dan [[interpolasi string]] gaya [[shell Unix]] didukung. [[Ketik inferensi|Jenis inferensi]] juga didukung.&lt;br /&gt;
&lt;br /&gt;
=== Fungsi ekstensi ===&lt;br /&gt;
Mirip dengan C#, Kotlin memungkinkan penambahan fungsi ekstensi ke kelas mana pun tanpa formalitas membuat kelas turunan dengan fungsi baru. Fungsi ekstensi memiliki akses ke semua antarmuka publik kelas, yang dapat digunakan untuk membuat antarmuka fungsi baru ke kelas target. Fungsi ekstensi akan muncul persis seperti fungsi kelas dan akan ditampilkan dalam pemeriksaan penyelesaian kode fungsi kelas. Sebagai contoh:Dengan menempatkan kode sebelumnya di tingkat atas sebuah paket, kelas String diperluas untuk menyertakan fungsi  yang tidak termasuk dalam definisi asli kelas String.&lt;br /&gt;
&lt;br /&gt;
=== Argumen &amp;#039;&amp;#039;Unpack&amp;#039;&amp;#039; dengan operator spread ===&lt;br /&gt;
Sama halnya dengan sintaks program Python, operator spread asterisk (*) membongkar (&amp;#039;&amp;#039;unpack&amp;#039;&amp;#039;) konten array sebagai argumen yang dipisahkan koma ke suatu fungsi:&lt;br /&gt;
&lt;br /&gt;
=== Deklarasi &amp;#039;&amp;#039;destructuring&amp;#039;&amp;#039; ===&lt;br /&gt;
Deklarasi &amp;#039;&amp;#039;destructuring&amp;#039;&amp;#039; menguraikan objek menjadi beberapa variabel sekaligus, misalnya objek koordinat 2D mungkin &amp;#039;&amp;#039;didestruktur&amp;#039;&amp;#039; menjadi dua [[bilangan bulat]], x dan y.&lt;br /&gt;
&lt;br /&gt;
Misalnya, . Objek Entry mendukung destrukturisasi untuk menyederhanakan akses ke bidang kunci dan nilainya:&lt;br /&gt;
&lt;br /&gt;
=== Fungsi bersarang (&amp;#039;&amp;#039;Nested&amp;#039;&amp;#039;) ===&lt;br /&gt;
Kotlin memungkinkan fungsi lokal dideklarasikan di dalam fungsi atau metode lain.&lt;br /&gt;
&lt;br /&gt;
=== Kelas bersifat final secara bawaan ===&lt;br /&gt;
Di Kotlin, untuk mendapatkan kelas baru dari tipe kelas dasar, kelas dasar harus secara eksplisit ditandai sebagai &amp;quot;terbuka&amp;quot;. Ini berbeda dengan kebanyakan bahasa berorientasi objek seperti Java di mana kelas terbuka secara bawaan.&lt;br /&gt;
&lt;br /&gt;
Contoh kelas dasar yang terbuka untuk menurunkan subkelas baru darinya.&lt;br /&gt;
&lt;br /&gt;
=== Kelas abstrak terbuka secara bawaan ===&lt;br /&gt;
Kelas abstrak mendefinisikan fungsi placeholder abstrak atau &amp;quot;virtual murni&amp;quot; yang akan didefinisikan dalam kelas turunan. Kelas abstrak terbuka secara bawaan.&lt;br /&gt;
&lt;br /&gt;
=== Kelas bersifat publik secara bawaan ===&lt;br /&gt;
Kotlin menyediakan kata kunci berikut untuk membatasi visibilitas deklarasi tingkat atas, seperti kelas, dan untuk anggota kelas: &amp;lt;code&amp;gt;public&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;internal&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;protected&amp;lt;/code&amp;gt;, dan &amp;lt;code&amp;gt;private&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Penerapan kedalam anggota kelas:&lt;br /&gt;
&lt;br /&gt;
Ketika diterapkan ke deklarasi tingkat atas:&lt;br /&gt;
&lt;br /&gt;
Contoh:&lt;br /&gt;
&lt;br /&gt;
=== Konstruktor utama vs. konstruktor sekunder ===&lt;br /&gt;
Kotlin mendukung spesifikasi &amp;quot;konstruktor utama&amp;quot; sebagai bagian dari definisi kelas itu sendiri, yang terdiri dari daftar argumen yang mengikuti nama kelas. Daftar argumen ini mendukung sintaks yang diperluas pada daftar argumen fungsi standar Kotlin, yang memungkinkan deklarasi properti kelas di konstruktor utama, termasuk atribut visibilitas, ekstensibilitas, dan mutabilitas. Selain itu, saat mendefinisikan subkelas, properti di antarmuka super dan kelas super dapat diganti di konstruktor utama.Namun, dalam kasus di mana lebih dari satu konstruktor diperlukan untuk sebuah kelas, konstruktor yang lebih umum dapat digunakan disebut &amp;#039;&amp;#039;&amp;#039;sintaks konstruktor sekunder&amp;#039;&amp;#039;&amp;#039; yang sangat mirip dengan sintaks konstruktor yang digunakan di sebagian besar bahasa berorientasi objek seperti C++, C#, dan Java.&lt;br /&gt;
&lt;br /&gt;
=== Kelas tertutup ===&lt;br /&gt;
Kelas dan antarmuka yang disegel membatasi hierarki subkelas, yang berarti lebih banyak kontrol atas hierarki pewarisan.&lt;br /&gt;
&lt;br /&gt;
Deklarasi antarmuka dan kelas yang disegel:Semua subclass dari kelas yang disegel didefinisikan pada waktu kompilasi. Tidak ada subkelas baru yang dapat ditambahkan ke dalamnya setelah kompilasi modul yang memiliki kelas tersegel. Misalnya, kelas yang disegel dalam file jar yang dikompilasi tidak dapat disubklasifikasikan.&lt;br /&gt;
&lt;br /&gt;
=== Kelas data ===&lt;br /&gt;
Konstruksi &amp;lt;code&amp;gt;data class&amp;lt;/code&amp;gt; Kotlin mendefinisikan kelas yang tujuan utamanya adalah menyimpan data. Konstruksi ini mirip dengan kelas normal kecuali bahwa fungsi kunci &amp;lt;code&amp;gt;equals&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;toString&amp;lt;/code&amp;gt;, dan kode &amp;lt;code&amp;gt;hashCode&amp;lt;/code&amp;gt; secara otomatis dihasilkan dari properti kelas. Di Jawa, kelas seperti itu diharapkan menyediakan berbagai macam fungsi standar seperti itu. Kelas data tidak diharuskan untuk mendeklarasikan metode apa pun, meskipun masing-masing harus memiliki setidaknya satu properti. Kelas data sering ditulis tanpa badan, meskipun dimungkinkan untuk memberikan kelas data metode apa pun atau konstruktor sekunder yang valid untuk kelas lain mana pun. Kata kunci &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt; digunakan sebelum kata kunci &amp;lt;code&amp;gt;class&amp;lt;/code&amp;gt; untuk mendefinisikan kelas data.&lt;br /&gt;
&lt;br /&gt;
=== Shell interaktif Kotlin ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kotlin sebagai bahasa skrip ===&lt;br /&gt;
Kotlin juga dapat digunakan sebagai bahasa scripting. Skrip adalah file sumber Kotlin (.kts) dengan kode yang dapat dieksekusi tingkat atas.Skrip dapat dijalankan dengan meneruskan opsi &amp;lt;code&amp;gt;-script&amp;lt;/code&amp;gt; dan file skrip yang sesuai ke kompiler.&lt;br /&gt;
&lt;br /&gt;
=== Keamanan kosong ===&lt;br /&gt;
Kotlin membedakan antara tipe data [[Tidak dapat dibatalkan|nullable]] dan non-nullable. Semua objek nullable harus dideklarasikan dengan tanda &amp;quot;?&amp;quot; postfix setelah nama tipe. Operasi pada objek yang dapat dibatalkan memerlukan perhatian khusus dari pengembang: pemeriksaan nol harus dilakukan sebelum menggunakan nilai. Kotlin menyediakan operator null-safe untuk membantu developer.&lt;br /&gt;
&lt;br /&gt;
* ?. ([[:en:Safe navigation operator|operator navigasi aman]]) dapat digunakan untuk mengakses metode atau properti objek yang mungkin null dengan aman. Jika objeknya nol, metode tidak akan dipanggil dan ekspresi dievaluasi menjadi nol.&lt;br /&gt;
* ?: ([[:en:Null coalescing operator|operator penggabungan kosong]]) sering disebut sebagai [[:en:Elvis operator|operator Elvis]]:&lt;br /&gt;
Contoh penggunaan operator navigasi aman:&lt;br /&gt;
&lt;br /&gt;
=== Lambda ===&lt;br /&gt;
Kotlin menyediakan dukungan untuk [[fungsi tingkat tinggi]] dan fungsi [[Fungsi anonim|anonim]] atau lambda.Lambdas dideklarasikan menggunakan kurung kurawal,} . Jika lambda mengambil parameter, mereka dideklarasikan dalam kurung kurawal dan diikuti oleh operator.&lt;br /&gt;
&lt;br /&gt;
=== Contoh kompleks &amp;quot;&amp;#039;&amp;#039;hello world&amp;#039;&amp;#039;&amp;quot; ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Peralatan ==&lt;br /&gt;
&lt;br /&gt;
* [[IntelliJ IDEA]] memiliki dukungan plug-in untuk Kotlin. IntelliJ IDEA 15 adalah versi pertama yang menggabungkan plugin Kotlin di IntelliJ Installer, dan memberikan dukungan Kotlin secara langsung.&lt;br /&gt;
* JetBrains juga menyediakan plugin untuk [[Eclipse (perangkat lunak)|Eclipse]].&lt;br /&gt;
* Integrasi dengan alat build Java umum didukung termasuk [[Apache Maven]], [[Apache Semut|Apache Ant]], dan [[Gradle]].&lt;br /&gt;
* [[Android Studio]] (berdasarkan IntelliJ IDEA) memiliki dukungan resmi untuk Kotlin, mulai dari Android Studio 3.&lt;br /&gt;
* [[Emacs]] memiliki Mode Kotlin di repositori paket Melpa-nya.&lt;br /&gt;
* [[Vim (penyunting teks)|Vim]] memiliki plugin yang dikelola di GitHub.&lt;br /&gt;
* [https://json2kotlin.com/ Json2Kotlin] menghasilkan kode Kotlin asli gaya [[Objek Jawa kuno biasa|POJO]] untuk pemetaan respons [[layanan web]].&lt;br /&gt;
&lt;br /&gt;
== Aplikasi ==&lt;br /&gt;
Saat Kotlin diumumkan sebagai bahasa pengembangan Android resmi di [[Google I/O]] pada Mei 2017, Kotlin menjadi bahasa ketiga yang didukung penuh untuk Android, selain Java dan C++. Pada tahun 2020, Kotlin masih paling banyak digunakan di Android, dengan Google memperkirakan bahwa 70% dari 1000 aplikasi teratas di Play Store ditulis dalam Kotlin. Google sendiri memiliki 60 aplikasi yang ditulis dalam Kotlin, termasuk Maps dan Drive. Banyak aplikasi Android, seperti Google Home, sedang dalam proses migrasi ke Kotlin, jadi gunakan Kotlin dan Java. Kotlin di Android dipandang bermanfaat karena [[keamanan penunjuk nol]]nya serta fitur-fiturnya yang membuat kode lebih pendek dan lebih mudah dibaca.&lt;br /&gt;
&lt;br /&gt;
Selain penggunaannya yang menonjol di Android, Kotlin mendapatkan daya tarik dalam pengembangan sisi server. [[Kerangka Musim Semi|Spring Framework]] secara resmi menambahkan dukungan Kotlin dengan versi 5 pada 4 Januari 2017. Untuk lebih mendukung Kotlin, Spring telah menerjemahkan semua dokumentasinya ke Kotlin dan menambahkan dukungan bawaan untuk banyak fitur khusus Kotlin seperti coroutine. Selain Spring, JetBrains telah menghasilkan kerangka kerja pertama Kotlin yang disebut Ktor untuk membangun aplikasi web.&lt;br /&gt;
&lt;br /&gt;
Pada tahun 2020, JetBrains menemukan dalam survei pengembang yang menggunakan Kotlin bahwa 56% menggunakan Kotlin untuk aplikasi seluler, sementara 47% menggunakannya untuk back-end web. Lebih dari sepertiga pengembang Kotlin mengatakan bahwa mereka bermigrasi ke Kotlin dari bahasa lain. Sebagian besar pengguna Kotlin menargetkan Android (atau sebaliknya di JVM), dengan hanya 6% yang menggunakan Kotlin Native.&lt;br /&gt;
&lt;br /&gt;
== Adopsi ==&lt;br /&gt;
Pada tahun 2018, Kotlin adalah bahasa dengan pertumbuhan tercepat di GitHub dengan 2,6 kali lebih banyak pengembang dibandingkan tahun 2017. Ini adalah bahasa pemrograman keempat yang paling dicintai menurut Survei Pengembang Stack Overflow 2020.&lt;br /&gt;
&lt;br /&gt;
Kotlin juga dianugerahi O&amp;#039;Reilly Open Source Software Conference Breakout Award untuk 2019.&lt;br /&gt;
&lt;br /&gt;
Banyak perusahaan/organisasi telah menggunakan Kotlin untuk pengembangan backend:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;Google&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Norwegian Tax Administration&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Gradle&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Amazon&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Cash App&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;JetBrains&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Flux&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Allegro&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;OLX&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Shazam&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Pivotal&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Rocket Travel&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Meshcloud&amp;#039;&amp;#039;&lt;br /&gt;
* Zalando&lt;br /&gt;
&lt;br /&gt;
Beberapa perusahaan/organisasi telah menggunakan Kotlin untuk [[pengembangan web]]:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;JetBrains&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Data2viz&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Fritz2&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Barclay&amp;#039;s Bank&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Sejumlah perusahaan secara terbuka menyatakan bahwa mereka menggunakan Kotlin:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;DripStat&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;[[:en:Basecamp (software)|Basecamp]]&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;[[:en:Pinterest|Pinterest]]&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Coursera&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Netflix&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Uber&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Cash App&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Trello&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Duolingo&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Corda&amp;#039;&amp;#039;, buku besar terdistribusi yang dikembangkan oleh konsorsium bank terkenal (seperti [[Goldman Sachs]], [[Wells Fargo]], [[JPMorgan Chase|JP Morgan]], [[Deutsche Bank]], [[UBS]], [[HSBC]], [[BNP Paribas]], [[Société Générale]]), memiliki lebih dari 90% kode Kotlin dalam basis kodenya.&lt;br /&gt;
&lt;br /&gt;
== Pranala luar ==&lt;br /&gt;
&lt;br /&gt;
* [[:en:Comparison of programming languages|Perbandingan bahasa pemrograman]]&lt;br /&gt;
*&lt;br /&gt;
* [http://try.kotlinlang.org/ Sampel kode]&lt;br /&gt;
&lt;br /&gt;
== Rujukan ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bahan bacaan ==&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sumber dan atribusi ==&lt;br /&gt;
&lt;br /&gt;
Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Kotlin+%28bahasa+pemrograman%29&amp;amp;oldid=27695942 Wikipedia bahasa Indonesia], revisi 27695942 (2025-08-18T23:44:30Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>