Apa API?
Anda mungkin melihat istilah "API" muncul. Sistem pengendalian, penyemak imbas web dan kemas kini apl sering mengumumkan API baharu untuk pemaju. Tetapi apa yang API?
Antara Muka Pengaturcaraan Aplikasi
API istilah adalah akronim, dan ia bermaksud "Antarmuka Pemrograman Aplikasi."
Fikirkan API seperti menu di restoran. Menu ini menyediakan senarai hidangan yang boleh anda pesan, bersama dengan penerangan setiap hidangan. Apabila anda menentukan item menu apa yang anda mahu, dapur restoran melakukan kerja dan menyediakan anda dengan beberapa hidangan siap. Anda tidak tahu dengan tepat bagaimana restoran menyediakan makanan itu, dan anda tidak perlu.
Begitu juga, API menyenaraikan sekumpulan operasi yang boleh digunakan oleh pemaju, bersama dengan penerangan tentang apa yang mereka lakukan. Pemaju tidak semestinya perlu tahu bagaimana, sebagai contoh, sistem operasi membina dan membentangkan kotak dialog "Simpan Sebagai". Mereka hanya perlu tahu bahawa ia boleh digunakan untuk aplikasinya.
Ini bukan metafora yang sempurna, kerana pemaju mungkin perlu menyediakan data mereka sendiri kepada API untuk mendapatkan hasilnya, jadi mungkin ia lebih seperti sebuah restoran mewah di mana anda boleh menyediakan beberapa bahan anda sendiri dapur akan berfungsi dengan.
Tetapi ia amat tepat. API membolehkan pemaju menjimatkan masa dengan mengambil kesempatan daripada pelaksanaan platform untuk melakukan kerja yang menggembirakan. Ini membantu mengurangkan jumlah pemaju kod yang perlu dibuat, dan juga membantu mewujudkan lebih konsisten merentasi aplikasi untuk platform yang sama. API boleh mengawal akses kepada sumber-sumber perkakasan dan perisian.
API Membuat Hidup Lebih Mudah untuk Pemaju
Katakan anda ingin membangunkan aplikasi untuk iPhone. Sistem operasi iOS Apple menyediakan sebilangan besar API-seperti setiap sistem operasi lain-untuk menjadikannya lebih mudah pada anda.
Jika anda ingin membenamkan pelayar web untuk menunjukkan satu atau lebih laman web, contohnya, anda tidak perlu memprogram pelayar web anda sendiri dari awal hanya untuk permohonan anda. Anda menggunakan API WKWebView untuk membenamkan objek penyemak imbas WebKit (Safari) dalam aplikasi anda.
Jika anda mahu menangkap foto atau video dari kamera iPhone, anda tidak perlu menulis antara muka kamera anda sendiri. Anda menggunakan API kamera untuk membenamkan kamera terbina dalam iPhone dalam aplikasi anda. Jika API tidak wujud untuk menjadikannya mudah, pemaju aplikasi perlu membuat perisian kamera mereka sendiri dan mentafsirkan input perkakasan kamera. Tetapi pemaju sistem operasi Apple telah melakukan semua kerja keras ini supaya pemaju hanya boleh menggunakan API kamera untuk membenamkan kamera, dan kemudian meneruskan dengan membina aplikasinya. Dan, apabila Apple meningkatkan API kamera, semua aplikasi yang bergantung kepadanya akan memanfaatkan peningkatan itu secara automatik.
Ini terpakai kepada setiap platform. Contohnya, adakah anda ingin membuat kotak dialog pada Windows? Terdapat API untuk itu. Mahu menyokong pengesahan cap jari pada Android? Terdapat API untuk itu, jadi anda tidak perlu menguji setiap sensor cap jari pengeluar Android yang berbeza. Pemaju tidak perlu mencipta semula roda berulang-ulang.
Akses Kawalan API ke Sumber
API juga digunakan untuk mengawal akses kepada peranti perkakasan dan fungsi perisian yang mungkin tidak semestinya mempunyai kebenaran untuk digunakan. Itulah sebabnya API sering memainkan peranan besar dalam keselamatan.
Sebagai contoh, jika anda pernah melawat tapak web dan melihat mesej dalam penyemak imbas anda bahawa tapak web meminta untuk melihat lokasi tepat anda, tapak web tersebut cuba menggunakan API geolokasi dalam penyemak imbas web anda. Pelayar web mendedahkan API seperti ini untuk memudahkan pemaju web mengakses lokasi anda-mereka hanya boleh bertanya "di mana anda?" Dan pelayar melakukan kerja keras untuk mengakses GPS atau rangkaian Wi-Fi berdekatan untuk mencari lokasi fizikal anda.
Walau bagaimanapun, penyemak imbas juga mendedahkan maklumat ini melalui API kerana mungkin untuk mengawal akses kepadanya. Apabila tapak web mahukan akses ke lokasi fizikal anda yang tepat, satu-satunya cara mereka boleh mendapatkan melalui API lokasi. Dan, apabila tapak web cuba menggunakannya, anda-pengguna-boleh memilih untuk membenarkan atau menolak permintaan ini. Satu-satunya cara untuk mengakses sumber perkakasan seperti sensor GPS adalah melalui API, jadi penyemak imbas boleh mengawal akses kepada perkakasan dan mengehadkan aplikasi apa yang boleh dilakukan.
Prinsip yang sama digunakan pada sistem pengendalian mudah alih moden seperti iOS dan Android, di mana aplikasi mudah alih mempunyai keizinan yang boleh dikuatkuasakan dengan mengawal akses kepada API. Sebagai contoh, jika pemaju cuba untuk mengakses kamera melalui API kamera, anda boleh menafikan permintaan kebenaran dan aplikasi tidak mempunyai cara untuk mengakses kamera peranti anda.
Sistem fail yang menggunakan keizinan-seperti yang mereka lakukan di Windows, Mac, dan Linux-mempunyai kebenaran yang dikuatkuasakan oleh API sistem fail. Aplikasi biasa tidak mempunyai akses terus ke cakera keras fizikal mentah. Sebaliknya, aplikasi mesti mengakses fail melalui API.
API Digunakan Untuk Komunikasi Antara Perkhidmatan
API digunakan untuk semua jenis sebab lain juga. Sebagai contoh, jika anda pernah melihat objek Google Maps yang tertanam di laman web, laman web itu menggunakan Google Maps API untuk membenamkan peta itu. Google memperlihatkan API seperti ini kepada pemaju web, yang kemudian dapat menggunakan API untuk mereplikasi objek kompleks tepat di laman web mereka. Jika API seperti ini tidak wujud, pemaju mungkin perlu membuat peta mereka sendiri dan menyediakan data peta mereka sendiri untuk meletakkan sedikit peta interaktif di laman web.
Dan, kerana API itu, Google dapat mengawal akses ke Peta Google di laman web pihak ketiga, memastikan mereka menggunakannya dengan cara yang konsisten dan bukannya mencoba membenamkan kerangka yang menunjukkan laman web Google Maps, misalnya.
Ini terpakai kepada banyak perkhidmatan dalam talian yang berbeza. Terdapat API untuk meminta terjemahan teks dari Terjemahan Google, atau memasukkan komen Facebook atau tweet daripada Twitter di laman web.
Standard OAuth juga mendefinisikan beberapa API yang membolehkan anda melog masuk ke laman web dengan perkhidmatan lain-contohnya, menggunakan akaun Facebook, Google, atau Twitter anda untuk melog masuk ke tapak web baru tanpa membuat akaun pengguna baru hanya untuk laman web tersebut . API adalah kontrak standard yang menentukan bagaimana pemaju berkomunikasi dengan perkhidmatan, dan jenis output pemaju itu harus mengharapkan untuk menerima kembali.
Sekiranya anda mendapat melalui ini, anda akan mempunyai idea yang lebih baik mengenai API. Pada akhirnya, anda tidak semestinya perlu tahu API apa-apa kecuali anda pemaju. Tetapi, jika anda melihat platform perisian atau perkhidmatan telah menambah API baru untuk pelbagai perkakasan atau perkhidmatan, ia harus lebih mudah bagi pemaju untuk memanfaatkan ciri-ciri tersebut.
Kredit Imej: patpitchaya / Shutterstock.com.