SDK vs. JDK
Kit Pengembangan Perangkat Lunak (juga dikenal sebagai SDK atau devkit) adalah seperangkat alat pengembangan. Hal ini memungkinkan aplikasi dibuat untuk paket perangkat lunak tertentu, kerangka kerja perangkat lunak, platform perangkat keras, sistem komputer, konsol permainan video, sistem operasi, atau platform apa pun yang serupa dengan yang terdaftar. SDK berkisar dari apa saja yang sesederhana API dengan cara beberapa file antarmuka ke bahasa pemrograman tertentu atau termasuk perangkat keras yang canggih untuk berkomunikasi dengan sistem tertanam tertentu. Beberapa alat yang lebih umum ditemukan dalam SDK termasuk alat bantu debugging dan utilitas serupa yang disajikan dalam lingkungan pengembangan terintegrasi (atau IDE).
Java Development Kit (atau JDK) adalah SDK yang paling banyak digunakan di pasaran. Dikembangkan oleh Sun Microsystems untuk pengembang Java, JDK adalah perangkat lunak gratis yang dirilis di bawah GNU General Public License (atau GPL). Ada banyak komponen yang membentuk JDK. Komponen-komponen ini adalah pilihan alat pemrograman. Mereka termasuk, tetapi tidak terbatas pada java, loader untuk semua aplikasi Java yang menginterpretasikan dan mampu menafsirkan file kelas yang dihasilkan oleh kompiler javac; javac, yang merupakan kompiler yang mengubah kode sumber menjadi bytecode Java; javaws, yang merupakan peluncur Java Web Start untuk aplikasi JNLP; jmap, yang merupakan utilitas eksperimental yang menghasilkan peta memori untuk Java dan mampu mencetak peta memori objek bersama atau menumpuk detail memori dari proses yang diberikan; dan VisualVM, yang merupakan alat visual yang mengintegrasikan beberapa alat JDK baris perintah dan kinerja yang ringan dan kemampuan profil memori.
SDK mencakup kode sampel dan catatan teknis atau dokumentasi lain yang mendukung kode ini untuk membantu klarifikasi poin dari bahan referensi utama. Biasanya seorang insinyur perangkat lunak menerima SDK dari pengembang target. SDK dengan demikian cukup mudah diunduh dari internet. Banyak SDK tidak dikenai biaya - sebagian besar untuk mendorong pengembang untuk menggunakan sistem atau bahasa. Mereka mungkin memiliki lisensi terlampir untuk membuatnya tidak cocok untuk membangun perangkat lunak yang dimaksudkan untuk dikembangkan di bawah lisensi yang tidak kompatibel. SDK yang dikembangkan untuk add on OS (QuickTime untuk Mac OS, misalnya) dapat menyertakan add aktual pada perangkat lunak itu sendiri untuk pengembangan penggunaan -jika itu tidak akan didistribusikan kembali.
JDK adalah subset diperpanjang dari SDK. Sun mengakui di bawah terminologi, JDK adalah subset dari SDK yang bertanggung jawab untuk menulis dan menjalankan program Java. Apa yang tersisa dari SDK ini terdiri dari perangkat lunak tambahan (Server Aplikasi, debugger, dan dokumentasi).
Ringkasan:
1. SDK adalah seperangkat alat pengembangan yang memungkinkan aplikasi dibuat untuk paket atau platform perangkat lunak tertentu; JDK adalah SDK yang paling banyak digunakan dan merupakan perpanjangan dari SDK yang bertanggung jawab untuk menulis dan menjalankan program Java.
2. SDK mencakup kode sampel dan catatan teknis atau dokumentasi pendukung lainnya; JDK termasuk komponen yang merupakan pilihan alat pemrograman.