Program pertama Anda di Kotlin

1. Sebelum memulai

Android dengan logo Kotlin

Dalam kursus ini, Anda akan mem-build aplikasi dengan menulis kode dalam bahasa pemrograman Kotlin, yang merupakan bahasa yang direkomendasikan oleh Google untuk membuat aplikasi Android baru.

Kotlin adalah bahasa pemrograman modern yang membantu developer menjadi lebih produktif. Misalnya, Kotlin membuat pekerjaan Anda lebih sederhana dan menulis baris kode yang lebih sedikit untuk fungsi yang sama dibandingkan dengan bahasa pemrograman lainnya. Aplikasi yang di-build dengan Kotlin juga cenderung tidak mengalami error, sehingga aplikasi menjadi lebih stabil dan kuat bagi pengguna. Pada dasarnya, dengan Kotlin, Anda dapat menulis aplikasi Android yang lebih baik dalam waktu yang lebih singkat. Hasilnya, Kotlin mendapatkan momentum di industri dan merupakan bahasa yang digunakan sebagian besar developer Android profesional.

Untuk mulai mem-build aplikasi Android di Kotlin, penting untuk membangun dasar konsep pemrograman yang solid di Kotlin terlebih dahulu. Dengan codelab di jalur ini, Anda akan mempelajari dasar-dasar pemrograman Kotlin sebelum mendalami pembuatan aplikasi.

Yang akan Anda buat

  • Program singkat di Kotlin yang menampilkan pesan saat Anda menjalankannya.

Yang akan Anda pelajari

  • Cara menulis dan menjalankan program Kotlin sederhana.
  • Cara memodifikasi program sederhana untuk mengubah output.

Yang Anda butuhkan

  • Komputer dengan akses internet dan browser web.

2. Memulai

Dalam codelab ini, Anda akan mempelajari dan memodifikasi program sederhana di Kotlin. Anda dapat menganggap program sebagai serangkaian petunjuk untuk komputer atau perangkat seluler untuk menjalankan beberapa tindakan, seperti menampilkan pesan kepada pengguna atau menghitung biaya item di keranjang belanja. Petunjuk langkah demi langkah tentang apa yang harus dilakukan komputer disebut kode. Jika Anda mengubah kode dalam program, output-nya dapat berubah.

Anda menggunakan alat yang disebut editor kode untuk menulis dan mengedit kode. Ini mirip dengan editor teks yang memungkinkan Anda menulis dan mengedit teks, tetapi editor kode juga menyediakan fungsi untuk membantu Anda menulis kode dengan lebih akurat. Misalnya, editor kode menampilkan saran pelengkapan otomatis saat Anda mengetik, dan menampilkan pesan error jika kode salah.

Untuk mempraktikkan dasar-dasar bahasa Kotlin, Anda akan menggunakan editor kode interaktif yang disebut Kotlin Playground. Anda dapat mengaksesnya dari browser web, sehingga tidak perlu menginstal software apa pun di komputer. Anda dapat mengedit dan menjalankan kode Kotlin secara langsung di Kotlin Playground dan melihat output-nya.

Perlu diperhatikan bahwa Anda tidak dapat mem-build aplikasi Android dalam Kotlin Playground. Di jalur berikutnya, Anda akan menginstal dan menggunakan alat yang disebut Android Studio untuk menulis dan mengedit kode aplikasi Android.

Setelah Anda memahami konteks di Kotlin, mari kita lihat program pertama Anda.

3. Membuka Kotlin Playground

Pada browser web di komputer, buka Kotlin Playground.

Anda akan melihat halaman web yang mirip dengan gambar ini:

Ini menunjukkan screenshot Kotlin Playground. Editor kode menampilkan program sederhana untuk mencetak "Halo, dunia!" ke output.

Sudah ada beberapa kode default yang terisi di editor kode. Tiga baris kode berikut membentuk program sederhana:

fun main() {
    println("Hello, world!")
}

Meskipun Anda belum pernah melakukan pemrograman sebelumnya, dapatkah Anda menebak apa yang dilakukan program tersebut?

Lihat apakah tebakan Anda benar dengan melanjutkan ke bagian berikutnya.

4. Menjalankan program pertama Anda

Klik Tombol Run untuk menjalankan program Anda.

Banyak hal yang terjadi jika Anda mengklik tombol Run. Kode dalam bahasa pemrograman Kotlin berarti untuk dipahami oleh manusia, sehingga orang dapat lebih mudah membaca, menulis, dan berkolaborasi di program Kotlin. Namun, komputer Anda tidak segera memahami bahasa ini.

Anda memerlukan sesuatu yang disebut compiler Kotlin, yang mengambil kode Kotlin yang Anda tulis, melihatnya baris demi baris, dan menerjemahkannya menjadi sesuatu yang dapat dipahami oleh komputer. Proses ini disebut mengompilasi kode.

Jika kode Anda berhasil dikompilasi, program Anda akan berjalan (atau dieksekusi). Saat mengeksekusi program, komputer akan menjalankan setiap petunjuk Anda. Jika Anda pernah mengikuti resep masakan, melakukan setiap langkah dalam resep akan dianggap mengeksekusi setiap petunjuk.

Berikut adalah screenshot yang akan Anda lihat saat menjalankan program.

Screenshot ini menunjukkan bagian halaman web Kotlin Playground. Editor kode menampilkan kode untuk program Halo dunia. Di bawah editor kode terdapat panel output yang menampilkan frasa "Halo, dunia!".

Di bagian bawah editor kode, Anda akan melihat panel yang menampilkan output atau hasil program Anda:

Hello, world!

Keren! Tujuan program ini adalah mencetak atau menampilkan pesan yang berisi Hello, world!.

Bagaimana cara kerjanya? Program Kotlin harus memiliki fungsi utama, yang merupakan tempat spesifik dalam kode Anda saat compiler Kotlin dimulai. Fungsi utama adalah titik entri atau titik awal program.

Terdapat panah yang mengarah ke baris pertama dari fungsi utama program sederhana dengan label yang bertuliskan "Mulai Di Sini".

Sekarang Anda mungkin bertanya-tanya, apa itu fungsi?

5. Bagian dari fungsi

Fungsi adalah bagian dari program yang melakukan tugas tertentu. Anda dapat memiliki banyak fungsi di program atau hanya satu.

Menentukan vs. memanggil fungsi

Di kode, Anda menentukan fungsi terlebih dahulu. Artinya, Anda menentukan semua petunjuk yang diperlukan untuk menjalankan tugas tersebut.

Setelah fungsi ditentukan, Anda dapat memanggil fungsi tersebut, sehingga petunjuk dalam fungsi tersebut dapat dijalankan atau dieksekusi.

Berikut sebuah analogi. Anda menuliskan petunjuk langkah demi langkah tentang cara memanggang kue cokelat. Kumpulan petunjuk ini dapat memiliki nama: bakeChocolateCake. Setiap kali ingin membuat kue, Anda dapat mengeksekusi petunjuk bakeChocolateCake. Jika menginginkan 3 kue, Anda perlu mengeksekusi petunjuk bakeChocolateCake 3 kali. Langkah pertama adalah menentukan langkah dan memberinya nama yang dianggap menentukan fungsi. Kemudian, Anda dapat merujuk ke langkah tersebut kapan pun Anda ingin mengeksekusinya yang dianggap memanggil fungsi.

Menentukan fungsi

Berikut adalah bagian-bagian penting yang diperlukan untuk menentukan fungsi:

  • Fungsi ini memerlukan nama, agar Anda dapat memanggilnya nanti.
  • Fungsi tersebut juga dapat memerlukan beberapa input, atau informasi yang harus disediakan saat fungsi dipanggil. Fungsi tersebut menggunakan input ini untuk mencapai tujuannya. Input yang dibutuhkan bersifat opsional, dan beberapa fungsi tidak membutuhkan input.
  • Fungsi tersebut juga memiliki isi yang berisi petunjuk untuk menjalankan tugas.

Diagram ini merepresentasikan fungsi sebagai kotak hitam dengan label "nama" di atasnya, yang merupakan nama fungsi. Dalam kotak fungsi terdapat kotak yang lebih kecil yang disebut isi, yang menampilkan isi fungsi dalam fungsi. Terdapat juga label yang disebut input dengan panah yang mengarah ke kotak hitam fungsi, yang menunjukkan adanya input fungsi yang diteruskan ke fungsi.

Untuk menerjemahkan diagram di atas ke dalam kode Kotlin, gunakan sintaksis atau format berikut untuk menentukan fungsi. Urutan elemen-elemen ini penting. Kata fun harus muncul di awal, diikuti dengan nama fungsi, kemudian diikuti dengan tanda kurung, lalu diikuti dengan tanda kurung kurawal di sekeliling isi fungsi.

Diagram ini menunjukkan sintaksis (atau format) untuk mendeklarasikan fungsi ke dalam kode Kotlin. Fungsi tersebut dimulai dengan kata "fun". Di sebelah kanannya terdapat nama kotak berlabel. Di sebelah kanan kotak nama terdapat kotak berlabel input yang diapit tanda kurung. Setelah input adalah kurung kurawal terbuka. Pada baris berikutnya, terdapat kotak berlabel yang diindentasi ke kanan. Di bagian bawah fungsi, setelah bagian isi, terdapat tanda kurung kurawal tertutup.

Perhatikan bagian-bagian penting dari fungsi di contoh fungsi utama yang Anda lihat di Kotlin Playground:

  • Definisi fungsi dimulai dengan kata fun.
  • Kemudian, nama fungsinya adalah main.
  • Tidak ada input untuk fungsi, sehingga tanda kurung kosong.
  • Terdapat satu baris kode dalam isi fungsi, println("Hello, world!"), yang terletak di antara tanda kurung kurawal terbuka dan tertutup dari fungsi.

Kode fungsi utama berikut ditampilkan dalam gambar: fun main() {     println("Hello, world!") } Terdapat label yang disebut nama yang mengarah ke kata utama. Terdapat label bernama input yang mengarah ke simbol tanda kurung buka dan tutup.  Terdapat label bernama body yang mengarah ke baris kode println("Hello, world!").

Setiap bagian fungsi dijelaskan secara lebih mendetail di bawah ini.

Kata kunci fungsi

Untuk menunjukkan bahwa Anda akan menentukan fungsi di Kotlin, gunakan kata khusus fun (kependekan dari fungsi) di baris baru. Anda harus mengetik fun persis seperti yang ditunjukkan dalam semua huruf kecil. Anda tidak dapat menggunakan func, function, atau ejaan alternatif karena compiler Kotlin tidak akan mengenali maksud Anda.

Kata khusus ini disebut kata kunci di Kotlin dan disediakan untuk tujuan tertentu, seperti membuat fungsi baru di Kotlin.

Nama fungsi

Fungsi memiliki nama sehingga dapat dibedakan satu sama lain, mirip dengan cara orang memiliki nama untuk mengidentifikasi dirinya sendiri. Nama fungsi ditemukan setelah kata kunci fun.

Diagram ini menunjukkan sintaksis (atau format) untuk mendeklarasikan fungsi ke dalam kode Kotlin. Fungsi tersebut dimulai dengan kata "fun". Di sebelah kanannya terdapat nama kotak berlabel. Kotak nama ditandai dengan batas hijau dan latar belakang untuk memberi penekanan pada bagian definisi fungsi ini. Di sebelah kanan kotak nama terdapat kotak berlabel input yang diapit tanda kurung. Setelah input adalah kurung kurawal terbuka. Pada baris berikutnya, terdapat kotak berlabel yang diindentasi ke kanan. Di bagian bawah fungsi, setelah bagian isi, terdapat tanda kurung kurawal tertutup.

Pilih nama yang sesuai untuk fungsi Anda berdasarkan tujuan fungsi. Nama biasanya berupa kata kerja atau frasa kata kerja. Sebaiknya jangan gunakan kata kunci Kotlin sebagai nama fungsi.

Nama fungsi harus mengikuti konvensi camel case, dengan kata pertama dari nama fungsi semuanya adalah huruf kecil. Jika terdapat beberapa kata dalam nama, tidak ada spasi di antara kata tersebut, dan semua kata lainnya harus diawali dengan huruf kapital.

Contoh nama fungsi:

  • calculateTip
  • displayErrorMessage
  • takePhoto

Input fungsi

Perlu diperhatikan bahwa nama fungsi selalu diikuti dengan tanda kurung. Tanda kurung ini adalah tempat Anda mencantumkan input untuk fungsi.

Diagram ini menunjukkan sintaksis (atau format) untuk mendeklarasikan fungsi ke dalam kode Kotlin. Fungsi tersebut dimulai dengan kata "fun". Di sebelah kanannya terdapat nama kotak berlabel. Di sebelah kanan kotak nama terdapat kotak berlabel input yang diapit tanda kurung. Kotak input ditandai dengan batas hijau dan latar belakang untuk memberi penekanan pada bagian fungsi ini. Setelah input adalah kurung kurawal terbuka. Pada baris berikutnya, terdapat kotak berlabel yang diindentasi ke kanan. Di bagian bawah fungsi, setelah bagian isi, terdapat tanda kurung kurawal tertutup.

Input adalah potongan data yang diperlukan suatu fungsi untuk menjalankan tujuannya. Saat menentukan fungsi, Anda dapat meminta input tertentu yang diteruskan saat fungsi dipanggil. Jika tidak ada input yang diperlukan untuk fungsi, tanda kurung kosong ().

Berikut adalah beberapa contoh fungsi dengan jumlah input yang berbeda:

Diagram berikut menunjukkan fungsi yang disebut addOne. Tujuan fungsi ini adalah menambahkan 1 ke angka tertentu. Terdapat satu input, yaitu bilangan yang ditetapkan. Di dalam isi fungsi, terdapat kode yang menambahkan 1 ke angka yang akan diteruskan ke fungsi.

Diagram ini merepresentasikan fungsi sebagai kotak hitam dengan label "addOne" di atasnya, yang merupakan nama fungsi. Dalam kotak fungsi terdapat kotak yang lebih kecil, yang menampilkan isi fungsi. Di dalam kotak isi fungsi, terdapat teks yang bertuliskan "angka + 1". Di luar kotak hitam fungsi, terdapat kotak berlabel "angka" dengan panah yang mengarah ke kotak hitam fungsi. Angka tersebut adalah input untuk fungsi.

Pada contoh berikutnya, terdapat fungsi yang disebut printFullName. Terdapat dua input yang diperlukan untuk fungsi ini, satu untuk nama depan dan satu lagi untuk nama belakang. Isi fungsi mencetak nama depan dan nama belakang di output untuk menampilkan nama lengkap orang tersebut.

Diagram ini menampilkan fungsi sebagai kotak hitam dengan label "printFullName" di atasnya, yang merupakan nama fungsi. Dalam kotak fungsi terdapat kotak yang lebih kecil, yang menampilkan isi fungsi. Di dalam kotak isi fungsi, terdapat teks yang bertuliskan "Cetak firstName dan lastName di output". Di luar kotak hitam fungsi, terdapat dua kotak yang masing-masing berlabel "firstName" dan "lastName". Terdapat tanda panah dari kotak firstName dan lastName yang mengarah ke kotak hitam fungsi. firstName dan lastName adalah dua input ke fungsi.

Contoh terakhir ini menunjukkan fungsi yang tidak memerlukan input untuk diteruskan saat fungsi dipanggil. Saat Anda memanggil fungsi displayHello(), pesan Halo akan dicetak ke output.

Diagram ini menampilkan fungsi sebagai kotak hitam dengan label "displayHello", yang merupakan nama fungsi. Dalam kotak fungsi terdapat kotak yang lebih kecil, yang menampilkan isi fungsi. Di dalam kotak isi fungsi, terdapat teks yang bertuliskan "Cetak Halo di output".

Isi fungsi

Isi fungsi berisi petunjuk yang diperlukan untuk mencapai tujuan fungsi. Anda dapat menemukan isi fungsi dengan mencari baris kode yang diapit tanda kurung kurawal pembuka dan penutup.

Diagram ini menunjukkan sintaksis (atau format) untuk mendeklarasikan fungsi ke dalam kode Kotlin. Fungsi tersebut dimulai dengan kata "fun". Di sebelah kanannya terdapat nama kotak berlabel. Di sebelah kanan kotak nama terdapat kotak berlabel input yang diapit tanda kurung. Setelah input adalah kurung kurawal terbuka. Pada baris berikutnya, terdapat kotak berlabel yang diindentasi ke kanan. Kotak isi ditandai dengan batas hijau dan latar belakang untuk memberi penekanan pada bagian fungsi ini Di bagian bawah fungsi, setelah bagian isi, terdapat tanda kurung kurawal tertutup.

Penjelasan program sederhana

Lihat kembali program sederhana yang Anda lihat sebelumnya di codelab.

Kode fungsi utama berikut ditampilkan dalam gambar: fun main() {     println("Hello, world!") } Terdapat label yang disebut nama yang mengarah ke kata utama. Terdapat label bernama input yang mengarah ke simbol tanda kurung buka dan tutup.  Terdapat label bernama body yang mengarah ke baris kode println("Hello, world!").

Program ini berisi satu fungsi: fungsi utama. main adalah nama fungsi khusus di Kotlin. Saat Anda menulis kode di Kotlin Playground, kode harus ditulis dalam fungsi main() atau dipanggil dari fungsi main().

Hanya ada satu baris kode di bagian isi fungsi main() ini:

println("Hello, world!")

Baris kode ini adalah pernyataan karena melakukan tindakan tertentu, yaitu mencetak teks Hello, world! di panel output. Lebih khusus lagi, fungsi println() dipanggil pada baris kode ini. println() adalah fungsi yang sudah ditentukan dalam bahasa Kotlin. Itu berarti tim engineer yang membuat bahasa Kotlin sudah menulis deklarasi fungsi untuk fungsi println(). Fungsi ini memerlukan satu input, yaitu pesan yang harus dicetak.

Saat Anda memanggil fungsi println(), tempatkan teks pesan dalam tanda kurung setelah nama fungsi. Pastikan untuk menggunakan tanda kutip pada teks yang akan ditampilkan, seperti "Hello, world!".

Saat program dieksekusi, pesan yang diteruskan ke fungsi println() dicetak ke output:

Hello, world!

Coba

Sekarang, lihat kembali kode asli dalam program ini. Dapatkah Anda mengubah kode di Kotlin Playground sehingga output akan menampilkan pesan ini?

Hello, Android!

6. Memodifikasi program Anda

  1. Untuk mengubah pesan yang ditampilkan dalam output, ubah panggilan fungsi println() pada baris kedua program. Ganti world dengan Android di fungsi println(). Pastikan "Hello, Android!" masih berada dalam tanda kutip dan dalam tanda kurung.
fun main() {
    println("Hello, Android!")
}
  1. Jalankan program.
  2. Output akan menampilkan pesan ini:
Hello, Android!

Bagus, Anda telah mengubah program pertama Anda.

Sekarang, apakah Anda dapat mengubah kode agar pesan dicetak dua kali? Lihat output yang diinginkan:

Hello, Android!
Hello, Android!

Anda dapat memasukkan sebanyak mungkin baris petunjuk ke dalam fungsi untuk menyelesaikan tugas. Namun, perlu diperhatikan bahwa hanya boleh ada satu pernyataan per baris di Kotlin. Jika Anda ingin menulis pernyataan lain, letakkan pada baris baru fungsi.

Untuk mengubah program guna mencetak beberapa baris teks:

  1. Salin pernyataan println() awal dan tempel pernyataan kedua di bawahnya dalam isi fungsi. Kedua pernyataan println() harus berada dalam tanda kurung kurawal fungsi utama. Sekarang Anda memiliki dua pernyataan dalam isi fungsi.
fun main() {
    println("Hello, Android!")
    println("Hello, Android!")
}
  1. Jalankan program.
  2. Saat Anda menjalankan program, output-nya akan menjadi:
Hello, Android!
Hello, Android!

Anda dapat melihat pengaruh perubahan kode terhadap output.

  1. Ubah kode sehingga menjadi Hello, YOUR_NAME!.

7. Panduan gaya Kotlin

Di kursus ini, Anda akan mempelajari praktik coding yang baik untuk diikuti sebagai developer Android. Salah satu praktik tersebut adalah mengikuti standar coding Android Google untuk kode yang ditulis dalam Kotlin. Panduan lengkap ini disebut panduan gaya dan menjelaskan cara kode diformat dalam hal tampilan visual dan konvensi yang harus diikuti saat menulis kode. Misalnya, panduan gaya mencakup rekomendasi penggunaan spasi kosong, indentasi, penamaan, dan lainnya.

Tujuan mengikuti panduan gaya adalah membuat kode Anda lebih mudah dibaca dan lebih konsisten dengan cara developer Android lain menulis kodenya. Konsistensi ini penting saat berkolaborasi pada project besar bersama, sehingga gaya kode sama di semua file dalam project.

Berikut adalah beberapa rekomendasi panduan gaya yang relevan untuk apa yang telah Anda pelajari di Kotlin:

  • Nama fungsi harus dalam camel case dan harus berupa kata kerja atau frasa kata kerja.
  • Setiap pernyataan harus berada pada barisnya masing-masing.
  • Kurung kurawal pembuka akan muncul di akhir baris tempat fungsi dimulai.
  • Akan ada spasi sebelum kurung kurawal pembuka.

Kode fungsi utama berikut ditampilkan dalam gambar: fun main() {     println("Hello, world!") } Terdapat label yang disebut spasi yang mengarah ke spasi setelah simbol tanda kurung dan sebelum kurung kurawal pembuka.

  • Isi fungsi harus diindentasi oleh 4 spasi. Jangan gunakan karakter tab untuk mengindentasi kode, ketik 4 spasi.

Kode fungsi utama berikut ditampilkan dalam gambar: fun main() {     println("Hello, world!") } Terdapat panah yang mengarah ke baris kode dalam isi fungsi: println("Hello, world!"). Panah memiliki label yang bertuliskan: indentasi dengan 4 spasi.

  • Kurung kurawal penutup berada di barisnya sendiri setelah baris kode terakhir dalam isi fungsi. Kurung kurawal penutup harus sejajar dengan kata kunci fun di awal fungsi.

Kode fungsi utama berikut ditampilkan dalam gambar: fun main() {     println("Hello, world!") } Terdapat garis vertikal yang muncul di tepi kiri kode fungsi. Tombol ini terletak di sebelah kiri kata fun dan meluas hingga ke bawah secara vertikal melewati kurung kurawal penutup dari fungsi. Garis vertikal memiliki label yang bertuliskan: sejajar secara vertikal. Garis tersebut dimaksudkan untuk menunjukkan bahwa kata fun dan kurung kurawal penutup harus sejajar secara vertikal.

Anda akan mempelajari lebih lanjut tentang konvensi coding Android saat Anda mem-build pengetahuan di Kotlin. Panduan gaya lengkapnya ada di sini, tetapi jangan khawatir karena topik ini mencakup topik lain di Kotlin yang belum Anda pelajari.

8. Memperbaiki error di kode Anda

Ketika Anda mempelajari bahasa manusia, terdapat aturan sintaksis dan tata bahasa untuk cara yang benar dalam menggunakan kata dan membentuk kalimat. Demikian pula, untuk bahasa pemrograman, terdapat aturan khusus untuk menentukan kode yang valid, yang berarti kode berhasil dikompilasi.

Bagian normal dari proses coding mencakup kesalahan dan penulisan kode yang tidak valid secara tidak sengaja. Sebagai pemula, Anda mungkin akan merasa bingung atau kewalahan saat menghadapi kesalahan ini. Namun jangan khawatir, hal ini wajar. Kode jarang berfungsi dengan sempurna saat pertama kali ditulis. Sama seperti menulis dokumen yang memerlukan banyak draf, menulis kode pun memerlukan banyak iterasi hingga dapat berfungsi seperti yang diharapkan.

Jika kode tidak dapat dikompilasi dengan benar, akan terjadi error. Misalnya, jika ada salah ketik, seperti tanda petik atau tanda kurung yang hilang, compiler tidak akan memahami kode Anda dan tidak dapat menerjemahkannya ke dalam langkah-langkah yang dilakukan oleh komputer. Jika kode Anda tidak berfungsi seperti yang diharapkan, atau Anda melihat pesan error di editor kode, Anda harus kembali ke kode Anda dan memperbaikinya. Proses penyelesaian error ini disebut pemecahan masalah.

  1. Salin dan tempel cuplikan kode berikut ke dalam Kotlin Playground dan jalankan programnya. Apa yang Anda lihat?
fun main() {
    println("Today is sunny!)
}

Idealnya, Anda ingin melihat pesan Today is sunny! yang ditampilkan. Sebagai gantinya, di panel output, Anda akan melihat ikon tanda seru dengan pesan error.

Terdapat 2 pesan error dari menjalankan program: Expecting " Expecting ) Terdapat tanda seru pada lingkaran merah di samping setiap kesalahan.

Pesan error dari Kotlin Playground

Pesan error dimulai dengan kata "Expecting" karena compiler Kotlin "mengharapkan" sesuatu, tetapi tidak menemukannya dalam kode. Dalam hal ini, compiler mengharapkan tanda petik penutup dan kurung tutup untuk kode pada baris kedua program Anda.

Dalam pernyataan println(), perlu diperhatikan bahwa pesan yang akan ditampilkan memiliki tanda kutip pembuka, tetapi tidak ada tanda kutip penutup. Meskipun terdapat tanda kurung penutup dalam kode, compiler menganggap tanda kurung adalah bagian dari teks yang akan dicetak karena tidak ada tanda kutip penutup sebelumnya.

  1. Tambahkan tanda kutip penutup setelah tanda seru, sebelum tanda kurung penutup.
fun main() {
    println("Today is sunny!")
}

Fungsi utama berisi satu baris kode, yaitu pernyataan println(), dengan teks yang diapit tanda petik dan ditempatkan dalam tanda kurung: ​​"Today is sunny!".

  1. Jalankan lagi program ini.

Tidak akan ada error dan panel output akan menampilkan teks ini:

Today is sunny!

Kerja bagus untuk memperbaiki error ini. Setelah mendapatkan lebih banyak pengalaman dalam menulis kode dan memecahkan masalah error, Anda akan menyadari pentingnya memperhatikan kapitalisasi, ejaan, spasi, simbol, dan nama saat mengetik kode.

Di bagian berikutnya, Anda akan mengerjakan serangkaian latihan untuk mempraktikkan yang telah Anda pelajari. Solusi disediakan di akhir codelab, tetapi cobalah sebaik mungkin untuk menemukan jawabannya sendiri.

9. Latihan

  1. Dapatkah Anda membaca kode dalam program ini dan menebak output-nya (tanpa menjalankannya di Kotlin Playground)?
fun main() {
    println("1")
    println("2")
    println("3")
}

Setelah Anda menebak, salin dan tempel kode ini ke Kotlin Playground untuk memeriksa jawaban Anda.

  1. Gunakan Kotlin Playground untuk membuat program yang menampilkan pesan berikut:
I'm
learning
Kotlin!
  1. Salin dan tempel program ini ke Kotlin Playground.
fun main() {
    println("Tuesday")
    println("Thursday")
    println("Wednesday")
    println("Friday")
    println("Monday")
}

Perbaiki program sehingga program tersebut mencetak output ini:

Monday
Tuesday
Wednesday
Thursday
Friday

Untuk beberapa praktik awal pemecahan masalah, perbaiki error dalam latihan berikut. Untuk setiap latihan, salin kode ke Kotlin Playground di browser Anda. Coba jalankan program, dan Anda akan melihat pesan error muncul.

  1. Perbaiki error dalam program ini sehingga program tersebut menghasilkan output yang diinginkan.
fun main() {
    println("Tomorrow is rainy")

Output yang diinginkan:

Tomorrow is rainy
  1. Perbaiki error dalam program ini sehingga program tersebut menghasilkan output yang diinginkan.
fun main() {
    printLine("There is a chance of snow")
}

Output yang diinginkan:

There is a chance of snow
  1. Perbaiki error dalam program ini sehingga program tersebut menghasilkan output yang diinginkan.
fun main() {
    println("Cloudy") println("Partly Cloudy") println("Windy")
}

Output yang diinginkan:

Cloudy
Partly Cloudy
Windy
  1. Perbaiki error dalam program ini sehingga program tersebut menghasilkan output yang diinginkan.
fun main() (
    println("How's the weather today?")
)

Output yang diinginkan:

How's the weather today?

Setelah menyelesaikan latihan ini, periksa jawaban Anda terhadap solusi di bagian berikutnya.

10. Solusi

  1. Output program adalah:
1
2
3
  1. Kode dalam program Anda akan terlihat seperti:
fun main() {
    println("I'm")
    println("learning")
    println("Kotlin!")
}
  1. Ini adalah kode yang benar untuk program:
fun main() {
    println("Monday")
    println("Tuesday")
    println("Wednesday")
    println("Thursday")
    println("Friday")
}
  1. Kurung kurawal penutup yang menunjukkan akhir dari isi fungsi untuk fungsi main tidak ada di baris ketiga program.

Kode yang benar:

fun main() {
    println("Tomorrow is rainy")
}

Output:

Tomorrow is rainy
  1. Saat menjalankan program, Anda akan melihat error Unresolved reference: printLine. Hal ini dikarenakan printLine() bukan fungsi yang dikenali di Kotlin. Anda juga bisa melihat bagian kode yang menyebabkan error ditandai dengan warna merah di Kotlin Playground. Ubah nama fungsi menjadi println untuk mencetak baris teks ke output, yang akan memperbaiki error.

Kode yang benar:

fun main() {
    println("There is a chance of snow")
}

Output:

There is a chance of snow
  1. Saat menjalankan program, Anda akan melihat error Unresolved reference: println. Pesan ini tidak secara langsung menjelaskan cara memperbaiki masalah. Hal ini terkadang dapat terjadi saat Anda memecahkan masalah error, dan mengharuskan Anda melihat kode secara lebih mendalam untuk menyelesaikan perilaku yang tidak diharapkan.

Setelah dilihat lebih dekat, panggilan fungsi println() kedua dalam kode berwarna merah, yang menandakan tempat masalahnya berada. Kotlin hanya mengharapkan satu pernyataan di setiap baris. Dalam kasus ini, Anda dapat memindahkan panggilan fungsi println() kedua dan ketiga ke baris baru yang terpisah untuk menyelesaikan masalah.

Kode yang benar:

fun main() {
    println("Cloudy")
    println("Partly Cloudy")
    println("Windy")
}

Output:

Cloudy
Partly Cloudy
Windy
  1. Jika menjalankan program, Anda akan melihat error: Function 'main' must have a body. Isi fungsi harus diapit dalam tanda kurung kurawal pembuka dan kurung kurawal penutup { }, bukan tanda kurung pembuka dan penutup ( ).

Kode yang benar:

fun main() {
    println("How's the weather today?")
}

Output:

How's the weather today?

11. Kesimpulan

Selamat, Anda berhasil menyelesaikan pengantar Kotlin ini!

Anda telah bekerja dengan program sederhana di Kotlin dan menjalankannya untuk melihat teks yang dicetak ke output. Anda memodifikasi program dengan berbagai cara dan mengamati bagaimana perubahan tersebut dapat memengaruhi output. Wajar saja jika ada kesalahan saat melakukan pemrograman, sehingga Anda juga mulai mempelajari cara memecahkan masalah dan memperbaiki error dalam kode, yang merupakan keterampilan penting yang akan membantu Anda di masa mendatang.

Lanjutkan ke codelab berikutnya untuk mempelajari cara menggunakan variabel di Kotlin sehingga Anda dapat membuat program yang lebih menarik.

Ringkasan

  • Program Kotlin memerlukan fungsi utama sebagai titik masuk program.
  • Untuk menentukan fungsi di Kotlin, gunakan kata kunci fun, diikuti dengan nama fungsi, input apa pun yang diapit tanda kurung, diikuti dengan isi fungsi yang diapit tanda kurung kurawal.
  • Nama fungsi harus mengikuti konvensi camel case dan dimulai dengan huruf kecil.
  • Gunakan panggilan fungsi println() untuk mencetak beberapa teks ke output.
  • Lihat panduan gaya Kotlin untuk pemformatan dan konvensi kode yang harus diikuti saat membuat coding di Kotlin.
  • Pemecahan masalah adalah proses penyelesaian error dalam kode Anda.

Pelajari lebih lanjut