
Sumber gambar
Go adalah bahasa pemrograman yang relatif muda namun populer. Menurut survei Stack Overflow, Golang-lah yang mendapat tempat ketiga dalam peringkat bahasa pemrograman yang ingin dikuasai pengembang. Dalam artikel ini, kami akan mencoba memahami alasan popularitas Go, dan juga melihat di mana bahasa ini digunakan dan mengapa itu layak dipelajari sama sekali.
Sedikit sejarah
Bahasa pemrograman Go dibuat oleh Google. Sebenarnya, nama lengkapnya Golang adalah turunan dari "bahasa Google". Terlepas dari kenyataan bahwa dalam pengumuman bahasa itu disebut muda, tahun ini akan berusia sepuluh tahun.
Tujuan yang dihadapi pencipta Go adalah mengembangkan bahasa pemrograman yang sederhana dan efektif yang dapat digunakan untuk membuat perangkat lunak berkualitas tinggi. Rob Pike, salah satu pencipta Go, mengatakan bahwa Go dirancang untuk programmer perusahaan yang baru saja menyelesaikan studi mereka dan mengenal Java, C, C ++ atau Python. Go for them adalah bahasa yang bisa Anda pahami dengan cepat dan cepat terbiasa.
Awalnya, itu adalah alat di dalam Google, tetapi seiring waktu ia keluar dari perut korporasi dan menjadi publik.
Manfaat bahasa
Golang memiliki sejumlah besar keunggulan, baik yang dikenal maupun yang tidak.
Kesederhanaan. Sebenarnya, ini adalah tujuan utama menciptakan bahasa, dan itu tercapai. Go memiliki sintaks yang cukup sederhana (dengan asumsi tertentu), sehingga aplikasi dapat dikembangkan lebih cepat daripada di beberapa bahasa lain. Dan ada dua hal menarik.
Pertama, Golang dapat dengan cepat belajar pemula yang lengkap dalam pemrograman - orang yang tidak tahu satu bahasa sama sekali dan hanya akan menjadi pengembang. Tentang Go, kita dapat mengatakan bahwa itu hampir tidak rumit (relatif, tentu saja) seperti PHP atau bahkan Pascal, tetapi sekuat C ++.
Kedua, Go dapat dikuasai oleh "programmer yang sudah matang," yang sudah tahu satu atau lebih bahasa. Paling sering, pengembang belajar Go setelah mereka menguasai Python atau PHP. Selanjutnya, beberapa programmer berhasil menggunakan sepasang Python / Go atau PHP / Go.
Sejumlah besar perpustakaan. Jika Anda kehilangan fitur apa pun di Go, Anda dapat menggunakan salah satu dari banyak perpustakaan dan menyelesaikan tugas yang diperlukan. Go memiliki satu kelebihan lagi - Anda dapat dengan mudah berinteraksi dengan perpustakaan C. Bahkan ada pendapat bahwa Go-libraries adalah pembungkus untuk C-libraries.
Kebersihan kode. Kompiler Go menjaga kode tetap bersih. Misalnya, variabel yang tidak digunakan dianggap sebagai kesalahan kompilasi. Go menangani sebagian besar masalah pemformatan. Ini dilakukan, misalnya, menggunakan program gofmt saat menyimpan atau mengkompilasi. Pemformatan dikoreksi secara otomatis. Anda dapat mempelajari lebih lanjut tentang semua ini di tutorial Efektif .
Pengetikan statis. Keuntungan lain dari Go, yang mengurangi kemungkinan pengembang membuat kesalahan. Ya, beberapa hari pertama seorang programmer, terbiasa mengetik dinamis, kesal untuk menyatakan jenis untuk setiap variabel dan berfungsi jika perlu, serta untuk segala sesuatu yang lain. Tapi kemudian menjadi jelas bahwa ada plus yang kuat.
Godoc . Utilitas yang sangat menyederhanakan mendokumentasikan kode. Keuntungan besar GoDoc adalah tidak menggunakan bahasa tambahan seperti JavaDoc, PHPDoc atau JSDoc. Utilitas menggunakan jumlah maksimum informasi yang diekstrak dari kode yang didokumentasikan.
Pemeliharaan kode. Mudah untuk mempertahankannya berkat sintaksisnya yang sederhana dan ringkas. Semua ini adalah warisan Google. Karena korporasi memiliki sejumlah besar kode untuk berbagai produk perangkat lunak, serta puluhan ribu pengembang yang memahami semua ini, masalah layanan muncul. Kode tersebut harus jelas bagi semua orang yang mengerjakannya, didokumentasikan dengan baik dan ringkas. Semua ini dimungkinkan dengan Go.
Pada saat yang sama, tidak ada kelas di Golang (ada struktur, struct), tidak ada dukungan warisan, yang sangat menyederhanakan perubahan kode. Plus, tidak ada pengecualian, anotasi, dll.
Apa yang dapat Anda tulis di Go
Hampir semuanya, dengan pengecualian beberapa poin (misalnya, pengembangan yang terkait dengan pembelajaran mesin - Python lebih cocok di sini dengan optimasi tingkat rendah dalam C / C ++ dan CUDA).
Segala sesuatu yang lain dapat ditulis, terutama berkenaan dengan layanan web. Selain itu, Go harus mengembangkan aplikasi untuk pengguna akhir dan untuk pengembangan setan, UI, sangat cocok untuk aplikasi dan layanan lintas platform.
Permintaan golang

Seiring waktu, bahasa menjadi semakin populer. Selain perusahaan-perusahaan yang hadir dalam gambar di atas, Grup Mail.ru, Avito, Ozon, Lamoda, BBC, Canonical dan lainnya bekerja dengan Golang.
βKami memutuskan untuk meningkatkan skala bisnis, penting bagi kami untuk membangun platform teknologi baru yang secara fundamental akan memastikan pengembangan produk yang cepat. Kami mengandalkan Go karena kecepatan dan keandalannya, dan yang paling penting - para pemirsa programer yang menggunakannya, βkata perwakilan Ozon pada 2018, setelah perusahaan memutuskan untuk beralih ke Golang.
Nah, bagaimana dengan pendapatan, gaji pengembang Go tahun lalu rata-rata 60-140 ribu rubel menurut My Circle. Dibandingkan dengan 2017, indikator ini meningkat sebesar 8,3%. Pada 2019, pertumbuhan kemungkinan akan berlanjut, karena banyak perusahaan membutuhkan pengembang Golang.
Apa selanjutnya
Golang pasti tidak akan berhenti berkembang. Kebutuhan akan spesialis yang baik yang tahu bahasa ini hanya akan meningkat, sehingga tidak akan sulit untuk mencari pekerjaan untuk seorang spesialis (pemula atau pro). Pada prinsipnya, pernyataan ini juga relevan sekarang, karena ada kekurangan konstan pengembang di pasar TI.
Go baik untuk programmer pemula dan pro yang sudah tahu satu atau lebih bahasa pemrograman. Hampir semua programmer dapat mempelajarinya atau mempelajarinya kembali.
Artikel itu disiapkan bersama dengan guru kursus Golang di GeekBrains Sergey Kruchinin, yang karenanya banyak terima kasih kepadanya!