SDK at JDK
SDK kumpara sa JDK
Ang isang Software Development Kit (kilala rin bilang isang SDK o isang devkit) ay isang hanay ng mga tool sa pag-unlad. Pinapayagan nito ang mga application na malikha para sa isang partikular na pakete ng software, balangkas ng software, platform ng hardware, sistema ng computer, video game console, operating system, o anumang platform na katulad ng alinman sa mga nakalista. Saklaw ng mga SDK mula sa kahit ano kasing simple ng isang API sa paraan na ang ilang mga file na interface sa isang partikular na programming language o kasama ang sopistikadong hardware upang makipag-usap sa isang partikular na naka-embed na system. Ang ilan sa mga mas karaniwang tool na matatagpuan sa isang SDK ay ang mga debugging aid at katulad na mga kagamitan na iniharap sa isang integrated na kapaligiran sa pag-unlad (o IDE).
Ang Java Development Kit (o JDK) ay ang pinakalawak na ginamit na SDK sa merkado. Binuo ng Sun Microsystems para sa mga nag-develop ng Java, ang JDK ay isang libreng software na inilabas sa ilalim ng GNU General Public License (o GPL). Mayroong maraming mga sangkap na bumubuo sa JDK. Ang mga sangkap na ito ay isang pagpili ng mga tool sa programming. Kasama rito, ngunit hindi limitado sa java, loader para sa lahat ng mga application ng Java na nagbibigay-kahulugan at nakapagsinterpret ng mga file ng klase na binuo ng javac compiler; javac, kung saan ay ang tagatala na nagpalit ng source code sa Java bytecode; javaws, na siyang launcher ng Java Web Start para sa mga application ng JNLP; jmap, na isang pang-eksperimentong utility na nag-output ng mapa ng memorya para sa Java at makakapag-print ng mga shared object memory na mga mapa o mga detalye ng heap memory ng isang naibigay na proseso; at VisualVM, kung saan ay isang visual na tool na integrates ng ilang mga command line JDK tool at magaan na pagganap at memory profile kakayahan.
Kasama sa mga SDK ang sample code at mga teknikal na tala o iba pang dokumentasyon na sumusuporta sa code na ito upang makatulong sa paglilinaw ng mga puntos mula sa pangunahing materyal na sanggunian. Kadalasan ay natatanggap ng isang software engineer ang SDK mula sa isang developer ng target. Ang SDK ay kaya madaling ma-download mula sa internet. Maraming mga SDK ay walang bayad-halos upang hikayatin ang mga developer na gamitin ang sistema o wika. Maaaring may naka-attach na mga lisensya upang gawin itong hindi angkop para sa pagtatayo ng software na nilayon upang maisagawa sa ilalim ng hindi tugmang lisensya. Ang isang SDK na binuo para sa isang OS idagdag sa (Halimbawa ng QuickTime para sa Mac OS) ay maaaring magsama ng aktwal na pagdaragdag sa software mismo para sa paggamit ng pag-unlad -nung hindi ito ipagkakalat.
Ang JDK ay isang pinalawig na subset ng isang SDK. Kinikilala ng Sun sa ilalim ng terminolohiya, ang JDK ay isang subset ng SDK na may pananagutan sa pagsusulat at pagpapatakbo ng mga programang Java. Ang natitirang bahagi ng SDK na ito ay binubuo ng karagdagang software (Application Servers, debuggers, at dokumentasyon).
Buod:
1. Ang isang SDK ay isang hanay ng mga tool sa pag-unlad na nagpapahintulot sa mga application na malikha para sa ilang mga pakete o platform ng software; ang JDK ay ang pinakalawak na ginamit na SDK at isang extension ng SDK na responsable para sa pagsulat at pagpapatakbo ng mga programa sa Java.
2. Kasama sa isang SDK ang sample code at mga teknikal na tala o iba pang dokumentong sumusuporta. Kasama sa JDK ang mga sangkap na isang seleksyon ng mga tool sa programming.