Pengenalan Bahasa Pemrograman Go(Golang)

0
125

Berkenalan dengan Bahasa Golang

Pernah Mendengar Bahasa Pemrograman Golang ?

    Bahasa yang lagi populer saat ini, sekarang banyak perushaan yang menggunakan bahasa pemrograman Golang, seperti Tokopedia dan Gojek.

Sehebat apa sih Golang sehingga perusahaan besar menggunakan Golang ?

Pengertian Golang

      Go atau bisa disebut GoLang. Golang adalah bahasa pemrograman yang dibuat oleh Google dan tim pengembangnya pada tahun 2009. Golang merupakan bahasa pemrograman yang sifatnya open-source dan gratis, saat ini golang dikelola oleh Google. Salah satu anggota pengembang Go antara lain Ken Thompson yang paling dikenal karena karyanya dalam mengembangkan sistem operasi Unix, lalu ada juga Robert Griesemer dan Rob Pike. Kompiler dari Go awalnya ditulis dalam bahasa C , tetapi sekarang kompiler Go ditulis dengan bahasanya sendiri yaitu Go. Golang biasanya digunakan untuk membuat RestAPI karena bahasa ini lebih friendly dari segi sintaks, dan juga dari segi efisiensi golang tidak kalah jauh dari bahasa C atau C++ sehingga untuk pembuatan RestAPI akan sangat menguntungkan karena dapat mengurangi waktu akses dari API itu sendiri.

Lalu apa yang membuat Go berbeda dengan bahasa pemrograman lain?

  • Penulisan lebih terstruktur.
  • Memiliki garbage collector.
  • Keamanan memori lebih terjaga.
  • Tipe data String di Go adalah UTF-8 yang di encode secara default.
  • Memiliki sintaks yang lebih sederhana dibandingkan dengan bahasa pemrograman lain.

Mengapa Go diciptakan?

    Ada banyak bahasa pemrograman yang dapat dipilih pada saat ini. Setiap bahasa memiliki keunggulan tersendiri dan juga memiliki style yang berbeda. Bahasa pemrograman dapat didedikasikan untuk satu tugas seperti Common Bussiness Oriented Language(COBOL) atau bisa juga digunakan untuk tujuan umum seperti Java atau Javascript pada Node.

     4 hal penting yang harus dipenuhi pada bahasa pemrograman yang bagus antara lain kecepatan/efisiensi, keandalan, skala, dan kesederhanaan. Jika kita lihat pada bahasa pemrograman seperti C atau C++, bahasa-bahasa tersebut memiliki keunggulan yaitu kecepatan, skala, dan kehandalan. Namun dalam segi kesederhanaan bahasa C atau C++ sangat tidak bagus karena sulit untuk dipahami. Jika bahasa pemrograman Java disisi lain dia sangat handal dan sangat scalable, dan juga mudah dipahami namun, tidak begitu efisien dibandingkan dengan bahasa tingkat rendah lainnya. Python merupakan bahasa yang diadopsi secara luas dan sangat sederhana untuk menulis dan dapat dihandalkan namun tidak begitu efisien.

      Google pada tahun 2008 sedang mencari bahasa pemrograman yang bagus dimana mencakup 4 hal penting yaitu kecepatan/efisiensi, keandalan, skala, dan kesederhanaan. Lalu mereka memiliki ide untuk membuat suatu bahasa yang mencakup 4 hal itu, dengan bantuan Ken ThompsonRobert Griesemer dan Rob Pike. Mereka menciptakan bahasa Go yang bisa memberikan pengalaman menulis yang mudah dipahami seperti Python atau JavaScript.

Keunggulan Golang

      Ada sejumlah keunggulan yang membuat bahasa pemrograman ini menjadi menarik di mata banyak perusahaan, terutama startup. Berikut di antaranya.

1. Mudah dipelajari

     Dibandingkan pesaingnya, gaya sintaks yang dimiliki Golang lebih kecil sehingga lebih mudah dipelajari. Kamu pun tidak perlu menggunakan banyak waktu untuk mencari istilah-istilah yang sulit dimengerti. Kemudahan ini bahkan juga dapat dirasakan oleh programmer yang menggunakan gaya sintaks berbeda sekalipun.

2. Lebih cepat

     Golang dikompilasi ke dalam kode mesin sehingga dapat melampaui bahasa pemrograman lain yang bekerja dengan virtual runtime. Program-program di dalamnya juga bekerja cepat dengan API yang dapat mengompilasi dalam hitungan detik. Ini menjadikan Golang sebagai bahasa pemrograman yang lebih cepat.

3. Memiliki garbage collector

     Sistem pengelolaan memori pada Golang lebih mudah dibandingkan bahasa pemrograman lain yang menggunakan gaya sintaks C dan C++. Dengan begitu, objek-objek yang teralokasi dengan dinamis dapat dikumpulkan dalam satu garbage collector.

4. Memiliki concurrency

    Concurrency adalah kemampuan program untuk terbagi menjadi bagian-bagian lebih kecil yang bisa berfungsi sendiri. Tidak banyak bahasa pemrograman yang memiliki concurrency, tapi Golang bahkan berani memiliki kemampuan ini dengan model yang lebih mudah digunakan.

5. Memperbaiki kekurangan dari bahasa pemrograman yang sudah ada

    Golang dilengkapi dengan sejumlah fungsi mutakhir sehingga dapat mengatasi masalah pada bahasa pemrograman lainnya, seperti:

  • kurangnya dukungan komputasi paralel
  • kurangnya dukungan multicore
  • pengelolaan ketergantungan yang buruk
  • sistem tipe yang rumit
  • pengelolaan memori yang rumit

Kekurangan Golang

Seperti bahasa pemrograman lainnya, Golang juga memiliki sejumlah kekurangan. Berikut di antaranya.

1. Interface terlalu implisit

      Interface merupakan batas bersama ketika dua atau lebih komponen dalam komputer bertukar informasi. Golang memang dilengkapi dengan interface, tapi sifatnya yang implisit dapat membuat pengguna kesulitan untuk membedakan isi struct (komposit data). Kamu hanya bisa mengetahuinya begitu program telah dikompilasi.

2. Dukungan pustaka yang tidak memadai

     Golang dilengkapi dengan pustaka standar yang menyediakan berbagai informasi kode. Namun, integrasi API terhadap sumber informasi berupa Contentful ternyata tidak didukung oleh penyedia Go sehingga kamu harus menulis sendiri kode-kode yang diperlukan dan mengelolanya dengan baik.

3. Tidak bisa menggunakan fungsi yang sama untuk koleksi data berbeda

      Berbeda dengan Java, penggunaan kode pada Golang tidak bisa dilakukan secara berulang. Walaupun fungsi-fungsi yang dimilikinya terbilang canggih, kode-kode yang dapat digunakan pada satu jenis koleksi data ternyata tidak dapat digunakan untuk kelompok data yang lain.

   Bahasa pemrograman terdiri dari berbagai komponen dengan fungsi yang beragam. Jika terdapat keunggulan pada salah satu fungsi, maka kamu mungkin menemukan kekurangannya pada fungsi yang lain.

   Poin-poin di atas dapat kamu jadikan sebagai acuan dasar untuk menggunakan Golang. Kelebihan dan kekurangan yang ada menunjukkan bahwa Golang lebih sesuai bila kamu bekerja dengan byte, tapi kurang ideal untuk mereka yang bekerja menggunakan data.

 

     Sekian dari saya untuk pengenalan Bahasa pemrograman Golang dari pengertian, kelebihan dan kekurangan. Semoga bermanfaat untuk kita semua

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.