We may earn an affiliate commission when you visit our partners.
Timotius Pamungkas

Kursus ini dibuat untuk membantu Anda memahami dan implementasi coding Protocol Buffers (protobuf) dan gRPC API memakai bahasa pemrograman Go pada arsitektur microservice.

Kursus ini disusun bertahap, dimulai dengan pengenalan protobuf, panduan dan konvensi penulisan, dan struktur file kursus. Anda akan mempelajari teori di balik berbagai aspek coding protobuf seperti : tipe data, komentar, enum, repeated, hubungan protobuf dan JSON, nested message, package, tipe data any, oneof, map, dan evolusi skema (schema evolution).

Read more

Kursus ini dibuat untuk membantu Anda memahami dan implementasi coding Protocol Buffers (protobuf) dan gRPC API memakai bahasa pemrograman Go pada arsitektur microservice.

Kursus ini disusun bertahap, dimulai dengan pengenalan protobuf, panduan dan konvensi penulisan, dan struktur file kursus. Anda akan mempelajari teori di balik berbagai aspek coding protobuf seperti : tipe data, komentar, enum, repeated, hubungan protobuf dan JSON, nested message, package, tipe data any, oneof, map, dan evolusi skema (schema evolution).

Di kursus ini, Anda juga belajar tentang coding gRPC API dan hubungannya dengan protobuf. Anda akan belajar bagaimana mengeloloa repository gRPC di github, status grpc, dan penanganan error, membuat API gRPC yang tangguh, timeout, retry, dan circuit breaker. Kursus ini juga termasuk coding metadata untuk server dan client gRPC, server interceptor, client interceptor, dan gRPC-REST gateway.

Dalam kursus, Anda akan praktek coding, dengan latihan membuat aplikasi bank menggunakan gRPC API dan protobuf, dengan memakai database PostgreSQL dan Go Object Relational Mapper (ORM) untuk coding dengan database. Di akhir kursus ini, Anda akan memiliki keterampilan dan pengetahuan yang diperlukan untuk membuat microservice menggunakan gRPC dan protobuf dengan bahasa pemrograman Go (Golang).

Persyaratan (wajib):

  • Pengetahuan dasar tentang bahasa pemrograman Go. Kursus ini bukan kursus dasar untuk Golang

  • Familiar dengan perintah git (push, pull, pull request, merge, branch)

Software:

  • Bahasa pemrograman : Go (Golang)

  • Protocol Buffers (protobuf)

  • gRPC

  • Github

  • Visual Studio Code (atau editor apa pun yang Anda suka)

Anda akan belajar dengan metode lab / praktek, di mana Anda diberikan teori dan tugas yang harus diselesaikan. Akan ada petunjuk untuk setiap tugas sehingga Anda dapat mencoba langsung. Jika Anda bingung, Anda dapat melihat solusi / kunci jawabannya.

  • Kursus ini berisi 130+ pelajaran, yang mencakup topik-topik berikut:

  • Pengantar protobuf, apa itu protobuf

  • Menulis protobuf (panduan dan konvensi coding)

  • Tipe data, enum, repeated, dan konversi Protobuf-JSON

  • Berbagai jenis message protobuf, multiple file and import Protobuf, nested message, dan package

  • Any, oneof, dan maps

  • Membaca / menulis protocol buffers ke disk dan JSON

  • Schema evolution dan tipe data tambahan

  • Option, validasi field, dan efek penomoran field

  • Pendahuluan gRPC, kapan memakai (atau tidak memakai) gRPCP

  • Memakai repository github untuk Protobuf dan gRPC, termasuk otomatisasi dengan github action

  • Membuat coding gRPC unary server dan client, server streaming, client streaming, dan bidirectional streaming

  • Coding API gRPC untuk bank dengan database PostgreSQL, membuat streaming API untuk kurs, dan rangkuman transaksi bank

  • Menangani gRPC status dan error, penanganan error di sisi client, dan teknik membuat API gRPC yang tahan banting, seperti : timeout, retry, dan circuit breaker

  • Coding gRPC metadata, interceptor server dan client

  • gRPC-REST gateway

Di akhir kursus, Anda akan tahu bagaimana cara coding Protocol Buffer dan gRPC menggunakan bahasa pemrograman Go. Anda akan belajar cara menulis Protobuf dengan panduan / konvensi standar, mengatur struktur file Protobuf, dan bekerja dengan tipe scalar, enum, repeated, map, any, oneof, dan nested message. Anda juga akan belajar cara membaca dan menulis Protobuf ke disk dan JSON, menangani schema evolution (forward / backward compatibility), dan memakai tipe data tambahan.

Selain itu, Anda akan memperoleh pengalaman langsung dalam coding berbagai jenis API gRPC, termasuk unary, server streaming, client streaming, dan bidirectional streaming. Anda juga akan mempelajari cara menangani status dan error gRPC, menerapkan teknik untuk membuat gRPC API tahan banting seperti timeout, retry, circuit breaker, dan konversi gRPC ke REST API dengan gRPC-REST gateway. Anda juga akan belajar membuat dokumentasi OpenAPI / swagger untuk gRPC.

Dengan kata lain, Anda akan memperoleh keterampilan dan pengetahuan praktis yang dapat Anda terapkan dalam pekerjaan,untuk membangun microservice API memakai Protocol Buffers dan gRPC dengan bahasa pemrograman Go.

Enroll now

What's inside

Learning objectives

  • Apa itu protocol buffers (protobuf) dan bagaimana memakainya untuk komunikasi data
  • Definisi / skema protocol buffers : tipe data, list, sintaks, dll
  • Protocol buffers schema evolution (evolusi skema)
  • Coding protocol buffers dengan memakai go programming language (golang)
  • Coding semua jenis grpc api dengan golang : unary, server streaming, client streaming, dan bi-directional
  • Coding database postgresql dengan gorm : go object relational mapping (orm)
  • Memakai software architecture hexagon (port & adapters) untuk membangun grpc api untuk aplikasi bank dengan coding golang
  • Membuat api grpc yang tangguh / resilient : memakai timeout / deadline, retry, dan circuit breaker
  • Menangani error di grpc, status code, metadata, interceptor
  • Grpc - rest api gateway
  • Membuat openapi documentation (otomatis) untuk api grpc
  • Show more
  • Show less

Syllabus

Selamat Datang
Selamat Datang!
Rangkuman Materi
Persyaratan & Software Yang Diperlukan
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Teaches gRPC API development, which is highly relevant for building microservices in modern software architectures
Explores Protocol Buffers, which are widely used for serializing structured data and defining service interfaces
Covers schema evolution, which is crucial for maintaining compatibility in evolving systems
Requires familiarity with Git, which is essential for collaborative software development and version control
Assumes basic knowledge of the Go programming language, so learners should complete a Golang course first
Uses PostgreSQL and Go ORM, which requires learners to set up and configure these tools

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Dasar microservice go dengan grpc & protobuf

Menurut siswa, kursus ini memberikan pondasi yang sangat kuat dan komprehensif untuk membangun microservice menggunakan Go, gRPC, dan Protocol Buffers. Materi dijelaskan dengan terstruktur dan mudah dipahami, bahkan untuk topik yang kompleks seperti gRPC streaming dan schema evolution. Contoh kode dan proyek latihan (aplikasi bank) sangat membantu dalam penerapan praktis. Meskipun ada beberapa catatan tentang penyiapan awal atau versi library, secara keseluruhan kursus ini sangat direkomendasikan bagi yang ingin mendalami topik ini.
Memerlukan dasar Go yang cukup.
"Perlu punya dasar Go yang cukup kuat sebelum mengambil kursus ini, karena pembahasannya sudah tingkat lanjut."
"Kursus ini bukan untuk pemula Go, pastikan sudah familiar dengan konsep dasar dan struktur bahasa Go."
"Membutuhkan pemahaman dasar Git seperti push, pull, merge, dll."
"Bagi yang belum familiar dengan Go, mungkin akan kesulitan mengikuti pace-nya."
Mencakup banyak aspek penting tentang gRPC dan Protobuf.
"Kursus ini mencakup topik gRPC dan Protobuf secara mendalam, dari dasar hingga advance seperti streaming dan interceptor."
"Membahas berbagai jenis gRPC API (unary, streaming) dan fitur canggih seperti timeout dan circuit breaker."
"Penjelasan tentang schema evolution sangat berguna untuk pengembangan sistem skala besar."
"Mempelajari integrasi dengan database (PostgreSQL) dan ORM Go adalah nilai tambah yang besar."
Sangat membantu pemahaman melalui contoh dan latihan.
"Contoh kasus dan codingnya membantu memahami konsep teoritisnya. Terutama project bank sangat membantu."
"Latihan codingnya sangat relevan dengan skenario dunia nyata dan memperkuat pemahaman saya."
"Metode belajarnya (teori dan tugas) sangat efektif untuk pemahaman praktis."
"Proyek akhir aplikasi bank membantu menyatukan semua konsep yang diajarkan."
Materi dijelaskan dengan jelas dan terstruktur.
"Penjelasan materi detail, terstruktur, mudah dipahami. Sangat recommended 👍"
"materinya sangat mendalam dan mudah dipahami, untuk seorang pemula dibidang ini pun saya rasa akan sangat mudah memahami materi yang diberikan."
"Materi yang disampaikan cukup jelas, runut dan berbobot, disertai studi kasus yang cukup kompleks tetapi dapat diikuti dengan baik."
"Materi dijelaskan dengan sangat terstruktur dan mudah dipahami, membuat konsep gRPC dan Protobuf menjadi jelas."
Setup awal mungkin butuh perhatian.
"Setup lingkungan di awal kadang butuh effort lebih atau penyesuaian versi library."
"Ada beberapa isu kecil saat mengikuti setup di video karena perbedaan versi, tapi bisa diatasi."
"Pastikan mengikuti panduan setup dengan teliti atau cek bagian Q&A jika ada masalah."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Coding Go : Microservice dengan Protocol Buffers & gRPC API with these activities:
Tinjau Dasar-Dasar Go
Menyegarkan pengetahuan dasar Go akan membantu Anda memahami konsep-konsep yang lebih kompleks dalam kursus ini dengan lebih mudah.
Browse courses on Go (Golang)
Show steps
  • Baca ulang catatan atau materi kursus Go sebelumnya.
  • Kerjakan latihan-latihan dasar Go.
  • Tinjau sintaks dan struktur data Go.
Membaca 'The Go Programming Language'
Membaca buku ini akan memberikan pemahaman yang lebih mendalam tentang bahasa Go, yang sangat penting untuk menguasai gRPC dan Protocol Buffers.
Show steps
  • Baca bab-bab yang relevan dengan topik kursus.
  • Kerjakan latihan-latihan di akhir setiap bab.
  • Gunakan buku ini sebagai referensi saat mengerjakan tugas kursus.
Latihan Membuat Definisi Protobuf
Berlatih membuat definisi Protobuf untuk berbagai struktur data akan membantu Anda menjadi lebih mahir dalam menggunakan Protocol Buffers.
Show steps
  • Buat definisi Protobuf untuk struktur data sederhana seperti 'Person' atau 'Address'.
  • Buat definisi Protobuf untuk struktur data yang lebih kompleks dengan nested messages dan repeated fields.
  • Gunakan definisi Protobuf Anda untuk membuat dan membaca data menggunakan Go.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Buat Cheat Sheet Protobuf dan gRPC
Membuat cheat sheet akan membantu Anda mengingat sintaks dan konsep penting dari Protobuf dan gRPC.
Show steps
  • Kumpulkan informasi penting tentang Protobuf dan gRPC.
  • Susun informasi dalam format yang mudah dibaca dan diingat.
  • Bagikan cheat sheet Anda dengan teman sekelas untuk mendapatkan umpan balik.
Membaca 'gRPC: Up and Running'
Membaca buku ini akan memberikan pemahaman yang lebih mendalam tentang gRPC dan cara menggunakannya dalam aplikasi dunia nyata.
Show steps
  • Baca bab-bab yang relevan dengan topik kursus.
  • Kerjakan contoh-contoh kode dalam buku.
  • Gunakan buku ini sebagai referensi saat mengerjakan proyek kursus.
Proyek: Microservice Sederhana dengan gRPC
Membangun microservice sederhana menggunakan gRPC akan memberikan pengalaman praktis dalam menerapkan konsep-konsep yang dipelajari dalam kursus.
Show steps
  • Rencanakan arsitektur microservice Anda.
  • Definisikan pesan Protobuf untuk komunikasi antar layanan.
  • Implementasikan layanan gRPC menggunakan Go.
  • Uji microservice Anda untuk memastikan berfungsi dengan benar.
Berkontribusi pada Proyek Open Source gRPC
Berkontribusi pada proyek open source gRPC akan membantu Anda meningkatkan keterampilan Anda dan belajar dari pengembang lain.
Show steps
  • Cari proyek open source gRPC di GitHub.
  • Identifikasi bug atau fitur yang ingin Anda kerjakan.
  • Kirimkan pull request dengan perubahan Anda.
  • Berpartisipasi dalam diskusi komunitas.

Career center

Learners who complete Coding Go : Microservice dengan Protocol Buffers & gRPC API will develop knowledge and skills that may be useful to these careers:
Insinyur Microservice
Sebagai seorang Insinyur Microservice, anda akan merancang, membangun, dan memelihara aplikasi yang terstruktur sebagai kumpulan layanan kecil yang independen. Kursus ini sangat relevan karena berfokus pada coding Protocol Buffers dan gRPC API menggunakan bahasa pemrograman Go, yang merupakan fondasi dari arsitektur microservice modern. Pemahaman tentang cara mengelola repository gRPC di Github, menangani status dan kesalahan gRPC, serta membuat API gRPC yang tangguh dengan timeout, retry, dan circuit breaker sangat penting dalam peran ini. Dengan mengikuti kursus ini, anda akan mampu mengimplementasikan microservice yang efisien dan terukur dengan memanfaatkan Protocol Buffers dan gRPC. Keahlian dalam coding berbagai jenis API gRPC dan konversi gRPC ke REST API juga akan meningkatkan kemampuan anda dalam membangun solusi microservice yang komprehensif.
Insinyur Backend
Sebagai Insinyur Backend, anda akan bekerja dengan coding sisi server dari aplikasi web dan seluler. Kursus ini akan membantu Anda memperdalam pengetahuan tentang coding Protocol Buffers dan gRPC API menggunakan bahasa pemrograman Go. Anda akan belajar cara membuat dan mengelola repository gRPC di Github, menangani status gRPC, dan membuat API gRPC yang tahan banting. Pengalaman langsung dalam coding berbagai jenis API gRPC, termasuk unary, server streaming, client streaming, dan bidirectional streaming sangat relevan dengan peran ini. Dengan mengikuti kursus ini, anda akan memiliki keterampilan dan pengetahuan praktis untuk membangun layanan backend yang efisien dan mudah dikelola.
Pengembang Go
Pengembang Go berspesialisasi dalam menggunakan bahasa Go untuk membuat perangkat lunak yang efisien dan andal. Kursus ini membantu memperdalam pemahaman tentang Go, khususnya dalam konteks microservice dan komunikasi data menggunakan Protocol Buffers dan gRPC API. Anda akan belajar tentang tipe data, enum, repeated, dan konversi Protobuf-JSON, serta berbagai jenis message protobuf. Kursus ini juga mencakup cara membaca dan menulis protocol buffers ke disk dan JSON, menangani schema evolution, dan memakai tipe data tambahan di Go. Dengan keterampilan ini, anda dapat membuat aplikasi Go yang lebih terstruktur, efisien, dan mudah dikelola, terutama dalam lingkungan microservice.
Pengembang Cloud
Pengembang Cloud berspesialisasi dalam membangun dan memelihara aplikasi yang berjalan di platform cloud. Kursus ini berguna karena berfokus pada microservice dengan Protocol Buffers dan gRPC API, yang umum digunakan dalam arsitektur cloud-native. Anda akan belajar cara coding gRPC API dan hubungannya dengan Protocol Buffers, serta cara mengelola repository gRPC di Github. Kursus ini juga mencakup penanganan status dan kesalahan gRPC, membuat API gRPC yang tahan banting, dan coding metadata untuk server dan client gRPC. Dengan keterampilan ini, anda dapat membangun aplikasi cloud yang lebih terukur, efisien, dan andal.
Insinyur API
Insinyur API bertanggung jawab untuk merancang, mengembangkan, dan memelihara antarmuka pemrograman aplikasi (API). Kursus ini sangat membantu karena fokus pada coding gRPC API dan hubungannya dengan Protocol Buffers. Anda akan belajar cara membuat coding gRPC unary server dan client, server streaming, client streaming, dan bidirectional streaming. Kursus ini membantu Anda menguasai penanganan status dan kesalahan gRPC, serta teknik membuat API gRPC yang tahan banting seperti timeout, retry, dan circuit breaker. Kemampuan untuk membuat dokumentasi OpenAPI atau swagger untuk gRPC juga akan sangat bermanfaat dalam peran ini. Insinyur API harus memiliki keterampilan dan pengetahuan praktis untuk membangun API yang efisien, aman, dan mudah digunakan.
Pengembang Full Stack
Sebagai pengembang full stack, anda akan bekerja dengan sisi depan (frontend) dan sisi belakang (backend) dari sebuah aplikasi web. Kursus ini akan membantu Anda memperdalam pengetahuan tentang coding Protocol Buffers dan gRPC API menggunakan bahasa pemrograman Go. Anda akan belajar cara membuat dan mengelola repository gRPC di Github, menangani status gRPC, dan membuat API gRPC yang tahan banting. Pengalaman langsung dalam coding berbagai jenis API gRPC, termasuk unary, server streaming, client streaming, dan bidirectional streaming sangat relevan dengan peran ini. Dengan mengikuti kursus ini, anda akan memiliki keterampilan dan pengetahuan praktis untuk membangun layanan backend yang efisien dan mudah dikelola, yang akan meningkatkan kemampuan anda sebagai full stack developer.
Arsitek Solusi
Arsitek Solusi merancang dan mengawasi implementasi solusi teknologi kompleks yang memenuhi kebutuhan bisnis. Kursus ini membekali anda dengan pemahaman mendalam tentang cara mengintegrasikan Protocol Buffers dan gRPC API dalam arsitektur microservice. Anda akan belajar bagaimana membuat API gRPC yang tangguh dan terukur, serta bagaimana menangani status dan kesalahan gRPC. Kursus ini juga mencakup coding metadata untuk server dan client gRPC, server interceptor, client interceptor, dan gRPC-REST gateway. Dengan mengikuti kursus ini, anda dapat merancang solusi yang lebih efisien dan terukur, serta memastikan interoperabilitas antara berbagai layanan dan sistem. Arsitek Solusi harus memiliki pemahaman yang kuat tentang teknologi dan bagaimana teknologi dapat digunakan untuk memecahkan masalah bisnis.
Pengembang Database
Sebagai pengembang database, anda akan fokus pada perancangan, implementasi, dan pemeliharaan dari sistem pengelolaan basis data. Bahasa Go sering digunakan untuk berinteraksi dengan basis data. Anda akan belajar membuat aplikasi bank menggunakan gRPC API dan protobuf dengan basis data PostgreSQL dan Go Object Relational Mapper (ORM). Kursus ini menyoroti pentingnya ORM untuk bekerja dengan basis data, dan protobuf untuk komunikasi. Dengan mengikuti kursus ini, anda akan punya pemahaman tentang integrasi basis data dengan microservice.
Spesialis Integrasi
Spesialis Integrasi bertanggung jawab untuk menghubungkan berbagai sistem dan aplikasi agar dapat bekerja bersama secara harmonis. Kursus ini dapat membantu karena membahas Protocol Buffers dan gRPC API, yang sering digunakan untuk integrasi antara layanan mikro. Anda akan belajar tentang tipe data, enum, repeated, dan konversi Protobuf-JSON, serta berbagai jenis message protobuf. Kemampuan untuk membaca dan menulis protocol buffers ke disk dan JSON, menangani schema evolution, dan memakai tipe data tambahan juga sangat relevan. Dengan kursus ini, anda mampu membangun solusi integrasi yang lebih efisien dan andal.
Konsultan DevOps
Konsultan DevOps membantu organisasi mengoptimalkan proses pengembangan dan operasional mereka. Kursus ini, yang berfokus pada coding Protocol Buffers dan gRPC API menggunakan bahasa pemrograman Go, dapat membantu Anda memahami bagaimana mengotomatiskan dan meningkatkan efisiensi dalam siklus hidup pengembangan perangkat lunak. Pembelajaran tentang cara mengelola repositori gRPC di Github, menangani status dan kesalahan gRPC, serta membuat API gRPC yang tangguh dengan timeout, retry, dan circuit breaker sangat berguna. Dengan kursus ini, Anda dapat memberikan saran yang lebih baik kepada klien tentang cara menerapkan praktik DevOps yang efektif.
Insinyur Kualitas
Sebagai Insinyur Kualitas, anda bertanggung jawab untuk memastikan kualitas perangkat lunak yang dikembangkan oleh tim. Kursus ini, yang berfokus pada microservice dengan Protocol Buffers dan gRPC API, dapat membantu Anda dalam merancang dan melaksanakan pengujian yang efektif untuk layanan mikro. Dengan pemahaman tentang protokol dan bagaimana data dipertukarkan, Anda dapat membuat pengujian integrasi dan pengujian ujung-ke-ujung yang lebih komprehensif. Kursus ini memberikan wawasan tentang cara membangun sistem yang lebih stabil dan dapat diandalkan.
Insinyur Keamanan
Insinyur Keamanan bertanggung jawab untuk melindungi sistem dan data dari ancaman keamanan. Kursus ini dapat membantu karena pemahaman tentang Protocol Buffers dan gRPC API sangat penting dalam mengamankan komunikasi data antara layanan mikro. Anda akan belajar cara menangani status dan kesalahan gRPC, serta bagaimana menerapkan teknik keamanan seperti otentikasi dan otorisasi menggunakan metadata dan interceptor gRPC. Dengan kursus ini, Anda dapat membangun sistem yang lebih aman dan tahan terhadap serangan.
Analis Sistem
Seorang Analis Sistem menilai dan meningkatkan sistem TI organisasi. Kursus ini mengajarkan tentang Protocol Buffers dan gRPC API, membantu Anda memahami komunikasi data dan arsitektur microservice. Dengan pemahaman ini, Anda dapat menganalisis efisiensi dan kinerja sistem yang menggunakan teknologi ini. Anda dapat memberikan rekomendasi yang lebih baik untuk meningkatkan kinerja, keamanan, dan skalabilitas sistem. Kursus ini membantu Analis Sistem memiliki pemahaman yang mendalam tentang teknologi modern yang relevan untuk peran mereka.
Manajer Proyek Teknik
Manajer Proyek Teknik mengawasi proyek-proyek teknis. Kursus ini akan membantu Anda memahami dengan baik teknologi yang digunakan tim Anda. Anda akan belajar tentang Protocol Buffers dan gRPC API, yang umum digunakan dalam pengembangan microservice. Dengan pemahaman yang lebih baik tentang teknologi ini, Anda dapat mengelola proyek dengan lebih efektif, membuat keputusan teknis yang lebih tepat, dan berkomunikasi dengan tim teknis secara lebih efisien. Kursus ini memberi manajer proyek kepercayaan diri untuk memimpin proyek-proyek teknis yang kompleks.
Insinyur Jaringan
Insinyur Jaringan memiliki peran krusial dalam mendesain, mengelola, dan memelihara infrastruktur jaringan suatu organisasi. Walaupun terdengar tidak terkait, pemahaman tentang Protocol Buffers dan gRPC dapat meningkatkan kemampuan dalam mengoptimalkan kinerja jaringan dan memastikan komunikasi yang efisien antara berbagai layanan. Kursus ini membantu Anda memahami bagaimana data distrukturkan dan ditransfer menggunakan Protocol Buffers, yang memungkinkan Anda untuk mengidentifikasi potensi bottleneck dan meningkatkan throughput. Dengan pengetahuan ini, Anda dapat merancang infrastruktur jaringan yang lebih responsif dan efisien.

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Coding Go : Microservice dengan Protocol Buffers & gRPC API.
Buku ini adalah referensi komprehensif untuk bahasa Go. Ini mencakup semua aspek bahasa, dari dasar-dasar hingga topik-topik lanjutan. Buku ini sangat berguna untuk memahami nuansa bahasa Go yang mungkin tidak tercakup secara rinci dalam kursus. Ini juga merupakan buku teks yang umum digunakan di banyak universitas.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser