Apa sebenarnya arti dari API? [Tutup]

164

Saya telah mencari definisi API dalam bahasa pemrograman dan saya masih kesulitan untuk memahaminya.

Adakah yang bisa menasihati saya secara sederhana, istilah awam:

  1. Apa itu API?
  2. Bagaimana ini digunakan?
  3. Kapan dan di mana itu digunakan?
Derek
sumber
7
Apakah Anda mencoba FOLDOC dulu? foldoc.org/API Definisi mereka tampak cukup "awam" bagi saya.
Ray Toal
@pst saya akan menerima begitu saja bahwa OP sudah melihat Wikipedia karena siapa yang tidak memeriksa Wikipedia? Sarkasme yang salah tentang kemungkinan menggunakan definisi FOLDOC 1995 sebelum memeriksa Wikipedia. Haruskah saya menghapus komentar?
Ray Toal
Jika Anda mencari penjelasan orang awam, coba: welcometosoftware.com/what-is-an-api (penafian: saya menulisnya)
Sam Malayek

Jawaban:

129

Pencarian harus mencakup Wikipedia, yang sangat bagus untuk sejumlah konsep / istilah pemrograman seperti Antarmuka Pemrograman Aplikasi :

Apa itu API?

Antarmuka pemrograman aplikasi (API) adalah seperangkat aturan tertentu ('kode') dan spesifikasi yang dapat diikuti oleh program perangkat lunak untuk saling berkomunikasi . Ini berfungsi sebagai antarmuka antara program perangkat lunak yang berbeda dan memfasilitasi interaksi mereka, mirip dengan cara antarmuka pengguna memfasilitasi interaksi antara manusia dan komputer.

Bagaimana ini digunakan?

Cara yang sama seperangkat aturan digunakan.

Kapan dan di mana itu digunakan?

Tergantung pada ranah dan API, secara alami. Pertimbangkan ini:

  1. Set Instruksi x86 (IA-32) (sangat berguna ;-)
  2. Sebuah BIOS interupsi panggilan
  3. OpenGL yang sering diekspos sebagai pustaka C
  4. Panggilan sistem Windows Inti: WinAPI
  5. Kelas dan Metode di perpustakaan inti Ruby
  6. The Document Object Model terpapar oleh browser untuk JavaScript
  7. Layanan web , seperti yang disediakan oleh Graph API Facebook
  8. Implementasi protokol seperti JNI di Jawa

Selamat coding.


sumber
4
+1 saat memanggil "ternyata bagus". Untuk komputasi, Wikipedia adalah yang teratas. Beberapa orang mungkin ingat perbandingan Wikipedia vs Britannica oleh Nature: '' 'Menurut Wall Street Journal: "[Wales] mengatakan bahwa dia senang Alam memilih untuk membandingkan tema yang berhubungan dengan sains' karena pada sejarah dan ilmu sosial, kita jauh lebih lemah. ' Di bidang lain - termasuk ilmu komputer dan sejarah 'Star Trek,' katanya - Wikipedia adalah 'jauh lebih baik.' "'' '(Dari dailybarometer.com/forum/… )
Ray Toal
2
@ entri user166390 wikipedia di api sekarang cukup buruk ... Saya menulis apis dan entri itu benar-benar membingungkan saya. Untung Anda mengutip apa yang Anda lakukan, karena entah bagaimana tampaknya menjadi jauh lebih buruk.
eric
Saya ingin bertanya apakah file php yang dimasukkan ke dalam url permintaan ajax API? Atau mungkin permintaan ajax itu sendiri sudah merupakan API?
Brownman Revival
Apakah API juga digunakan untuk Internet of Things? Atau bagaimana perangkat IoT mengirim dan menerima data?
Pathros
57

API adalah antarmuka tempat Anda mengakses kode orang lain atau melalui mana kode orang lain mengakses kode Anda. Akibatnya metode dan properti publik.

Klee
sumber
4
Kalimat terakhir itu patut diperhatikan dan bisa diperluas ...
tumultous_rooster
45

1) Apa itu API?

API adalah kontrak. Sebuah janji untuk melakukan layanan yang dijelaskan ketika diminta dengan cara tertentu.

2) Bagaimana cara menggunakannya?

Menurut aturan yang ditentukan dalam kontrak. Inti dari API adalah untuk menentukan cara penggunaannya.

3) Kapan dan di mana digunakan?

Ini digunakan ketika 2 atau lebih sistem terpisah perlu bekerja bersama untuk mencapai sesuatu yang tidak dapat mereka lakukan sendiri.

Agent_L
sumber
44

Nah, selain semua jawaban, saya hanya menambahkan contoh.

Seperti yang orang lain katakan API stands for Application Programming Interfacemelalui mana softwares can interact with each other. Perhatikan, bukan interaksi manusia.

Di mana itu digunakan

Contoh: Anda membeli barang secara online melalui kartu kredit Anda. Anda akan memberikan detail kartu kredit dan tekan tombol 'lanjutkan'. Ini akan memberi tahu Anda apakah informasi Anda benar atau tidak. Untuk memberikan hasil ini, ada banyak hal di latar belakang.

Aplikasi akan mengirimkan detail kartu kredit Anda ke aplikasi jarak jauh yang akan memvalidasi informasi Anda dan mengirimkan hasilnya kembali ke aplikasi Anda. API digunakan dalam skenario ini.

Saya harap ini membantu untuk pemula yang tidak mengerti apa itu API.

CONTOH LAIN

Aplikasi cuaca

Tanpa API - Aplikasi Weather harus membuka situs weather.com dan membaca detailnya seperti halnya manusia.

Dengan API - Aplikasi Weather akan mengirim pesan ke weather.com dan menerima hasilnya lalu menampilkannya.

SUMBER - Berbagai sumber daya online

Gibbs
sumber
2
Jelas dijelaskan dengan contoh harian. Terima kasih banyak akan membantu untuk freshers seperti saya
sai
jadi dalam hal ini API adalah weather.com yang mengirim data di reques saya? atau API adalah aplikasi saya yang mengirim permintaan, menerima data dan menampilkannya dengan cara tertentu? atau API adalah hubungan dari weather.com dan aplikasi saya?
Paweł
1
@ Paweł API akan menjadi aplikasi yang meminta data
Gibbs
@ Paweł Pikirkan seperti ini: Ada dua antarmuka untuk aplikasi. Pertama, UI (antarmuka) untuk pengguna manusia. Kedua, adalah API (antarmuka) untuk program aplikasi lain. Jadi, API antara aplikasi cuaca dan weather.com adalah weather.com.
vpibano
15
  1. API (Application Programming Interface) adalah sekumpulan fungsi dan metode yang ditentukan untuk berinteraksi dengan sistem operasi yang mendasarinya atau program atau layanan lain yang berjalan di komputer.

  2. Biasanya digunakan dengan membuat referensi ke perpustakaan di perangkat lunak Anda atau mengimpor fungsi dari dll.

  3. Ini digunakan dalam satu atau lain bentuk di hampir semua perangkat lunak, secara eksplisit dipanggil dalam program Anda atau secara implisit dipanggil oleh kompiler.

Mark Hall
sumber
10

API adalah singkatan dari Application Programming Interface, yaitu API adalah cara bagi suatu aplikasi untuk berinteraksi dengan sistem / aplikasi / pustaka / etc tertentu.

Misalnya, ada API untuk OS (WinAPI), API untuk aplikasi lain (seperti basis data) dan untuk perpustakaan tertentu (misalnya, pemrosesan gambar), dll.

API biasanya dikembangkan dalam bentuk yang dapat dikonsumsi oleh aplikasi klien. Untuk aplikasi C / C ++, ini mengatur file header dan perpustakaan dinamis / statis. Untuk Java - set toples. Dan seterusnya.

anak anjing
sumber
Apakah API juga digunakan untuk Internet of Things? Bagaimana perangkat IoT mengirim dan menerima data?
Pathros
7

Ini adalah satu set komponen perangkat lunak yang berinteraksi satu sama lain. Ini menyediakan satu set fungsi, variabel, dan kelas objek untuk pembuatan aplikasi, sistem operasi atau hal lainnya.

Meghna Sreedhar
sumber
6

Dalam istilah awam, saya selalu mengatakan API seperti penerjemah antara dua orang yang berbicara bahasa yang berbeda. Dalam perangkat lunak, data dapat dikonsumsi atau didistribusikan menggunakan API (atau penerjemah) sehingga dua jenis perangkat lunak dapat berkomunikasi. Perangkat lunak yang baik memiliki penerjemah yang kuat (API) yang mengikuti aturan dan protokol untuk keamanan dan kebersihan data.

Saya seorang pemasar, bukan seorang pembuat kode. Ini semua mungkin tidak tepat, tetapi itulah yang saya coba ungkapkan selama sekitar 10 tahun sekarang ...

Gadis
sumber
5

API adalah seperangkat perintah, fungsi, dan protokol yang dapat digunakan oleh pemrogram saat membuat perangkat lunak untuk OS tertentu atau perangkat lunak lain. API memungkinkan pemrogram untuk menggunakan fungsi yang telah ditentukan untuk berinteraksi dengan sistem operasi, alih-alih menulisnya dari awal. Semua sistem operasi komputer, seperti Windows, Unix, dan Mac OS dan bahasa seperti Java menyediakan antarmuka program aplikasi untuk programmer.

Sumber

Abhishek Jaiswal
sumber
5

Conaider dalam situasi ini:

Diam-diam Mark dan Lisa adalah pasangan, dan karena perbedaan usia mereka tidak diperbolehkan untuk bersama. Mark dan Lisa bertemu setiap malam ketika tidak ada yang menonton. Mereka telah menetapkan aturan mereka sendiri tentang bagaimana berkomunikasi ketika saatnya tiba. Dia berdiri di kebunnya dan melemparkan batu kecil ke jendelanya. Lisa tahu ini saatnya, dan merespons dengan melambaikan tangan dari jendela dan membukanya setelah itu sehingga Mark bisa masuk. Itulah contoh cara kerja API. Batu itu adalah permintaan awal ke ujung yang lain. Gelombang akhir lainnya, membuka jendela yang pada dasarnya berarti "Selamat datang!".

API hampir seperti bahasa manusia tetapi untuk komputer.

xZero
sumber
3

API mendefinisikan antarmuka tempat satu perangkat lunak berkomunikasi satu sama lain di tingkat sumber. Ini memberikan abstraksi dengan menyediakan seperangkat antarmuka standar - biasanya berfungsi - bahwa satu perangkat lunak (biasanya perangkat tingkat tinggi) dapat digunakan dari perangkat lunak lain (biasanya perangkat tingkat rendah).

Misalnya, sebuah API dapat mengabstraksi konsep menggambar teks di layar melalui sekumpulan fungsi yang menyediakan semua yang diperlukan untuk menggambar teks. API hanya mendefinisikan antarmuka; perangkat lunak yang benar-benar menyediakan API dikenal sebagai implementasi API.

Adalah umum untuk menyebut API sebagai "kontrak". Ini tidak benar, setidaknya dalam pengertian hukum istilah tersebut, karena API bukan perjanjian dua arah. Pengguna API (umumnya, perangkat lunak tingkat lebih tinggi) tidak memiliki input ke dalam API dan implementasinya. Itu dapat menggunakan API apa adanya, atau tidak menggunakannya sama sekali: ambil atau tinggalkan!

Contoh API di dunia nyata adalah antarmuka yang ditentukan oleh standar C dan diimplementasikan oleh pustaka C standar. API ini mendefinisikan keluarga fungsi dasar dan penting, seperti manajemen memori dan rutinitas manipulasi string.

Koray Tugay
sumber
0

Katakanlah Anda sedang mengembangkan game dan Anda ingin pengguna game untuk login profil facebook mereka (untuk mendapatkan informasi profil Anda) sebelum memainkannya, jadi bagaimana game Anda akan mengakses facebook? Sekarang inilah API. Facebook telah menulis program (API) untuk Anda lakukan, Anda hanya perlu menggunakan program-program tersebut dalam aplikasi game Anda. Menggunakan Facebook-API Anda dapat menggunakan layanan mereka di aplikasi Anda. dan tampilan terperinci tentang API ... http://money.howstuffworks.com/business-communications/how-to-leverage-an-api-for-conferencing1.htm

Amit chaudhary
sumber
3
Dan Anda tidak benar-benar mengatakan APA itu ...:} Dan itu lebih tidak seperti sebuah program, tetapi hanya sebuah antarmuka. Cara berurusan dengan beberapa program.
Kamiccolo
-1

Antarmuka program aplikasi (API) adalah serangkaian rutinitas, protokol, dan alat untuk membangun aplikasi perangkat lunak. API menentukan bagaimana komponen perangkat lunak harus berinteraksi dan API digunakan ketika memprogram komponen antarmuka pengguna grafis (GUI). API yang baik memudahkan mengembangkan program dengan menyediakan semua blok bangunan. Seorang programmer kemudian menempatkan blok bersama.

sumber: http://www.webopedia.com/TERM/A/API.html

Charlston Mabini Vita
sumber