Belajar Prinsip Pemrograman SOLID
Gratis

Belajar Prinsip Pemrograman SOLID

Disusun oleh: Dicoding Indonesia Level: Dasar Estimasi: 15 jam
Teknologi:Android|iOS|Multi Platform|Web
Bagikan kelas ini:

Deskripsi

20210423104729222bfe0b3438b6d64f6e7c8c2bccbf74.jpg

Semua orang bisa membuat kode program selama dia tahu suatu bahasa pemrograman. Tetapi membuat kode program yang mudah dimengerti, mudah dikelola, dan mudah dikembangkan adalah tantangan yang nyata, bahkan untuk seorang yang sudah menjadi programmer sekalipun. Di dalam paradigma OOP (object-oriented programming), terdapat prinsip SOLID sebagai solusi yang bisa digunakan untuk menyelesaikan problem tersebut. Prinsip ini dikenalkan oleh Robert C. Martin, seorang engineer dan penulis dari buku Clean Code. 

  • Prinsip SOLID adalah salah satu fondasi utama dalam mengembangkan kode program agar lebih mudah dimengerti, dikelola, dan dikembangkan. 
  • Prinsip SOLID mampu diterapkan di banyak bahasa yang berparadigma OOP. 
  • Banyak perusahaan mensyaratkan pemahaman prinsip SOLID ketika mencari seorang developer. 
  • Menerapkan prinsip SOLID akan menghindarkan Anda dari membuat aplikasi yang mudah memiliki bug karena penerapan desain yang buruk. 
  • Beberapa bahasa pemrograman akan digunakan di kelas ini, sehingga apa pun bahasa yang sedang dipelajari, akan terbantu progres belajarnya


Target dan Sasaran Siswa

  • Kelas ini ditujukan bagi pemula yang ingin memahami bagaimana menuliskan kode yang baik dengan paradigma OOP (object-oriented programming) dengan mengacu pada standar industri.
  • Kelas dapat diikuti oleh siswa yang melek IT sehingga wajib memiliki dan dapat mengoperasikan komputer dengan baik. 
  • Kelas ini didesain untuk siswa yang memiliki latar belakang dan pemahaman mengenai pemrograman menggunakan bahasa Kotlin, Java, Swift, JavaScript, Dart, atau Python.
  • Siswa harus bisa belajar mandiri, berkomitmen, benar-benar punya rasa ingin tahu, dan tertarik pada subjek materi, karena sebaik apa pun materi kelas ini, tidak akan berguna tanpa keseriusan siswa untuk belajar, berlatih, dan mencoba. 
  • Di akhir kelas, siswa dapat memahami kelima prinsip SOLID dan siap menerapkannya dalam mengembangkan aplikasi.


Silabus

  • Object-Oriented Programming (OOP) : Mengenalkan pilar OOP yakni Inheritance, Encapsulation, Abstraction, dan Polymorphism. (3 jam) 
  • Relasi pada OOP : Mengetahui macam-macam hubungan antar objek di OOP seperti association, agregation, composition, dependency, generalization, specialization, dan implementation. (2 jam 30 menit) 
  • Software Design Principle : Menjelaskan tentang kenapa seorang developer harus memahami software design principle jika ingin membangun suatu aplikasi yang berbasis OOP. Dipelajari juga 3 karakteristik penting dari design buruk yang perlu dihindari yakni rigidity, fragility, dan immobility. (1 jam) 
  • S.O.L.I.D : Mengenalkan satu per satu prinsip dari SOLID yaitu Single Responsibility, Open Closed, Liskov Substitution, Interface Segregation, dan Dependency Inversion. (6 jam 20 menit)


Metode Ajar

  • Online - Self-paced Learning
    • Total jam belajar : 15 jam
    • Rekomendasi waktu belajar : 10 jam per minggu (selesai dalam 11 hari)
    • Anda tentukan sendiri berapa lama waktu yang akan digunakan untuk belajar materi kelas ini selama masih aktif terdaftar pada kelas.
  • Fasilitas Pengajaran
    • Materi bacaan elektronik : Materi akan disajikan dalam bentuk teks dan bacaan.
    • Forum diskusi : Setiap kelas memiliki sebuah forum diskusi yang dapat Anda gunakan untuk bertanya dan berdiskusi.
    • Evaluasi pembelajaran :  Ujian akhir kelas 
    • Sertifikat kompetensi.


Peralatan Belajar

  • Siswa wajib memiliki akses internet melalui komputer yang menggunakan Windows/Mac/Linux. 
  • Spesifikasi minimal komputer milik siswa:   
    • Sistem operasi : Windows, Linux, atau MacOS.
    • Prosesor : Dual Core (Rekomendasi Core i3 ke atas)
    • RAM : 1 GB (Rekomendasi 2 GB). 
    • Resolusi layar : 1366 x 768 (Rekomendasi Full HD 1920 x 1080).
  • Software
    • Teks Editor tergantung dari bahasa pemrograman yang dipakai misal Intellij untuk Kotlin/Java.
    • Atau menggunakan compiler online seperti Glot.io.


Alur Belajar

Langkah ke-2 Android Developer Learning Path

Langkah ke-2 iOS Developer Learning Path

Langkah ke-2 Multi-Platform App Developer Learning Path

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 membaca pertanyaan-pertanyaan yang sering diajukan di FAQ.

Tim Reviewer

Khrisna Indrawan
Khrisna Indrawan
Head of Reviewer at Dicoding Indonesia
Ahmad Arif Faizin
Ahmad Arif Faizin
Academy Content Writer at Dicoding Indonesia
Danviero Yuzwan Pratama
Danviero Yuzwan Pratama
Android Engineer at LOKET
  • Android Enthusiast
Ahmad dari Dicoding
Ahmad dari Dicoding
Head of Academy at Dicoding Indonesia
Alfian Yusuf Abdullah
Alfian Yusuf Abdullah
Code Reviewer at Dicoding Indonesia
  • Associate Android Developer
  • Kotlin Enthusiast
  • UI/UX Enthusiast
Dimas Maulana Dwi Saputra
Dimas Maulana Dwi Saputra
Curriculum Developer at Dicoding Indonesia
  • Mobile and Web Enthusiast
  • Associate Android Developer
  • React Developer
  • AWS Certified Cloud Practitioner
Anda belum dapat mempelajari kelas ini. Yuk berlangganan sekarang agar bisa belajar di Kelas ini dan juga Kelas Dicoding Academy lainnya.

Daftar sekarang untuk dapat mengikuti pembelajaran

Daftar Sekarang

Kelas ini disusun oleh:

Dicoding Indonesia
Dicoding Indonesia

Decode Ideas
Discover Potentials