Apakah Hubungan Antara SDK dan API?
Dalam pembangunan perisian, apabila skala sistem terus berkembang, adalah penting untuk membahagikan sistem yang kompleks kepada komponen yang lebih kecil, dan reka bentuk antara muka pengaturcaraan adalah terutamanya penting. Tugas utama reka bentuk antara muka adalah untuk mengagihkan tanggungjawab sistem perisian dengan sewajarnya. Reka bentuk antara muka yang baik boleh mengurangkan kebergantungan antara bahagian-bahagian sistem, meningkatkan kohesi modul, dan pada masa yang sama mengurangkan gandingan antara modul, sekali gus meningkatkan kebolehselenggaraan dan kebolehskalakan sistem. API, sebagai satu bentuk antara muka, memainkan peranan penting dalam interaksi antara program, dan terdapat hubungan yang rapat antara SDK dan API.
01 API
(1) Konsep API
API, yang merupakan singkatan bagi "Application Programming Interface" (Antaramuka Pengaturcaraan Aplikasi), ialah satu set fungsi yang telah ditetapkan yang direka untuk bertindak sebagai "antara muka" untuk menghubungkan dua perkara yang berbeza. Ia menyediakan cara bagi aplikasi dan pembangun untuk mengakses rutin perisian atau perkakasan, tanpa perlu mengakses kod sumber atau memahami butiran mekanisme kerja dalamannya.
Pada hakikatnya, API ialah fungsi yang telah ditulis terlebih dahulu oleh orang lain, yang boleh melaksanakan fungsi tertentu. Anda hanya perlu memanggil kaedahnya mengikut antara muka yang disediakan, menghantar parameter yang ditetapkan, dan fungsi tersebut akan membantu anda melaksanakan fungsi ini.

Dari segi konsep "antara muka", dalam bidang komputer, ia merujuk kepada tempat interaksi antara dua entiti yang berbeza, yang boleh menjadi dua sistem yang berbeza sepenuhnya, atau dua bahagian program. Oleh itu, "I" bagi antara muka boleh difahami seperti berikut. Di atas dasar ini, tempat interaksi antara manusia dan program dipanggil UI (Antaramuka Pengguna), termasuk semua bentuk input, seperti tetikus, papan kekunci, skrin sentuh dan input suara, dan lain-lain. Interaksi antara program dan program dipanggil API, dan semua interaksi bukan manusia-ke-bukan manusia dilakukan melalui API. Interaksi yang dikatakan pada asasnya ialah pemindahan data dan pencetus fungsi.
(2) Klasifikasi API
API dibahagikan kepada API peringkat sistem (seperti Windows, Linux, Unix, dll.) dan API tersuai peringkat bukan sistem operasi. Sebagai mod pembangunan kod yang berkesan, mod pembangunan API Windows Microsoft telah dipelajari oleh banyak syarikat pembangunan aplikasi komersial, dan fungsi API sistem aplikasi komersial tertentu telah dibangunkan dan diterbitkan untuk memudahkan pihak ketiga mengembangkan fungsi. Contohnya, API yang dibangunkan oleh Google, Apple Computer dan Nokia, dan lain-lain.
API juga dibahagikan kepada API terbuka dan API persendirian. Seperti namanya, API terbuka ialah antara muka yang terbuka kepada semua orang, membenarkan sesiapa sahaja untuk memanggil dan mendapatkan data di belakangnya. Kadangkala syarikat akan menjadikan API sebagai sistem terbuka awam mereka, iaitu syarikat menetapkan piawai antara muka sistem mereka sendiri, dan semua ahli syarikat boleh memanggil kod sumber melalui piawai antara muka ini apabila operasi seperti penyepaduan sistem, penyesuaian dan aplikasi program perlu dijalankan. Piawai antara muka ini dipanggil API terbuka. API persendirian ialah antara muka yang tidak dibuka kepada umum.
02 SDK
(1) Konsep SDK
SDK, yang merupakan singkatan bagi "Software Development Kit" (Kit Pembangunan Perisian), biasanya ialah satu set alat pembangunan yang digunakan oleh jurutera perisian untuk membina perisian aplikasi untuk pakej khusus, rangka kerja perisian, platform perkakasan, sistem operasi, dan lain-lain. Dalam erti kata mudah, SDK ialah kit alat yang disediakan oleh pembekal pihak ketiga untuk melaksanakan fungsi produk perisian tertentu.
Biasanya, SDK ialah set perkhidmatan profesional yang disediakan oleh syarikat profesional, seperti menyediakan alat pembangunan Android atau perkhidmatan berasaskan pembangunan perkakasan, dan lain-lain. Terdapat juga SDK untuk fungsi perisian tertentu, seperti teknologi tolak, teknologi pengecaman imej, teknologi pembayaran mudah alih, teknologi analisis pengecaman suara, dan lain-lain. Dalam trend terbuka internet, beberapa SDK berfungsi telah dijadikan sebagai produk untuk dikendalikan.
Pembangun tidak lagi perlu membangunkan setiap fungsi produk, tetapi hanya memilih perkhidmatan SDK yang sesuai dan stabil, dan boleh menyepadukan fungsi tertentu ke dalam produk dalam masa yang singkat.
(2) Perbezaan antara SDK dan API
SDK bersamaan dengan persekitaran alat penyepaduan pembangunan, dan API ialah antara muka data. Panggil data API dalam persekitaran SDK.
Pada hakikatnya, SDK mengandungi definisi API, API mentakrifkan keupayaan, piawai antara muka, dan SDK boleh mengandungi keupayaan dan piawai ini. Tetapi SDK tidak hanya mengandungi API dan pelaksanaannya, ia ialah kit alat perisian, dan juga mengandungi banyak fungsi tambahan lain.
SDK mengandungi bahan yang diperlukan untuk menggunakan API, jadi orang juga sering merujuk kepada cara pembangunan menulis aplikasi Windows menggunakan hanya API sebagai "pembangunan SDK".





