Bu iki terim arasında önemli bir fark var mı? JDK'nın, SDK'nın (Yazılım Geliştirme Kiti) bir alt kümesi olan Java Geliştirme Kiti anlamına geldiğini anlıyorum. Ancak Java SDK belirtildiğinde, JDK ile aynı anlama gelmelidir.
Bu iki terim arasında önemli bir fark var mı? JDK'nın, SDK'nın (Yazılım Geliştirme Kiti) bir alt kümesi olan Java Geliştirme Kiti anlamına geldiğini anlıyorum. Ancak Java SDK belirtildiğinde, JDK ile aynı anlama gelmelidir.
Yanıtlar:
Bu wikipedia girişinden :
JDK, genel anlamda bir yazılım geliştirme kiti (SDK) olarak gevşek bir şekilde tanımlanan şeyin bir alt kümesidir. Sun, Java SE, EE ve ME için son yayınlarına eşlik eden açıklamalarda, JDK'nın, Java programlarının yazılması ve çalıştırılmasından sorumlu olan SDK'nın alt kümesini oluşturduğunu kabul ediyor. SDK'nın geri kalanı, Uygulama Sunucuları, Hata Ayıklayıcılar ve Belgeler gibi ekstra yazılımlardan oluşur.
"Ekstra yazılım" Glassfish, MySQL ve NetBeans gibi görünüyor. Bu sayfa , Java EE SDK için alabileceğiniz çeşitli paketlerin bir karşılaştırmasını verir.
Evet, SDK ile JDK arasında bir fark var. Çoğu kişi, Java Platformunun yalnızca Java dilinde programlar geliştirmek için kullanılmadığını unutur. JVM, diğer bazı dilleri de destekler. Bu nedenle, açıkça belirtmek gerekirse, SDK, Clojure, Groovy, Scala, JRuby ve diğerleri gibi çeşitli dillerde yazılım oluşturmayı destekleyen genel bir yazılım paketidir. JDK, Java dilinde yazılım geliştirmek için kullanılan tüm Java standart API'sini içeren özel bir pakettir. (Umarım bunu iyi açıklamışımdır, çünkü aslında ingilizce bilmiyorum)
JDK, Java için SDK'dır.
SDK, bir kişinin kodu daha kolay, etkili ve verimli bir şekilde yazmasını sağlayan bir geliştirici aracı olan 'Yazılım Geliştirme Kiti'nin kısaltmasıdır. SDK'lar çeşitli diller için gelir. Programcının çalışmasını kolaylaştıran birçok API (Uygulama Programlama Arayüzü) sağlarlar.
Java için SDK, Java Geliştirme Kiti olan JDK olarak adlandırılır. Yani Java için SDK derken aslında JDK'ya atıfta bulunuyorsunuz.
Java'da yeni olduğunuzu varsayarsak, karşınıza çıkacak başka bir terim vardır - Java Runtime Environment'ın kısaltması olan JRE. JRE, Java ile yazılmış yazılım programlarını çalıştırmaya çalıştığınızda ihtiyacınız olan bir şeydir.
Java, platformdan bağımsız bir dildir. JRE, yazılımı JVM'nin mevcut olduğu herhangi bir platformda çalıştırmanızı sağlayan Java Sanal Makinesi olan JVM'yi çalıştırır.
Java EE 6 SDK Installer'dan alınmıştır, SDK 6'nın JDK dışında neler içerdiğini gösterir:
Güneş, görünürde bir sebep olmaksızın şeylerin isimlerini değiştirmeyi sever. SunOS / Solaris için üç farklı numaralandırma şemasına veya Java için iki numaralandırma şemasına bakın. Java 1.6, Java 2 Sürüm 6 veya Java 6 mı?
JDK (Java Geliştirme Kiti) bir SDK'dır (Yazılım Geliştirme Kiti).
Java üzerinde yazılım / uygulamalar oluşturmak için kullanılır ve elbette bu yazılımı çalıştırmak için JRE (Java Runtime Edition) içerir. Yalnızca bir Java uygulamasını çalıştırmak istiyorsanız, yalnızca JRE'yi indirin.
Bu arada, Java EE (Enterprise Edition), WEB ortamı için uygulamalar ve mobil cihazlar için Java ME (Micro Edition) oluşturmak için "yöntemlerle (işlevlerle)" sınıf paket kitaplıkları içerir. İlgileniyorsanız (Java ME) Google'ın Android DevKit ve API'sine bir göz atmanızı tavsiye ederim.
Buraya bir göz atın: biraz daha açıklayacak .. http://www.oracle.com/technetwork/java/archive-139210.html
JDK Java programları geliştirmek ve çalıştırmak için kullanılan araçlardan bir koleksiyon ile gelir ,
İçerirler:
appletviewer (Java uygulamalarını görüntülemek için)
javac (Java derleyicisi)
java (Java yorumlayıcısı)
javap (Java parçalayıcı)
javah (C başlık dosyaları için)
javadoc (HTML belgeleri oluşturmak için)
jdb (Java hata ayıklayıcı)
Oysa SDK, JDK'larda bulunan araçlar da dahil olmak üzere birçok başka araçla birlikte gelir.
JDK ve Java SDK arasında hiçbir fark yoktur. İkisi de aynı anlama geliyor. JDK'dan Java SDK'ya geçmenin Sun'da bir PR kararı olduğunu düşünüyorum. Sanırım şimdilik JDK'ya geri döndü.
Benim bakış açıma göre, java'da JDK ve SDK arasında bir fark yok. Her ikisinde de tüm geliştirme araçlarını ve tesisleri bulabiliriz. bu sadece sun tarafından sağlanan bir takma addır.
Fark yok.
Java Yazılım Geliştirme Kiti (Java SDK), Sun'daki pazarlama departmanı "tm" ve terminoloji ile çıldırmadan önce Java Geliştirme Kiti (JDK) olarak adlandırılıyordu. Politik nedenlerden ve akıl sağlığından dolayı, anlamlı isimleri (jdk) ve sürümleri (1.2 / 1.3 / 1.4 1.5 / 1.6) "mühendislik" terimleri olarak adlandırırlar. Pazarlama terimleri "Java2 platformu" (aka jdk 1.2 ila 1.4) veya Java5 (aka jdk 1.5) veya Java6'dır (aka jdk1.6). Bunu düşünürken başım ağrıyor.
İlk tahminim, Java SDK'nın JVM'yi oluşturmak için olduğu, JDK ise JVM için uygulama oluşturmak için olduğu şeklinde olacaktır.
Düzenleme: Şu anda bu yanlış gibi görünse de. Sun, JVM'yi açma sürecindedir (belki de şimdi bitirmişlerdir), bu yüzden cevabım doğru olursa çok şaşırmam ... Ama şu anda, SDK ve JDK aynı şey.
JavaSE ve JavaEE olmak üzere iki ürün bulunmaktadır. EE, web uygulamasının geliştirilmesine ve çalıştırılmasına izin veren web uygulaması / kurumsal sürümüdür. SE, içinde EE özelliği olmayan, ancak EE'nin bir alt kümesidir. SE, JDK ve JRE olmak üzere iki tipte gelir.
Açık olmayabilecek büyük bir fark var ve bunun tüm İşletim Sistemleri için geçerli olup olmadığından emin değilim, ancak Windows altında JRE'de HotSpot JVM sunucusu yok, yalnızca istemci bir, JDK'da her ikisi var ve Diğer tüm işletim sistemlerinin hem JDK hem de JRE için olduğunu biliyorum. Gerçek fark, JDK'nın Java derleyicisini içermesidir, yani JDK, Java'yı kaynak kodundan derlemenize ve çalıştırmanıza izin verirken, JRE yalnızca Java bayt kodunun, yani zaten derlenmiş olan Kaynak'ın çalıştırılmasına izin verir. Ve evet, daha yeni sürümler, NetBeans editör ortamı ve Java in memory Database (derby / cloudscape) gibi bir dizi ekstra bileşeni bir araya getiriyor, ancak bunlar isteğe bağlıdır.