Mengapa anda perlu belajar Go?

Mengapa anda perlu belajar Go?
Sumber imej

Go ialah bahasa pengaturcaraan yang agak muda tetapi popular. Oleh data tinjauan Stack Overflow, Golang yang menerima tempat ketiga dalam ranking bahasa pengaturcaraan yang ingin dikuasai oleh pembangun. Dalam artikel ini kami akan cuba memahami sebab populariti Go, dan juga melihat di mana bahasa ini digunakan dan mengapa bahasa ini secara amnya berbaloi untuk dipelajari.

Sedikit sejarah

Bahasa pengaturcaraan Go dicipta oleh Google. Sebenarnya, nama penuhnya Golang ialah terbitan "bahasa Google". Walaupun fakta bahawa dalam pengumuman bahasa itu dipanggil muda, tahun ini ia berumur sepuluh tahun.

Matlamat pencipta Go adalah untuk membangunkan bahasa pengaturcaraan yang mudah dan cekap yang boleh digunakan untuk mencipta perisian berkualiti tinggi. Rob Pike, salah seorang pencipta Go, berkata bahawa Go direka untuk pengaturcara syarikat yang merupakan graduan yang agak baru dan mengetahui Java, C, C++ atau Python. Bagi mereka, Go ialah bahasa yang anda boleh fahami dan biasakan dengan cepat.

Pada mulanya, ia adalah alat dalam Google, tetapi dari masa ke masa ia muncul dari kedalaman perbadanan dan menjadi pengetahuan umum.

Kelebihan bahasa

Golang mempunyai sejumlah besar kelebihan, baik yang terkenal mahupun yang tidak begitu terkenal.

Kesederhanaan. Sebenarnya, ini adalah matlamat utama mencipta bahasa, dan ia telah dicapai. Go mempunyai sintaks yang agak mudah (dengan andaian tertentu) supaya aplikasi boleh dibangunkan lebih pantas daripada beberapa bahasa lain. Dan terdapat dua perkara menarik di sini.

Pertama, Golang boleh dipelajari dengan cepat oleh seorang pemula yang lengkap dalam pengaturcaraan - seseorang yang tidak tahu apa-apa bahasa sama sekali dan hanya merancang untuk menjadi pembangun. Orang boleh mengatakan tentang Go bahawa ia hampir tidak rumit (secara relatifnya), seperti PHP atau Pascal, tetapi sekuat C++.

Kedua, Go boleh dikuasai oleh "pengaturcara yang sudah terbentuk", yang sudah mengetahui satu atau lebih bahasa. Selalunya, pembangun belajar Go selepas menguasai Python atau PHP. Selanjutnya, beberapa pengaturcara berjaya menggunakan pasangan Python/Go atau PHP/Go.

Sebilangan besar perpustakaan. Jika anda kehilangan ciri dalam Go, anda boleh menggunakan salah satu daripada banyak perpustakaan untuk menyelesaikan kerja. Go mempunyai kelebihan lain - anda boleh berinteraksi dengan perpustakaan C dengan mudah. Malah terdapat pendapat bahawa perpustakaan Go adalah pembungkus untuk perpustakaan C.

Kebersihan kod. Pengkompil Go membolehkan anda memastikan kod anda bersih. Sebagai contoh, pembolehubah yang tidak digunakan dianggap sebagai ralat penyusunan. Go menyelesaikan kebanyakan masalah pemformatan. Ini dilakukan, sebagai contoh, menggunakan program gofmt semasa menyimpan atau menyusun. Pemformatan diperbetulkan secara automatik. Anda boleh mengetahui lebih lanjut tentang semua ini dalam tutorial. Berkesan.

Penaipan statik. Satu lagi kelebihan Go ialah ia mengurangkan kemungkinan pembangun membuat kesilapan. Ya, untuk beberapa hari pertama seorang pengaturcara yang terbiasa dengan menaip dinamik menjadi jengkel apabila dia perlu mengisytiharkan jenis untuk setiap pembolehubah dan fungsi, serta untuk semua yang lain. Tetapi kemudiannya menjadi jelas bahawa terdapat kelebihan berterusan di sini.

GoDoc. Utiliti yang sangat memudahkan kod pendokumentasian. Kelebihan besar GoDoc ialah ia tidak menggunakan bahasa tambahan seperti JavaDoc, PHPDoc atau JSDoc. Utiliti menggunakan jumlah maksimum maklumat yang diekstrak daripada kod yang didokumenkan.

Penyelenggaraan kod. Ia mudah diselenggara berkat sintaksnya yang ringkas dan padat. Semua ini adalah warisan Google. Memandangkan perbadanan itu mempunyai sejumlah besar kod untuk pelbagai produk perisian, serta puluhan ribu pembangun yang menyusun semuanya, masalah penyelenggaraan timbul. Kod harus difahami oleh semua orang yang mengusahakannya, didokumentasikan dengan baik dan ringkas. Semua ini boleh dilakukan dengan Go.

Pada masa yang sama, tidak ada kelas di Golang (terdapat struktur, struct), tidak ada sokongan untuk warisan, yang sangat memudahkan perubahan kod. Selain itu, tiada pengecualian, anotasi, dsb.

Apa yang boleh anda tulis dalam Go?

Hampir semuanya, kecuali beberapa perkara (contohnya, perkembangan yang berkaitan dengan pembelajaran mesin - Python dengan pengoptimuman peringkat rendah dalam C/C++ dan CUDA lebih sesuai di sini).

Segala-galanya boleh ditulis, ini adalah benar terutamanya untuk perkhidmatan web. Di samping itu, Go bernilai membangunkan aplikasi untuk pengguna akhir dan untuk membangunkan daemon, UI, dan sesuai untuk aplikasi dan perkhidmatan merentas platform.

Permintaan untuk Golang

Mengapa anda perlu belajar Go?
Lama kelamaan, bahasa itu semakin diminati. Sebagai tambahan kepada syarikat-syarikat yang terdapat dalam gambar di atas, Kumpulan Mail.ru, Avito, Ozon, Lamoda, BBC, Canonical dan lain-lain bekerja dengan Golang.

β€œKami memutuskan untuk meningkatkan perniagaan; adalah penting bagi kami untuk membina platform teknologi asas baharu yang akan memastikan pembangunan pesat produk. Kami bergantung pada Go kerana kelajuan dan kebolehpercayaannya, dan yang paling penting, penonton pengaturcara yang menggunakannya,” kata wakil Ozon pada 2018, selepas syarikat itu memutuskan untuk beralih ke Golang.

Nah, bagaimana dengan pendapatan? Gaji pemaju Go tahun lepas purata 60-140 ribu rubel Menurut "Bulatan Saya" Berbanding 2017, angka ini meningkat sebanyak 8,3%. Pertumbuhan mungkin berterusan pada 2019 kerana begitu banyak syarikat memerlukan pemaju Golang.

Apa seterusnya?

Pembangunan Golang pasti tidak akan terhenti. Keperluan untuk pakar yang baik yang mengetahui bahasa ini hanya akan meningkat, jadi ia tidak akan sukar untuk pakar (pemula atau profesional) untuk mencari pekerjaan. Pada dasarnya, kenyataan ini masih relevan hari ini, kerana terdapat kekurangan berterusan pemaju dalam pasaran IT.

Go adalah baik untuk pengaturcara pemula dan profesional yang sudah mengetahui satu atau lebih bahasa pengaturcaraan. Hampir mana-mana pengaturcara boleh mempelajarinya atau mempelajarinya semula.

Artikel tersebut disediakan bersama guru Kursus golang di GeekBrains oleh Sergei Kruchinin, yang mengucapkan ribuan terima kasih kepada beliau!

Sumber: www.habr.com

Tambah komen