Država Java u 2018

Java Top

Upravo sam najavio novo Uči proljeće tečaj, usredotočen na osnove Spring 5 i Spring Boot 2:

>> PROVJERITE TEČAJ

Posljednjih nekoliko tjedana vodim godišnje istraživanje "Stanje Jave". To je peta godina istraživanja i, naravno, najveća do sada, sa 5160 programera uzimajući vremena da prođem i odgovorim.

Krenimo odmah u podatke.

1. Usvajanje Java

Nije iznenađujuće što Java 8 i dalje u proizvodnji koristi većina razvojne zajednice:

Usvajanje Jave 9 i 10 još uvijek je prilično nisko i iznosi manje od 5%.

Za referencu, 2017. godine brojevi za Javu 7 i ranije iznosili su oko 24,4%, a sada su 10,6% - tako da se ekosustav očito nadograđuje, uglavnom na Javu 8.

2. Proljetno usvajanje

Pogledajmo sada proljetne brojeve:

Ovdje je prelazak na Spring 5 jasan, s 24% sustava podržanih Springom koji rade na najnovijoj verziji u proizvodnji, u odnosu na vrlo ranih 2,2% prošle godine.

I, naravno, ove godine imamo i jasne Java EE brojeve, jer - vjerovali ili ne - ne koriste svi proljeće 🙂

3. Proljetno usvajanje čizama

Od sustava koji su izgrađeni s Springom, gotovo svi oni također koriste Boot u proizvodnji:

Ono što ovdje iznenađuje je samo kako se brzo usvaja Spring Boot 2, s obzirom na to da je GA izašao prije niti dva mjeseca i već je usvojio velikih 30%.

"Boot 1.4 i stariji" pao je s 30% prije godinu dana, na sadašnjih 6,8%, što znači da se mnoštvo Boot-a kreće i nadograđuje puno brže od šireg ekosustava.

Konačno, prošle godine je oko 30,2% aplikacija temeljenih na Springu samo koristilo temeljni okvir, ali ne i Boot; sada je taj broj samo 16,7%. Jednostavno rečeno, većina Proljetnih aplikacija sada koristi Boot.

4. Usvajanje alata za izgradnju

Maven ne ide nikamo. Alat je prošle godine sjedio na ugodnih 75,7% i sada zapovijeda sa 74,2% tržišta:

Što se tiče Gradlea, on je zauzeo malo više tržišta, uglavnom od Ant-a, i sada ima tek 1/5 tržišta - 21,3%.

5. Usvajanje IDE-a

IDE brojevi su uvijek zanimljivi, a ni ove godine nije drugačije:

IntelliJ je porastao s 45,8% u 2017. na nevjerojatnih 55,4% danas, očito pobijedivši IDE bitku u Java prostoru ove godine.

NetBeans je, na nesreću nekolicine vrlo glasnih pristaša, ove godine pao na 5,1%, što je manje od polovice od 12,4% broja 2017. godine.

I čini se da je Eclipse donekle zaustavio krvarenje i pao samo 2% tijekom ove godine, na 38% tržišta.

Ono što je ovdje zanimljivo jest da je većina tržišnog udjela koji je IntelliJ stekao začudo NetBeans, a ne Eclipse.

6. Usvajanje weba / poslužitelja aplikacija

Evo kako izgleda pejzaž poslužitelja danas:

Ovo je zapravo novo pitanje u anketi, tako da nema brojeva iz 2017. za usporedbu podataka, ali zaključak je jasan i nimalo iznenađujući.

Jednostavno rečeno, Tomcat je vlasnik tržišta, s više usvojenja od svih ostalih zajedno, sa 62,5%.

Ostale poslužitelje čini se da ih koristi oko 5% tržišta, u relativno ujednačenom podjelu.

7. Ostali JVM jezici

Do zadnjeg dijela ovdje - koji se još jezici temeljeni na JVM koriste tamo?

Prvo, 62,8% projekata su jednojezični i samo za Java.

Evo kako izgleda ekosustav:

Evo pogleda samo na buduće projekte koji koriste druge jezike:

Primarni za poneti ovdje je, naravno, Kotlin - koji je imao ludu godinu, skočivši s 11,4 u 2017. na 28,8% danas.

Scala je također zanimljiva za gledanje, krećući se s 28,4% na 21,6% tijekom ove godine.

8. Zaključak

Ovaj pogled na ekosustav Java u 2018. godini zasigurno je bio zanimljiv, potvrđujući neke već poznate trendove i iznoseći na vidjelo neke nove.

Spring Boot sada je dio većine Spring projekata, što više nije iznenađujuće, ali ipak veliko postignuće, s obzirom na relativno kratak vremenski okvir projekta.

Što se tiče IDE-a, IntelliJ još uvijek raste snažnim tempom. I, jako povezani, Kotlin je možda najveći "pobjednik" ove godine, potpuno promijenivši krajolik JVM jezika.

Sve u svemu, vrlo kul pogled na Java zajednicu i veliko hvala svima koji su sudjelovali.

Dno Java

Upravo sam najavio novo Uči proljeće tečaj, usredotočen na osnove Spring 5 i Spring Boot 2:

>> PROVJERITE TEČAJ

$config[zx-auto] not found$config[zx-overlay] not found