Memulai Pemrograman Dengan Kotlin

Memulai Pemrograman Dengan Kotlin

Disusun oleh: Dicoding Indonesia Level: Dasar - Pemula Estimasi: 40 jam
Teknologi:Android|Multi Platform
Bagikan kelas ini:

Deskripsi

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.

Kelas ini disusun oleh expert developer kami berkolaborasi dengan Deny Prasetyo (Senior Software and Infrastructure Engineer, Gojek). Materi dalam kelas ini disesuaikan untuk Anda yang ingin memahami konsep-konsep dasar Kotlin, functional programming, Object-Oriented Programming (OOP), concurrency pada Kotlin, dan lain-lain.


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. 
  • 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.

Anda tentukan sendiri berapa lama waktu belajar materi kelas ini. Materi kelas didesain untuk diselesaikan dalam waktu 40 jam. Jika Anda meluangkan waktu sedikitnya 10 jam saja dalam seminggu, maka sangat dimungkinkan Anda bisa menuntaskan kelas ini dalam waktu 30 hari. Namun tidak menutup kemungkinan Anda menyelesaikan dalam waktu yang jauh lebih cepat.


Prasyarat mengikuti kelas ini adalah:

  • Mampu mengoperasikan komputer dengan baik. 
  • Kelas ini didesain untuk pemula, sehingga tidak ada prasyarat dalam pemahaman pemrograman sebelumnya.
  • Anda harus mandiri, berkomitmen, benar-benar punya rasa ingin tahu dan tertarik pada subjek. 
  • Anda harus gigih, temukan topik yang menarik, bermain-main dan mengotak-atik ilmu yang Anda dapatkan. 
  • Sebaik apa pun materi struktur kelas ini, tak akan berguna tanpa keseriusan Anda untuk belajar, berlatih, dan mencoba.


Spesifikasi minimal Komputer/Laptop:

  • Operating Sistem : Microsoft Windows, Linux, atau MacOS.
  • RAM sebesar 2 GB RAM minimum, (4 GB RAM direkomendasikan)
  • Terdapat 1.5 GB ruang kosong pada penyimpanan.
  • Resolusi layar minimal 1024x768.


Tools yang digunakan:

  • OpenJDK. Cara instalasi akan diajarkan pada kelas ini.
  • Gradle. Cara instalasi akan diajarkan pada kelas ini.
  • Intellij Idea Community. Cara instalasi akan diajarkan pada kelas ini.

Apa kata lulusan Dicoding Academy?

Sudah ribuan siswa yang sukses belajar di Dicoding Academy. Mau tau pendapat dari sisi mereka? Ini adalah testimoni asli mereka. Mau tahu lebih banyak? Lihat testimoni siswa lainnya.

Pertanyaan

Bila Anda memiliki pertanyaan / kendala ketika belajar di kelas ini, Anda dapat buka tab pertanyaan-pertanyaan yang sering diajukan di FAQ

Tim Reviewer

Nur Rohman
Nur Rohman
Chief Product Officer at Dicoding Indonesia
Khrisna Indrawan Eka Putra
Khrisna Indrawan Eka Putra
Code Reviewer at Dicoding Indonesia
Ahmad Arif Faizin
Ahmad Arif Faizin
Academy Content Writer at Dicoding Indonesia
Dimas Catur Wibowo
Dimas Catur Wibowo
Code Reviewer at Dicoding Indonesia
  • Associate Android Developer


Agista Septiyanto
Agista Septiyanto
Code Reviewer at Dicoding Indonesia
Alfian Yusuf Abdullah
Alfian Yusuf Abdullah
Code Reviewer at Dicoding Indonesia
  • Associate Android Developer
  • Kotlin Enthusiast
  • UI/UX Enthusiast
Aditya Tri Nugroho
Aditya Tri Nugroho
Front End Developer at Nalysa
Deny Prasetyo
Deny Prasetyo
Cloud Automation Lead - Gopay Indonesia
  • Kotlin Enthusiast. 
  • Co-organizer KotlinID. Writer in Progress! 
  • Backend and System Engineer


Silakan masuk dahulu ke Dicoding untuk dapat mengambil kelas ini

Masuk

Kunjungi Online Store Kami

Kelas ini disusun oleh:

Dicoding Indonesia
Dicoding Indonesia

Decode Ideas
Discover Potentials