Java 1.2'nin Java 2 olarak da bilindiğini gördüm. "Java 1.x" ve "Java x" (örneğin, "Java 1.6" ve "Java 6"), aynı Java sürümüne mi başvuruyor?
Ve eğer evet ise, neden bu dualiteye ihtiyaç var?
Java 1.2'nin Java 2 olarak da bilindiğini gördüm. "Java 1.x" ve "Java x" (örneğin, "Java 1.6" ve "Java 6"), aynı Java sürümüne mi başvuruyor?
Ve eğer evet ise, neden bu dualiteye ihtiyaç var?
Yanıtlar:
Sun Microsystems, ürünlerinde sayısız isimlendirme değişikliği yaşama ve ilk etapta başlamak için kafa karıştırıcı bir isim kullanma konusunda kötü bir alışkanlık edinmişti.
Başlangıçta "Java" terimi ayrım gözetmeden tanımlamak için kullanılıyordu:
Sürüm numaraları ile ilgili olarak, diğerleri belirttiği gibi, kısmen pazarlama nedeniyle ve kısmen de Java'nın böyle bir ilerleme kaydettiğini hissettikleri için büyük bir sürüm yükseltme işleminin daha uygun olduğunu (Java 1.2 / Java 2 ve Java 1.5 / Java için) 5).
Öyleyse, Java 2 olarak adlandırdığımız şey aslında Java 1.2 ile 1.4 arasındaydı. Java 3 ve Java 4 hiçbir zaman var olmadı ve burada açıklamaya çalıştıkları gibi doğrudan Java 5'e geçtik (bu sayfadaki adlandırma ve sürümlendirme ).
Muhtemelen, izleme ve geliştirme sistemlerinde kullanılan dahili numaralandırma ile uğraşmamaya da yetmedi. Bunu 1.x = dil sürümü ve X = dil ve ürün sürümü olarak düşünme eğilimindeyim. Normal kullanıcıların, otomatik güncellemeleri teşvik ettiklerinden küçük artışlar ve güncellemeler için endişelenmeleri gerekmediği için anlamlıdır, çünkü bunlar dilde veya bayt kodunda herhangi bir değişiklik yapmamalıdır.
Ayrıca, küçük sürümlere baktığınızda ve numaraları güncelleştirdiğinizde daha tuhaflaştığını unutmayın. Örneğin, bir Java 1.3.1 ve daha sonra Java 1.4.1 ve 1.4.2 vardı.
Ancak, o zamandan beri hiç 1.xy yoktu, her zaman 1.x.0_UPDATE oldu:
Ayrıca, bu adlandırma kurallarından biriyle ilgili güncelleştirmeleri de göreceğinizi unutmayın:
Daha fazla kafa karışıklığı ve Sun Microsystems'ın geleneğine ayak uydurmak için Oracle şimdi böyle duyurular bırakıyor.
Ayrıca, sadece numaralandırma alışkanlıklarına değil, ürün tekliflerinin adlarına da girdiklerini unutmayın. Böylece, Java 2'de J2SE (Java 2 Standard Edition), J2EE (Java 2 Enterprise Edition) ve J2ME (Java 2 Mobile Edition) bulunur. Java 5'in tanıtılmasından bu yana, bu sözleşmeler ve kısaltmalar düşürüldü (bazıları inanılmaz derecede uzun bir esnekliğe sahip olsalar da, çoğunlukla Java SE, Java EE ve Java ME lehine işe yaramaz aptal işe alım ajansları için teşekkürler) bazen kısaltılır - ama resmi olarak olmamalıdır - JSE, JEE (oldukça yaygın) ve JME'ye.
Sun Microsystems tarafından kullanılan mevcut sürüm sistemi ve şimdi Java 1.3.1'den beri Oracle hakkında daha fazla bilgi için bu sayfayı okudunuz .
(Bonus puanlar için, şimdi birkaç kez yeniden adlandırıldığını görmek için NetBeans'ın geçmişini aramaya çalışın).
Ayrıca mevcut referansları geri güncelleyip güncellememeye karar vermekte zorlanıyorlar. Örneğin, eski sürümlerle ilgili bu sayfa eski sürümler için eski numaralandırma sistemini kullanır, ancak daha yeni ürün adları (Java SE 1.1, 1.2, 1.3 ve 1.4 bu adlandırma kuralına göre yayımlanmamıştır).
Belki de sadece eğlence için bizimle dalga geçiyorlar. Kim bilir?
Elbette orada adlandırma ve numaralandırma ile de eğlendiler.
Java Dil Şartname ürün numaraları aşağıdaki ,, bir kitap "baskısı" sürüm Sistemli ile tahliye edilecek kullandı. Yani:
Çok uzak çok iyi.
"Java Dil Belirtimi" dışında, yalnızca Java 5'te dil değişiklikleri yapıldığında yeniden düzenleme yapıldıysa (bu mantıklı, yeni bir kitap basımı sadece eğlence için yayınlamayacaksınız). Bu düzenlemeyi 3. kez yaptıkları için (tada!) "Java Langauge Spesifikasyonu, 3. baskı" olarak adlandırdılar.
Fakat açıkçası, insanlar 1.3 ve 1.4'ün neden bir dil spesifikasyonuna sahip olmadığını veya neden Java 5'in dil spesifikasyonunun 3. baskısıyla eşleştirildiğini merak etmeye başladılar.
Bu nedenle Java 7 şimdi sadece "Java Dil Belirtimi, Java SE 7 Sürümü" olarak adlandırıyor, buna rağmen biz bunu kısaca JLS7 olarak adlandırıyoruz ve RSI'dan kaçınıyoruz.
Daha fazla eğlence için, Microsoft Windows RT'nin adlandırma başarısızlığına veya Apple'ların iPhone'lar, iPad'ler ve hatta iPod'larla adlandırma ve numaralandırma deliliğine bakın.
Kısa cevap: Pazarlama.
Daha uzun bir cevap: Kısa form (örneğin, Java 6) "ürün sürümü" olarak adlandırılan ve Java'nın kullanıcılara ve basın bültenlerinde nasıl pazarlandığı.
Uzun form (ör. Java 1.6.0) "geliştirici sürümüdür". Dahili olarak kullanılır ve Java geliştiricileri tarafından da karşılaşılır (örneğin, java.version
sistem özelliği uzun formu kullanır).
Daha fazla bilgi için bu sayfalara bakın:
Çünkü "Shiny New Java 3'ü Öğrenin" başlıklı kitap, "Java 1.3'teki yenilikler" başlıklı kitaptan daha önce tükenir.
Yani evet, esas olarak pazarlama nedenleri. Öte yandan, burada ciddi bir suç görmüyorum. Sonuçta, Mozilla veya Chrome gibi bazı ürünlerde ana yapım numarası sürekli artırılıyor ve diğerleri küçük yapım sayısını artırmaya devam ediyor, ancak bazen her yeni sürümde büyük değişiklikler oluyor.
Apple gibi bazıları bizi, kullanıcıları "Mac OS 10.6" gibi donuk isimlerle bırakmak istemiyor.
Ve Sun, "Java Green Diplodocus" sürümünün tanıtılması yerine N takma adıyla Tamam idi.
TheServerSide "Java x" için "Java 1.x" dan değişmesini açıklamaktadır şöyle :
Sun "1" i kesti. J2SE 1.5.0'ı J2SE 5.0 ile değiştirmek için. Değişimin nedeni? Sun, "yaklaşık on yıl önce ilk sürümünden bu yana, Java platformuna ve programlama diline en önemli yükseltme olduğunu" ve bu sürümün değerli olduğunu iddia ediyor.
Görünüşe göre "J5SE" olarak yeniden adlandırmak için konuşmalar yapıldı, ancak J2EE markasının değiştirilemeyecek kadar fazla olduğu düşünülüyordu.
Sürüm numaraları eğlenceli değil mi?
Basın bültenini okuyun: Sun, 5 yılda en önemli ve en gelişmiş Java platformunu piyasaya sürdü
Yukarıdaki alıntı notu bağlantı Oracle tarafından öldürüldü . Söyleyebileceğim kadarıyla , prnewswire'da bulunabilir :
Java (TM) teknolojisinin yaratıcısı ve öncüsü olan Sun Microsystems, Inc. (Nasdaq: SUNW), bugünden beri
Java
platformuna ve programlama diline en önemli yükseltme olan Java 2 Platform Standard Edition (J2SE (TM)) 5.0'ı tanıttı. ilk yayın neredeyse on yıl
önce başladı. Project Tiger olarak bilinen bu güncellenmiş Java platformu, çarpıcı bir
geliştirme kolaylığı , yeni uygulama izleme ve yönetim özellikleri,
PC masaüstü için zengin müşteri desteğine odaklanan ve rekor kıran
performans sunuyor ...
Tamlık uğruna, 1.X sürüm stilinin tamamen düşürülmediğine dikkat edin .
Geliştiriciler Tarafından Kullanılan "Sürüm 1.5.0"
J2SE, yalnızca geliştiricilerin görebileceği veya sürüm numarasının programlar tarafından ayrıştırıldığı bazı yerlerde sürüm numarasını 1.5.0 (veya 1.5) olarak da tutar. Belirtildiği gibi, 1.5.0 aynı platform ve 5.0 numaralı ürünleri ifade eder.
Ayrıca olarak dikkat yorumlardaki işaret yukarıda kullanılan terim "J2SE" daha sonra "Java SE" olarak değiştirildi.