Pilih bahasa Anda
Kursus Pemrograman Golang
Lebih dari 2 juta pelajar di seluruh dunia

Kursus Pemrograman Golang

Kuasai Go dari dasar dan bangun keterampilan untuk menulis perangkat lunak yang cepat, andal, dan siap produksi. Kursus ini mencakup segalanya mulai dari sintaks inti dan konkurensi hingga REST API, integrasi database, dan penerapan DevOps. Baik Anda baru mengenal Go atau meningkatkan kemampuan dari bahasa lain, Anda akan selesai dengan keahlian nyata yang siap kerja.

Dedika untuk bisnis

Apa yang akan Anda pelajari:

Anda akan memulai dengan sintaks Go, sistem tipe, dan perangkatnya, lalu beralih ke fungsi, antarmuka, dan struktur data inti. Kursus ini mencakup model konkurensi Go menggunakan goroutine, saluran, dan paket konteks untuk membangun program yang benar dan berkinerja tinggi. Anda akan belajar menulis pengujian yang menyeluruh, melakukan benchmarking kode, dan men-debug dengan alat profesional. Bagian selanjutnya mencakup pembangunan REST API, integrasi database, dan men-deploy layanan terkontainerisasi ke Kubernetes. Anda juga akan menerapkan generik, pola konkurensi tingkat lanjut, dan praktik rekayasa profesional yang digunakan dalam tim Go produksi.

Bagaimana Anda belajar secara praktis Kursus Pemrograman Golang

Bagaimana Anda berlatih Kursus Pemrograman Golang

Untuk Anda yang memiliki perusahaan dan ingin melatih tim

Di Dedika untuk perusahaan, kursus dilengkapi dengan latihan dan contoh yang disesuaikan dengan bisnis Anda dan kebutuhan perusahaan Anda.

Klik di sini

Konten kursus

8 Bab • 40 PelajaranDurasi antara 4 dan 360 jam (Anda yang menentukan)

Bab 1Lihat detail

Dasar-Dasar Bahasa Go

  • Pelajaran 1 • Variabel, Tipe, dan Konstanta

    Memperkenalkan pengetikan statis, inferensi tipe, dan deklarasi konstanta. Mendasari siswa dalam sistem tipe ketat Go sebelum struktur data yang kompleks muncul.

  • Pelajaran 2 • Operator dan Ekspresi

    Mencakup operator aritmetika, perbandingan, logika, dan bitwise. Mempersiapkan siswa untuk menulis logika kondisional dan komputasional yang bermakna.

  • Pelajaran 3 • Sintaks Dasar dan Struktur Program

    Mencakup paket, impor, fungsi main, dan sintaks pernyataan. Menyediakan kerangka struktural untuk semua program Go yang ditulis dalam kursus ini.

  • Pelajaran 4 • Struktur Aliran Kontrol

    Mengajarkan pernyataan if, for, switch, dan defer sebagai perangkat kontrol lengkap Go. Memungkinkan siswa menulis program dengan logika percabangan dan iterasi.

  • Pelajaran 5 • Pengaturan Lingkungan Go

    Instal rantai alat Go dan konfigurasikan ruang kerja yang produktif. Menetapkan dasar teknis yang menjadi sandaran setiap bab berikutnya.

Bab 2Lihat detail

Fungsi dan Penanganan Kesalahan

  • Pelajaran 1 • Rekursi dan Nilai Fungsi

    Mengeksplorasi algoritma rekursif dan fungsi sebagai nilai kelas satu. Mempersiapkan siswa untuk pola tingkat tinggi dan desain berbasis callback.

  • Pelajaran 2 • Pola Panic, Recover, dan Defer

    Mencakup propagasi panic, mekanisme pemulihan, dan pembersihan berbasis defer. Membekali siswa untuk menangani kegagalan tak terduga tanpa menghentikan layanan produksi.

  • Pelajaran 3 • Fungsi Variadic dan Closure

    Memperkenalkan parameter variadic dan literal fungsi yang menangkap cakupan. Memungkinkan API yang fleksibel dan pola pemrograman fungsional di Go.

  • Pelajaran 4 • Mendefinisikan dan Memanggil Fungsi

    Mencakup tanda tangan fungsi, parameter, dan nilai kembali. Menetapkan unit kode yang dapat digunakan kembali yang menjadi dasar semua abstraksi selanjutnya.

  • Pelajaran 5 • Tipe Error dan Konvensi

    Mengajarkan antarmuka error Go, pengembalian error idiomatis, dan sentinel error. Membangun fondasi untuk propagasi error yang kuat di seluruh basis kode.

Bab 3Lihat detail

Struktur Data Inti

  • Pelajaran 1 • Pola dan Perangkap Irisan

    Membahas semantik salinan, larik backing bersama, dan bug umum. Mencegah masalah memori dan kebenaran yang muncul dalam kode yang berat menggunakan irisan.

  • Pelajaran 2 • Struct dan Tag Struct

    Memperkenalkan deklarasi struct, akses bidang, penyematan, dan tag. Menyediakan fondasi tipe kustom untuk pemodelan domain dan serialisasi.

  • Pelajaran 3 • Array dan Irisan

    Membedakan array tetap dari irisan dinamis dan mencakup internal irisan. Menyediakan tipe koleksi andalan yang digunakan di hampir setiap program Go.

  • Pelajaran 4 • Peta

    Mencakup pembuatan peta, operasi CRUD, dan semantik iterasi. Memungkinkan pemodelan data pasangan kunci-nilai yang penting untuk konfigurasi, caching, dan tabel pencarian.

  • Pelajaran 5 • Pointer dan Pengalamatan Memori

    Menjelaskan sintaks pointer, dereferensi, dan kapan menggunakan pointer vs. nilai. Menghubungkan semantik memori dengan mutasi struct dan trade-off kinerja.

Bab 4Lihat detail

Antarmuka dan Sistem Tipe

  • Pelajaran 1 • Method pada Tipe

    Mengajarkan receiver nilai dan pointer, ekspresi method, dan promosi. Menghubungkan definisi struct dengan kontrak perilaku yang diekspresikan melalui antarmuka.

  • Pelajaran 2 • Asersi Tipe dan Switch Tipe

    Mencakup asersi tipe yang aman dan tidak aman serta konstruk switch tipe. Memungkinkan inspeksi tipe saat runtime yang diperlukan untuk pola dispatch bergaya generik.

  • Pelajaran 3 • Mendefinisikan dan Mengimplementasikan Antarmuka

    Mencakup deklarasi antarmuka, kepuasan implisit, dan kumpulan method. Menetapkan mekanisme polimorfisme yang penting untuk desain Go idiomatis.

  • Pelajaran 4 • Komposisi Antarmuka dan Pola Desain

    Mengeksplorasi menyusun antarmuka kecil dan menerapkan injeksi dependensi. Menghasilkan arsitektur kode yang terdekopling dan dapat diuji.

  • Pelajaran 5 • Antarmuka Pustaka Standar

    Memeriksa io.Reader, io.Writer, Stringer, dan error sebagai model desain. Menunjukkan bagaimana memenuhi antarmuka standar mengintegrasikan tipe kustom dengan ekosistem.

Bab 5Lihat detail

Paket, Modul, dan Perkakas

  • Pelajaran 1 • Dokumentasi dan Generasi Kode

    Mengajarkan konvensi godoc, fungsi contoh, dan go generate. Menghasilkan paket yang mendokumentasikan diri sendiri dan mengotomatiskan tugas kode yang berulang.

  • Pelajaran 2 • Alat Linting dan Kualitas Kode

    Memperkenalkan staticcheck, golangci-lint, dan penegakan pemformatan. Menanamkan standar kualitas profesional ke dalam setiap proyek sejak awal.

  • Pelajaran 3 • Prinsip Organisasi Paket

    Mencakup konvensi penamaan, identifier yang diekspor, dan paket internal. Menetapkan disiplin struktural yang membuat basis kode besar tetap dapat dinavigasi.

  • Pelajaran 4 • Perintah Build, Test, dan Vet

    Mencakup go build, go test, go vet, dan tag build. Mengintegrasikan pemeriksaan kualitas ke dalam alur kerja pengembangan sejak awal.

  • Pelajaran 5 • Modul Go dan Manajemen Dependensi

    Mengajarkan go.mod, go.sum, versi, dan proxy modul. Memungkinkan build yang dapat direproduksi dan integrasi dependensi pihak ketiga yang aman.

Bab 6Lihat detail

Konkurensi dengan Goroutine dan Channel

  • Pelajaran 1 • Pernyataan Select dan Timeout

    Mengajarkan pernyataan select untuk multipleks operasi channel. Memungkinkan pola I/O non-blocking dan alur kerja konkuren yang dikontrol waktu.

  • Pelajaran 2 • Primitif Sinkronisasi: Mutex dan WaitGroup

    Memperkenalkan sync.Mutex, sync.RWMutex, dan sync.WaitGroup untuk state bersama. Melengkapi desain berbasis channel dengan alat sinkronisasi tingkat rendah.

  • Pelajaran 3 • Goroutine dan Penjadwal Go

    Menjelaskan pembuatan goroutine, penjadwal M:N, dan siklus hidup goroutine. Menyediakan model konseptual yang diperlukan untuk bernalar tentang eksekusi konkuren.

  • Pelajaran 4 • Deteksi Race dan Pola Konkurensi

    Menggunakan pendeteksi race dan mencakup pipeline, fan-out, dan worker pool. Menghasilkan arsitektur konkuren yang terverifikasi dan siap produksi.

  • Pelajaran 5 • Channel: Komunikasi dan Sinkronisasi

    Mencakup channel unbuffered dan buffered, tipe arah, dan penutupan. Menetapkan penerusan data yang aman antar goroutine tanpa memori bersama.

Bab 7Lihat detail

Pustaka Standar Secara Mendalam

  • Pelajaran 1 • Primitif I/O dan Operasi File

    Mencakup paket io, bufio, dan os untuk membaca dan menulis data. Menyediakan fondasi I/O untuk pemrosesan file dan program berbasis aliran.

  • Pelajaran 2 • Dasar-Dasar Klien dan Server HTTP

    Memperkenalkan net/http untuk membangun server dan membuat permintaan HTTP. Menyediakan fondasi jaringan yang diperluas di bab terapan selanjutnya.

  • Pelajaran 3 • String, Byte, dan Unicode

    Mengajarkan paket strings, bytes, unicode, dan strconv untuk pemrosesan teks. Memungkinkan penanganan data UTF-8 yang benar dalam aplikasi internasional.

  • Pelajaran 4 • Waktu, Tanggal, dan Timer

    Mengeksplorasi paket time untuk mengurai, memformat, dan menjadwalkan. Memungkinkan logika yang sadar waktu dalam API, pekerjaan, dan sistem berbasis peristiwa.

  • Pelajaran 5 • Encoding dan Serialisasi

    Mencakup encoding/json, encoding/xml, dan encoding/csv untuk pertukaran data. Menghubungkan program Go ke sistem eksternal melalui format serialisasi standar.

Bab 8Lihat detail

Pengujian, Benchmarking, dan Debugging

  • Pelajaran 1 • Pengujian Unit dengan Paket testing

    Mencakup fungsi Test, pengujian berbasis tabel, dan subtest. Menetapkan disiplin pengujian inti yang diterapkan pada setiap paket dalam kursus.

  • Pelajaran 2 • Pengujian Integrasi dan Ujung ke Ujung

    Mencakup httptest, basis data dalam memori, dan kontainer pengujian. Memvalidasi perilaku sistem melintasi batas komponen dalam kondisi realistis.

  • Pelajaran 3 • Benchmarking dan Pembuatan Profil

    Menggunakan fungsi Benchmark, pprof, dan trace untuk menemukan hambatan. Menghasilkan peningkatan kinerja berbasis data yang didasarkan pada pengukuran.

  • Pelajaran 4 • Teknik dan Alat Debugging

    Mencakup debugger Delve, pelacakan berbasis log, dan diagnostik runtime. Membekali siswa untuk menemukan dan memperbaiki cacat secara efisien di program Go mana pun.

  • Pelajaran 5 • Mocking dan Test Double

    Mengajarkan mocking berbasis antarmuka, implementasi palsu, dan fixture pengujian. Memungkinkan pengujian unit terisolasi yang tidak bergantung pada sistem eksternal.

Sertifikasi

Sertifikat valid Anda setelah menyelesaikan

Kursus ini cocok untuk Anda:

  • Pengembang backend: ingin mengadopsi Go untuk pekerjaan sisi server yang lebih cepat dan lebih efisien.

  • Pengembang Python atau JavaScript: siap beralih ke bahasa yang diketik secara statis dan dikompilasi.

  • Mahasiswa ilmu komputer: membangun portofolio dengan bahasa yang dihargai di pasar kerja.

  • Insinyur DevOps: perlu membaca, mengubah, atau menulis skrip perkakas dan otomatisasi Go.

  • Pengalih karier: bertransisi ke bidang rekayasa perangkat lunak dengan fokus pada tumpukan backend modern.

  • Programmer hobi: ingin tahu tentang pemikiran tingkat sistem tanpa kompleksitas C atau C++.

Apa kata para siswa kami

Kelasnya sangat sempurna. Saya membeli paket satu tahun dan akhirnya memiliki kesempatan untuk mengikuti berbagai topik yang saya minati tanpa perlu berganti platform... terima kasih atas semua yang kalian lakukan, saya sudah merekomendasikan kalian kepada orang lain...
Giulio Carlo
Giulio CarloSiswa Marketing Digital
Saya suka bagaimana pelajarannya langsung pada intinya dan bagaimana saya bisa berpindah bab dan melewati konten yang tidak saya butuhkan.
Mariana Ferres
Mariana FerresSiswa Fotografi
Saya suka kontennya dan cara presentasi serta transkripsi videonya, yang mempercepat prosesnya!
Luciana Alvarenga
Luciana AlvarengaSiswa Desain Kuku
Platformnya cepat, mudah digunakan. Keragaman konten dan video pelengkapnya sangat membantu dalam pembelajaran.
André Felipe
André FelipeSiswa Prompt Engineering

Pelatihan utama

FAQ

Siapa itu Dedika?

Apakah sertifikat ini berlaku di Indonesia?

Apakah kursusnya gratis?

Berapa beban belajar kursusnya?

Bagaimana bentuk kursusnya?

Bagaimana cara kerja kursusnya?

Berapa lama durasi kursusnya?

Berapa biaya atau harga kursusnya?

Apa itu kursus EAD atau online dan bagaimana cara kerjanya?

Kursus PDF