Anda di halaman 1dari 3

Dicoding Academy Materi : Memulai Pemograman dengan

Kotlin
A. Pendahuluan Materi
Kotlin merupakan bahasa utama yang digunakan dalam pengembangan Android. Saat
ini, Kotlin sudah stabil dan banyak digunakan oleh industri, seperti Gojek, Netflix, Twitter
dan masih banyak lagi. Selain pengembangan Android, Kotlin dapat digunakan untuk
berbagai macam pengembangan aplikasi, baik itu server atau backend, maupun website.
Bahkan saat ini tengah dikembangkan Kotlin/Native, yang memungkinkan developer
untuk menggunakannya sebagai bahasa pemrograman dalam pengembangan aplikasi di
platform lain seperti embedded system, desktop, macOS, dan iOS. Banyaknya komunitas
yang berkontribusi untuk Kotlin membuat bahasa ini berkembang sangat pesat. Kotlin
dinobatkan sebagai “Fastest growing languages” oleh GitHub Octoverse 2018 mengalahkan
Rust, Go, dll.

Kenapa saya harus belajar kelas ini?

 Materi relevan dengan tools dan framework yang banyak dipakai sekarang.
 Materi memberi pengantar untuk belajar functional programming serta OOP
menggunakan Kotlin.
 Dengan menggunakan Kotlin pengembangan aplikasi akan jauh lebih cepat.
 Pengembangan aplikasi menggunakan Kotlin bisa berjalan bersamaan dengan Java
dalam satu proyek.
 Kotlin menjadi bahasa resmi dalam pengembangan Android dan dapat digunakan
untuk pengembangan platform lain seperti server/backend, dan website.
 Sebagai prasyarat untuk menuju kelas Belajar Prinsip Pemrograman SOLID yang
merupakan langkah berikutnya dalam learning path Android Developer.
 Sebagai prasyarat untuk menuju kelas selanjutnya seperti Belajar Membuat Aplikasi
Android untuk Pemula dan Belajar Fundamental Aplikasi Android.

Materi apa saja yang akan dipelajari?

 Pengenalan Kotlin : Memperkenalkan sejarah Kotlin, mengapa harus mempelajari


Kotlin, karakteristik Kotlin, dan bagaimana Kotlin berperan dalam pengembangan
aplikasi. Akan dibahas juga tentang ekosistem Kotlin.
 Membangun dan Menjalankan Program Kotlin : Membuat program pertama di
Kotlin dan menjalankannya. Selain itu, Anda akan belajar bagaimana menyiapkan dan
menginstal beberapa tools seperti IDE dan build tools. Materi ini akan fokus pada
penggunaan Gradle sebagai build tools dan menggunakan Kotlin DSL sebagai bahasa
pada Gradle. Selain itu, pada materi ini akan membahas tentang struktur Gradle, cara
menambahkan dependensi, menambahkan plugin, dan cara mengkonfigurasi plugin.
 Kotlin Fundamental : Memahami tentang teori dasar Kotlin. Dengan mempelajari
konsep dasar dari Kotlin seperti menggunakan tipe data, membuat fungsi dasar,
menangani tipe data null, dan membuat String Template.
 Control Flow : Mempelajari perbedaan antara expression dan statement, cara
menggunakan enumeration, cara mengontrol aliran program menggunakan ekspresi if
dan when, dan bagaimana menerapkan perulangan menggunakan while, do-while, dan
break and continue.
 Data Class dan Collections : Fokus pada bagaimana mengelola data di Kotlin
dengan menggunakan data class dan collection. Anda juga akan belajar mengenai
perbedaan antara collection yang ada pada Kotlin dan menggunakannya. 
Dicoding Academy Materi : Memulai Pemograman dengan
Kotlin
 Kotlin Functional Programming : Belajar lebih detail mengenai anatomi fungsi di
Kotlin, bagaimana perilaku fungsi di Kotlin, lambda, high-order dan konsep
fungsional lainnya. Dan juga Anda akan belajar beberapa standard library yang
berhubungan dengan functional programming.
 Object-Oriented Programming : Memahami mengenai konsep OOP pada Kotlin,
bagaimana membuat sebuah class, properti dan fungsi dari class, dan mensimulasikan
problematika dunia nyata dalam paradigma Object-Oriented Programming (OOP).
 Kotlin Generic : Belajar tentang variance, dan cara menggunakan generic pada
collection.
 Kotlin Concurrency : Belajar dasar dari konsep concurrency seperti process dan
thread. Anda juga akan diajarkan tentang permasalahan dalam proses yang bersamaan
seperti deadlock, livelock, starvation, dan race condition. Dengan memahami
permasalahan tersebut, Anda akan belajar menggunakan Coroutine dalam
menyelesaikannya.
 Submission : Mengirimkan proyek latihan yang berisi hasil pembelajaran Kotlin
Fundamental hingga Kotlin Concurrency.

Modul 1 : Pengenalan Kotlin

Kotlin dapat digunakan untuk berbagai macam pengembangan aplikasi, baik itu server atau
backend, website, maupun mobile Android. Bahkan saat ini tengah
dikembangkan Kotlin/Native. Apa uniknya? Kotlin/Native memungkinkan developer untuk
menggunakannya sebagai bahasa pemrograman dalam pengembangan aplikasi di platform
lain seperti embedded system, desktop, macOS, dan iOS. Bahkan tak menutup kemungkinan
Kotlin juga bisa digunakan untuk data science dan machine learning. Menarik, bukan?

Dukungan tools untuk Kotlin , sangat kuat. Kita bisa dengan mudah menggunakan Kotlin
pada IDE seperti IntelliJ IDEA, Android Studio, Eclipse, dan NetBeans. Anda pun bisa
menggunakan perintah terminal untuk mengkompilasi dan menjalankan Kotlin. Begitu pula
untuk build tools. Pada JVM kita bisa menggunakan Gradle, Maven, Ant, atau Kobalt.
Tersedia juga beberapa build tools yang menargetkan JavaScript.

Sebagaimana dijelaskan, kita bisa menargetkan Kotlin ke beberapa target. Kotlin akan
menghasilkan bytecode yang berbeda sesuai dengan targetnya. Ketika menargetkan JVM,
Kotlin akan menghasilkan bytecode yang kompatibel dengan Java. Kemudian ketika
menargetkan JavaScript, Kotlin akan melakukan transpile ke ES5.1 dan menghasilkan kode
Dicoding Academy Materi : Memulai Pemograman dengan
Kotlin
yang kompatibel dengan sistem modul termasuk AMD dan CommonJS. Sedangkan untuk
native, Kotlin akan menghasilkan kode yang spesifik dengan platformnya melalui LVVM.

Pada modul ini kita akan mencoba mengenal Kotlin secara lebih mendalam. Harapannya,
sebelum mempelajari komponen-komponen pada Kotlin secara spesifik, kita semua bisa
memahami untuk apa saja Kotlin bisa digunakan, apa saja kelebihan dan kekurangannya,
karakteristiknya, dan juga seperti apa ekosistem Kotlin di dunia pengembangan aplikasi.

Anda mungkin juga menyukai