Beranda » bagaimana » Apa itu API?

    Apa itu API?

    Anda mungkin telah melihat istilah "API" muncul. Sistem operasi, browser web, dan pembaruan aplikasi sering mengumumkan API baru untuk pengembang. Tapi apa itu API?

    Antarmuka Pemrograman Aplikasi

    Istilah API adalah akronim, dan singkatan dari "Application Programming Interface."

    Pikirkan API seperti menu di restoran. Menu ini menyediakan daftar hidangan yang dapat Anda pesan, bersama dengan deskripsi setiap hidangan. Saat Anda menentukan item menu apa yang Anda inginkan, dapur restoran melakukan pekerjaannya dan memberi Anda beberapa hidangan jadi. Anda tidak tahu persis bagaimana restoran menyiapkan makanan itu, dan Anda tidak benar-benar perlu.

    Demikian pula, API mencantumkan sekelompok operasi yang dapat digunakan pengembang, bersama dengan deskripsi tentang apa yang mereka lakukan. Pengembang tidak perlu tahu bagaimana, misalnya, sistem operasi membangun dan menyajikan kotak dialog "Simpan Sebagai". Mereka hanya perlu tahu bahwa itu tersedia untuk digunakan di aplikasi mereka.

    Ini bukan metafora yang sempurna, karena pengembang mungkin harus memberikan data mereka sendiri ke API untuk mendapatkan hasil, jadi mungkin itu lebih seperti restoran mewah di mana Anda dapat memberikan beberapa bahan sendiri di dapur yang akan bekerja dengan.

    Tetapi secara umum akurat. API memungkinkan pengembang menghemat waktu dengan memanfaatkan implementasi platform untuk melakukan pekerjaan yang rumit. Ini membantu mengurangi jumlah pengembang kode yang perlu dibuat, dan juga membantu menciptakan lebih banyak konsistensi di seluruh aplikasi untuk platform yang sama. API dapat mengontrol akses ke sumber daya perangkat keras dan perangkat lunak.

    API Membuat Kehidupan Lebih Mudah untuk Pengembang

    Katakanlah Anda ingin mengembangkan aplikasi untuk iPhone. Sistem operasi iOS Apple menyediakan sejumlah besar API - seperti halnya sistem operasi lainnya - untuk memudahkan Anda.

    Jika Anda ingin menyematkan peramban web untuk menampilkan satu atau beberapa halaman web, misalnya, Anda tidak harus memprogram peramban web Anda sendiri dari awal hanya untuk aplikasi Anda. Anda menggunakan WKWebView API untuk menyematkan objek browser WebKit (Safari) di aplikasi Anda.

    Jika Anda ingin mengambil foto atau video dari kamera iPhone, Anda tidak perlu menulis antarmuka kamera Anda sendiri. Anda menggunakan API kamera untuk menanamkan kamera bawaan iPhone di aplikasi Anda. Jika API tidak ada untuk mempermudah ini, pengembang aplikasi harus membuat perangkat lunak kamera sendiri dan menafsirkan input perangkat keras kamera. Tetapi pengembang sistem operasi Apple telah melakukan semua kerja keras ini sehingga para pengembang hanya dapat menggunakan API kamera untuk menanamkan kamera, dan kemudian melanjutkan membangun aplikasi mereka. Dan, ketika Apple meningkatkan API kamera, semua aplikasi yang bergantung padanya akan memanfaatkan peningkatan itu secara otomatis.

    Ini berlaku untuk setiap platform. Misalnya, apakah Anda ingin membuat kotak dialog di Windows? Ada API untuk itu. Ingin mendukung otentikasi sidik jari di Android? Ada API untuk itu juga, jadi Anda tidak perlu menguji sensor sidik jari setiap produsen Android. Pengembang tidak harus menemukan kembali roda berulang kali.

    API Mengontrol Akses ke Sumber Daya

    API juga digunakan untuk mengontrol akses ke perangkat keras dan fungsi perangkat lunak yang mungkin tidak harus memiliki izin untuk digunakan oleh suatu aplikasi. Itu sebabnya API sering memainkan peran besar dalam keamanan.

    Misalnya, jika Anda pernah mengunjungi situs web dan melihat pesan di browser Anda bahwa situs web meminta untuk melihat lokasi Anda secara tepat, situs web itu sedang mencoba untuk menggunakan API geolokasi di browser web Anda. Browser web mengekspos API seperti ini untuk memudahkan pengembang web mengakses lokasi Anda - mereka hanya dapat bertanya "di mana Anda?" Dan browser melakukan kerja keras mengakses GPS atau jaringan Wi-Fi terdekat untuk menemukan lokasi fisik Anda.

    Namun, browser juga mengekspos informasi ini melalui API karena dimungkinkan untuk mengontrol akses ke sana. Ketika sebuah situs web menginginkan akses ke lokasi fisik Anda yang sebenarnya, satu-satunya cara mereka bisa mendapatkannya adalah melalui API lokasi. Dan, ketika situs web mencoba menggunakannya, Anda-pengguna-dapat memilih untuk mengizinkan atau menolak permintaan ini. Satu-satunya cara untuk mengakses sumber daya perangkat keras seperti sensor GPS adalah melalui API, sehingga browser dapat mengontrol akses ke perangkat keras dan membatasi apa yang dapat dilakukan aplikasi..

    Prinsip yang sama ini digunakan pada sistem operasi seluler modern seperti iOS dan Android, di mana aplikasi seluler memiliki izin yang dapat diberlakukan dengan mengontrol akses ke API. Misalnya, jika pengembang mencoba mengakses kamera melalui API kamera, Anda dapat menolak permintaan izin dan aplikasi tidak memiliki cara untuk mengakses kamera perangkat Anda.

    Sistem file yang menggunakan izin-seperti yang mereka lakukan pada Windows, Mac, dan Linux-meminta izin tersebut diberlakukan oleh API sistem file. Aplikasi tipikal tidak memiliki akses langsung ke hard disk fisik mentah. Sebaliknya, aplikasi harus mengakses file melalui API.

    API Digunakan Untuk Komunikasi Antar Layanan

    API juga digunakan untuk semua alasan lainnya. Misalnya, jika Anda pernah melihat objek Google Maps tertanam di situs web, situs web itu menggunakan Google Maps API untuk menyematkan peta itu. Google memaparkan API seperti ini kepada pengembang web, yang kemudian dapat menggunakan API untuk menjatuhkan objek kompleks tepat di situs web mereka. Jika API seperti ini tidak ada, pengembang mungkin harus membuat peta sendiri dan memberikan data peta sendiri hanya untuk meletakkan sedikit peta interaktif di situs web.

    Dan, karena ini adalah API, Google dapat mengontrol akses ke Google Maps di situs web pihak ketiga, memastikan mereka menggunakannya secara konsisten daripada mencoba menyematkan bingkai yang menunjukkan situs web Google Maps secara acak, misalnya.

    Ini berlaku untuk berbagai layanan online. Ada API untuk meminta terjemahan teks dari Google Translate, atau menyematkan komentar atau tweet dari Twitter di situs web.

    Standar OAuth juga mendefinisikan sejumlah API yang memungkinkan Anda masuk ke situs web dengan layanan lain - misalnya, untuk menggunakan akun Facebook, Google, atau Twitter Anda untuk masuk ke situs web baru tanpa membuat akun pengguna baru hanya untuk situs itu . API adalah kontrak standar yang menentukan bagaimana pengembang berkomunikasi dengan layanan, dan jenis output yang diharapkan diterima oleh pengembang.


    Jika Anda telah melewati ini, Anda akan memiliki gagasan yang lebih baik tentang apa itu API. Pada akhirnya, Anda tidak benar-benar perlu tahu apa itu API kecuali Anda seorang pengembang. Tetapi, jika Anda melihat platform atau layanan perangkat lunak telah menambahkan API baru untuk berbagai perangkat keras atau layanan, seharusnya lebih mudah bagi pengembang untuk memanfaatkan fitur-fitur tersebut..

    Kredit Gambar: patpitchaya / Shutterstock.com.