Apa itu API (Application Programming Interface)?
Programmer dalam membuat sebuah program tidak mungkin lepas dari penggunaan API (Application Programming Interface). Namun, masih banyak juga yang tidak paham betul apa itu API. Dengan memahami apa itu API, programmer jadi dapat membuat program yang lebih modular dan memiliki tanggung jawab yang jelas.
Apa sebenarnya API itu? Yang pasti, bukan sejenis api unggun.
Cerita tentang Restoran
Ada satu cerita anekdot yang beredar luas di internet mengenai restoran sebagai salah satu perumpamaan dari API.
Ketika kamu pergi ke sebuah restoran, kamu akan dilayani dan disediakan sebuah menu. Menu tersebut akan berisi makanan dan minuman apa saja yang tersedia di restoran tersebut. Kadang kala, kamu juga dapat memilih tingkat kepedasanmu sendiri atau tingkat kematangan makanan.
Kamu tentunya tinggal memilih makanan yang ada di sebuah menu dan memesannya kepada pelayan. Lalu, pelayan akan memberikannya kepada juru masak untuk dibuatkan. Kamu tinggal menunggu dan menyantap makanan jika makanan sudah datang.
Apa yang kamu lakukan jika menu yang kamu inginkan tidak ada? Tentunya antara kamu menyerah dan memilih menu yang tersedia atau pindah ke restoran lain. Kamu tidak mungkin memaksakan restoran tersebut untuk memasakkan keinginanmu jika tidak ada di menu.
Memilih menu dan memesan makanan pada sebuah restoran sama halnya seperti kamu menggunakan API (Application Programming Interface). Kenapa bisa seperti itu? Mari bahas satu persatu.
Apa itu API?
Secara singkat, API (Application Programming Interface) adalah suatu komponen yang menentukan operasi atau fungsi apa saja yang suatu software dapat lakukan kepada software lainnya. Hal ini mirip dengan penggunaan daftar menu di suatu restoran, kan?
Pelanggan yang ingin memesan makanan akan membaca daftar menu terlebih dahulu untuk dapat mengetahui ‘operasi atau fungsi’ apa saja yang tersedia di restoran tersebut. Komponen API disini adalah daftar menu dan software yang saling berinteraksi adalah pelanggan dan restoran.
Dasarnya, API ini berisi daftar operasi yang dapat digunakan oleh software lain, beserta deskripsi mengenai apa yang dilakukan oleh operasi tersebut.
Kenapa API Dibutuhkan?
Kembali ke cerita restoran tadi, jika kamu masuk ke sebuah restoran tanpa diberikan menu, bagaimana perasaanmu? Tentunya kalau kamu baru pertama kali, kamu akan kebingungan. Tidak tahu apa yang dapat kamu pesan.
Sama halnya, tanpa API, interaksi antara dua atau lebih software akan menjadi lebih sulit. Sehingga, API dibutuhkan agar software dapat berkomunikasi dengan software lain dengan lebih mudah.
Apa Keuntungan Menggunakan API?
Terdapat beberapa keuntungan dalam menggunakan API baik dari sisi pengguna maupun penyedia API. Berikut ini beberapa keuntungan yang umum,
Mempermudah Pengembangan Software
Dengan menggunakan API, seorang developer dapat menambahkan fungsionalitas pada software buatannya dengan lebih cepat. Contohnya, kamu membuat aplikasi ojek online. Aplikasi tersebut membutuhkan peta.
Karena Google sudah mempunyai Google Map API (API untuk peta yang disediakan Google), kamu tidak perlu lagi membuat peta sendiri dari awal. Hanya dengan menggunakan API yang sudah ada, kamu dapat dengan cepat menambahkan fungsionalitas.
Di contoh penggunaan Map API diatas, developer tidak perlu tau bagaimana peta tersebut bekerja atau bagaimana cara menentukan rute tercepat dari satu titik ke titik lainnya. Developer hanya tahu jadi saja. Hal ini dapat mempercepat pengembangan software.
Sama halnya seperti di restoran, kamu tidak perlu memasak sendiri, tentunya! (Kecuali kamu ke Korean BBQ, ya). Kamu tinggal pilih ingin makan apa, dan akan disediakan oleh pelayan tanpa perlu tau resep dan bahan makanan apa saja yang dibutuhkan.
Memungkinkan Komunikasi Antar-Software
Pernah berpikir bagaimana software yang memiliki bahasa pemrograman yang berbeda dapat berkomnunikasi? Salah satu cara yang digunakan adalah dengan menggunakan API. Kedua software tersebut telah sepakat menggunakan suatu API sehingga dapat saling berkomunikasi.
Pada contoh Google Map API di atas, software milik Google dapat berkomunikasi dengan software miliki kita walaupun bahasa pemrograman yang digunakan kemungkinan berbeda.
Tanpa API, komunikasi antar software akan menjadi sangat sulit. Tidak mungkin kan kalau kamu harus menelpon Google dulu sebelum mengintegrasikan software kalian dengan sistem Google?
Eh, pada perumpaan restoran bisa juga loh hal ini terjadi. Bayangkan kamu ke negara lain dan masuk ke sebuah restoran. Walaupun kamu tidak bisa bahasa di negara tersebut, kamu bisa memesan makanan dengan menunjuk tulisan / gambar pada menu 🤣.
Membuat Software menjadi Modular
Karena dengan adanya API, antar software bisa saling berkomunikasi. Sehingga, kamu tidak perlu membuat satu software besar yang bisa segala hal. Menggunakan API, kamu dapat membuat kumpulan software-software kecil yang bertanggung jawab pada satu hal saja. Software kecil tersebut akan berkomunikasi satu dengan yang lain menggunakan API.
Membuat software kecil yang memiliki tugas khusus atau spesifik ini bisa disebut sebagai modul. API memungkinkan kamu membuat software yang kecil dan lebih mudah dirawat karena tanggung jawabnya yang kecil juga.
Pada contoh aplikasi ojek online, kamu bisa saja membuat beberapa modul berbeda untuk membuat aplikasi tersebut. Contohnya, ada modul untuk mencari driver, modul untuk mendaftar sebagai pengguna, dan modul pembayaran. Modul-modul tersebut akan berkomunikasi satu dengan yang lain dalam aplikasi tersebut.
Contoh API
Sebenarnya, dalam keseharian, kita sudah menggunakan API tanpa disadari. Hampir seluruh software yang kamu gunakan pasti menggunakan API dalam suatu bentuk. Berikut beberapa contoh API yang kamu dapat temui sehari-hari,
1. Login Menggunakan Aplikasi Lain
Saat kamu ingin mendaftarkan diri atau login ke suatu aplikasi, biasanya kamu diberikan pilihan untuk login melalui akun media sosial lain. Hal ini bisa dilakukan karena adanya API.
2. Membayar Menggunakan Aplikasi Pembayaran
Banyaknya pilihan dalam pembayaran bisa terjadi karena masing-masing metode pembayaran menyediakan API yang bisa digunakan oleh e-commerce. Sehingga, e-commerce dapat dengan mudah memberikan pilihan jenis pembayaran yang variatif.
3. Twitter Bot
Pernah pensaran kenapa bot bisa dengan cepat merespon suatu tweet? Hal ini bisa dilakukan menggunakan Twitter API. Ada software lain dibelakang yang mendeteksi suatu kata, lalu jika kata itu muncul maka software tersebut akan meminta Twitter API untuk membuat sebuah tweet.
Simpulan
Penggunaan API memiliki banyak kelebihan dan dapat membuat pengembangan software menjadi lebih cepat. Jika kamu ingin aplikasimu dapat digunakan oleh software lain, membuat API adalah hal yang harus dilakukan.
Bagikan di
Kolom Diskusi