Geliştirici Anketleri Anketi: Java Sonuçlarına Yakından Bakış

Geliştirici anketleri, yazılım topluluğunun heyecanını arttırabilir. Yeni bir yılın başlangıcında, gelecek yıl nelerin kullanılacağını görmek için geçen yıl kullanılanları değerlendirmek için yaygın bir zamandır. Sonuç olarak, birkaç şirket yakın zamanda geliştirici anketleri hakkında raporlar yayınladı:

RebelLabs, Ocak ayında Java Teknoloji Raporlarıyla başladı

Kodlama Adı, Kodlama Geliştirici Raporunu takip etti

Snyk kısa süre önce Şubat ayında yeni bir JVM Ekosistem Raporu başlattı

Tiobe Şubat ayı için aylık Tiobe Endeksini yayınladı

Son anketlerini Nisan 2019'da yayınlayan StackOverflow'un önümüzdeki bir kaç ay içinde 2020 raporlarını yayınlaması bekleniyor

Temmuz 2019'da son program dilleri sıralamasını yayınlayan RedMonk'un yakın gelecekte başka bir sıralama yayınlaması muhtemeldir.

Geliştirici anketleri, şirketlerin (ve rakiplerinin) ürünlerine olan ilgisini ölçmelerine ve belirli alanları için geliştirici ortamının kabaca bir görünümünü sunmalarına olanak tanır. Bununla birlikte, geliştirici anketlerinin bir dezavantajı, kendi seçtikleri Twitter takipçileri veya IDE forumları gibi belirli alt grupları etrafında kümelenme eğiliminde olmalarıdır. Örneğin, RebelLabs ve Snyk raporlarının odağı Java'ya odaklanırken, Tiobe endeksi Java'yı grafiklerinde C'nin hemen arkasındaki 2. konuma yerleştirir.

Anketler tutarsız sonuçlar da verebilir. Örneğin, Kodlama anketinde en çok sevilen üç dil Python, JavaScript ve Java, en çok nefret edilen üç dil ise PHP, Java ve JavaScript'tir.

Tiobe indeksi ve RedMonk raporu kendi bildirdiği sonuçlardan üretilmez, ancak web aramalarını proxy olarak ve GitHub ve StackOverflow sorularının bir kombinasyonunu popülerlik için kullanırlar. Sonuç olarak, geliştiricilerin kullanmak istediklerinden ziyade geliştirici dünyasında kullanılanın farklı bir kümesini gösterme eğilimindedirler. Swift sadece Objective-C'yi aşmakla kalmadı, aynı zamanda Apple'ın yeni programlama diline doğru ilerledikçe oda düşüyor; diğer ortamlarda Rust merdivene tırmanıyor ancak henüz ilk 20'ye giremedi.

Bu uyarılar ortadan kalktığında, Java / JVM teknolojisi raporları, Java 8'in üretimde Java'nın en çok kullanılan sürümü olduğunu, yaklaşık dörtte birinin Java 11'i ve LTS olmayan sürümleri kullanan küçük bir bölüm olduğunu gösteriyor. Java, JVM'de kullanılan ana dil olmaya devam ediyor, Kotlin kullanımı yüzde birkaç puan aldı ve Scala düştü. Kotlin'in Android ekosistemi tarafından benimsenmesi bu eğilimi gelecekte de sürdürecektir.

Spring popüler bir çerçeve olmaya devam ediyor, geliştiricilerin %60-80'i onu geliştirmeleri için kullandıklarını söylüyor; son zamanlarda yeni bir web sitesi tasarımı başlattılar. Çoğu geliştirici, anketlerin başlatıldığı sırada yayınlanan Spring'in en son sürümünde görünmektedir; bunların çoğu, Spring Initializer web sitesinde varsayılan olarak sunulan SpringBoot ile kullanılmış gibi görünmektedir.

IntelliJ IDE, bu anketlerde en çok tercih edilen IDE olmaya devam ediyor ve geliştirici tabanının %60-80'i arasında bir yer alıyor ve Eclipse bir sonraki en çok kullanılan IDE'yi %20-25 oranında alıyor. Apache NetBeans ve VS Code, Java için kullanılan en popüler sıradaki iki IDE'dir ve tabi ankette web tabanlı IDE'leri kullanmak isteyenler arasında çok az yanıt olduğu görülmektedir. VS code gibi web tabanlı veya hafif IDE'ler, daha hafif dillerle giderek daha fazla kullanılmaktadır ve Dil Sunucusu Protokolü'nün (LSP) destekleyen dillerinin büyümesi, daha yeni dillerin (Rust gibi), LSP destekleyen herhangi bir IDE'de bir yer bulabileceği anlamına gelir.

Derleme araçları (build tool) için, farklı Java raporları farklı hikayeler bulunuyor. Maven, Java ekosistemi için bir numaralı oluşturma aracı (build tool) olmaya devam ediyor, ancak hangi rapora baktığınıza bağlı olarak Gradle, 2 numaralı oluşturma sistemi, Maven ile kafa kafaya veya üçte biri kadar. Ant gibi diğer derleme araçlarının kullanımdan kaldırıldığı görülüyor, SBT gibi dile özgü derleme sistemleri yalnızca az bir vakada kullanılıyor - SBT söz konusu olduğunda öncelikle Scala uygulamaları oluşturmak için kullanılıyor, bu yüzden Scala'nın kullanımı anlamanın bir yolu.

JRebel'in araştırması hangi hosting çözümünün kullanıldığını içermiyordu, ancak Snyk'un raporu GitLab'ın GitHub'ı üçüncü sırada BitBucket ile değiştirdiğini gösterdi. BitBucket, Ağustos 2019'da Git'i 2011'den beri destekleyerek orijinal Mercurial (hg) desteğini kaldıracağını açıkladı, bu da başka bir yere taşınan Mercurial kullanıcıları tarafından açıklanabilir.

Snyk araştırması sanallaştırma hakkında soru sormadığı, JRebel'in raporunda ise yazılımcıların dörtte üçünün sanallaştırma ihtiyaçları için Docker'ı kullandığını, bunun yarısı docker süreçlerini çalıştırmak için Kubernetes kullandığını belirtildi. Mikro servis geliştirmelerinin yükselişi detayı, sanallaştırma kullanımında itici güç olduğunu göstermektedir.

Son olarak, ankete katılan geliştiricilerin üçte biri ile OracleJDK'yı ana ortamları olarak kullandılar ve bunların yarısından fazlası OpenJDK'yı AdoptOpenJDK, Oracle veya Amazon gibi kaynaklardan kullandı. OracleJDK kullanımının arkasındaki nedenlerden biri, geliştiricilerin yaklaşık %10'unun yarısı Oracle sözleşmesi kullanan destek için ödeme yapması ve geri kalanının IBM, RedHat ve Azul arasında eşit olarak bölünmesidir.


HABERLER