it-swarm.dev

Java hala 5 yıl içinde alakalı olacak mı?

Java geçmişte sahip olduğu öneme sahip olacak mı yoksa günümüzden daha az alakalı olacak mı?

40
kiamlaluno

Java önemlidir ve Enterprise computing dünyasında yıllarca geçerli olmaya devam edecektir.

Diğer alanlarda alakalı olup olmayacağı, Oracle'ın yaptıklarına çok bağlıdır. ME'ye, masaüstü uygulamalarına ve diğer alanlara biraz hayat (ve kaynak) enjekte ederse ve Java dilinin evrimi ile baskı yaparlarsa, Java) = iyi olacak.

Ancak Oracle, Ar-Ge'yi kısar ve/veya Java alanında diğer oyuncuları durdurmaya çalışırsa), bir kişinin/bazı şirketlerin daha iyi (ve daha açık) bir Java benzeri geliştirme olasılığı vardır Oracle, Google'a karşı davalarını kazanırsa, Android platformunun yeni neslinin, tıpkı C # ile olduğu gibi yeni bir dile sahip olacağını tahmin ediyorum. Google açıklığı doğru alırsa ... sonra oyun başlıyor!

30
Stephen C

Evet, Java kesinlikle alakalı olmaya devam edecek ve muhtemelen yazılım geliştirme için 1 numaralı genel platform olarak konumunu uzun süre koruyacaktır.

İlk olarak, Java güçlü bir seçimdir ve olmaya devam edecektir):

  • Java hala en popüler dil - ve bu en geliştiricilere, en çok devam eden gelişmeye, en büyük kurulu tabana vb. Keskin bir düşüş belirtisi yok - örneğin TIOBE trendine bakarsanız, önümüzdeki 10-15 yıl boyunca kolayca 1 numara olmaya devam edebilir.

  • Java, kusurlarına rağmen, hala kurumsal uygulamalar geliştirmek için mükemmel bir dildir . Ayrıntılı olması ve OOP geliştirme) oldukça standartlaştırılmış bir tarzı teşvik etme eğilimi olması, uygulamalar ( iyi bir şeydir uzun yıllar boyunca birçok farklı geliştirici tarafından oldukça standartlaştırılmış bir şekilde muhafaza edilmesi gerekir.Akıllı CIO'lar bunu fark eder, bu yüzden Java yakında kuruluşta herhangi bir zamanda kaybolmayacaksınız. ve Java yaratıldığı zamanki açık hedef) “basit, nesne yönelimli ve tanıdık” olmasıydı.

  • Dillerin başarısı sadece dilin kendisi ile ilgili değildir, aynı zamanda dil için mevcut kütüphanelerin ekosistemi etrafındadır. Bu bağlamda, Java büyük bir açık kaynak ve ticari kütüphaneler dizisi ile hiçbiri ikinci.

  • Performans - Modern JVM'lerde JIT derlenmiş kodu, hız açısından optimize edilmiş yerel koda çok yakın çalışır. Pratikte, bu Java genellikle mevcut olan en hızlı dil/uygulama kombinasyonlarından biridir (bakınız hatalı ölçütler isterseniz). Java yavaştır (ya da iyilik uğruna “yorumlanmış”), geçen yüzyıldaki gerçeklerini güncellemek zorundadır.

  • Büyük kurumsal destek - Java dünyanın en büyük ve en önemli teknoloji şirketleri ve organizasyonları tarafından desteklenen stratejik bir platformdur - Google, Oracle, IBM, Apache Yazılım Federasyonu vb. hakkında konuşuyoruz. Java ayrıca büyük teknoloji kullanıcılarından - bankalar, medya şirketleri vb.) önemli bir desteğe sahip. geniş endüstri desteği (oyuncuların ara sıra tiffleri olsa bile :-))

  • Android - mobil alanda Java) büyük bir destek veriyor. Birçok girişim bunu hedefliyor ve mobil girişimlerin sunucu tarafında da Java) seçimini yapmak için iyi bir nedenleri olmasını beklemek mantıksız değildir.

  • Taşınabilirlik : Java gerçek bir platformlar arası programlama ortamına en yakın şeydir. sunucuları akıllı telefonlara gönderir ve saf Java kod ) derlenir tüm bu platformlarda değiştirilmemiş olarak çalışır. Aynı zamanda bir baytkod dili olarak, Java derlenmiş kütüphaneler doğal olarak platformlar arasında taşınabilir olduğu için kütüphane alanında doğal bir avantaja sahiptir.

  • Mükemmel araçlar - çoğu ücretsiz ve/veya açık kaynaklıdır. Netbeans ve Eclipse IDE alanında harika örneklerdir. Geliştiricilerin tamamen üretken olmak için iyi araçlara ihtiyacı vardır, bu nedenle bu önemli bir faktördür) dil/platform seçimi.

  • Java Açık Kaynaktır - bunun neden iyi bir şey olduğunu düşünmeyeceğim, ancak her ikisinin de a) çekirdek Java OpenJDK uygulamasında) ve b) ilginç Java kütüphaneler ve araçların çoğu açık kaynak kodludur).

  • Java sadece bir dil değil, bir platform : JVM'de çok sayıda gelecek vaat eden dil var dil önündeki platformun geleceğini temsil eden Clojure ve Scala gibi. Benim tahminim, Java dilinin özelliklerde (JDK 7, 8 vb.) Küçük geliştirmeler almaya devam etmesi, bu yeni JVM dillerinin en yeni inovasyonun gerçekleşeceği yer olmasıdır. Java platformunun bir parçası.

İkinci olarak, Java nasıl değiştirilecek? Alternatif yarışmacılara bakalım:

  • C/C++ - sistem programlama ve oyun gibi yüksek düzeyde optimize yerel kod gereksinimleri açısından önemini korumaya devam edecektir. Ancak bu özel bir niş olmaya devam edecek ve onları genel amaçlı uygulama geliştirme için daha uygun olan Java'yı geçmeyecektir.
  • Microsoft.NET - C # kesinlikle güzel bir dildir (özünde Java'nın gelişmiş/cilalanmış bir klonu), ancak .NET platformunun tamamı satıcıların Microsoft yazılım yığınına kilitlenmesini temsil eder. Çok sayıda insan geçmişte bunun yanmış olduğu satıcıya özgü bir stratejiyi asla benimsemez. Mono, Nice açık kaynaklı bir proje olmasına rağmen hiçbir zaman tam olarak uyumlu olmayacak, bu nedenle çoğu işletme buna bir seçenek olarak bahse girmeyecek. .NET/C #, Windows alanında çok önemli olmaya devam edecek, ancak Java genelinin yerini alamayacak).
  • Objective-C - şüphesiz Apple'a özgü gelişimde büyük bir niş işgal etmeye devam edecek, ancak muhtemelen bu alanın dışında çok fazla çekiş olmayacaktır. Ayrıca, Java, Android sayesinde mobil alanda çok çekici bir karşı hikayeye sahip
  • Python, Ruby - Yine güzel diller, nişlerinde çok üretken. Ama performans, endüstri kabulü veya kütüphane aralığı açısından JVM'nin yakınında hiçbir yer yok. Java katilleri olarak şekillenmiyor.
  • JavaScript - istemci tarafı web geliştirmede önemli bir rol oynamaya devam edecektir. Ama bu alanın dışında hiçbir zaman Java) yakın zamanda tehdit edecek gerçek bir güç yok.
  • Haskell, OCaml (ve diğer çeşitli akademik/FP dilleri) - harika diller, ancak kütüphane yakınında hiçbir yerde destek yok Java, gerçek dünya kullanımı için özellikle pratik değildir. veya Scala (hangi olabilir use Java kütüphaneler ağrısız bir şekilde) gibi JVM dillerine göre avantajlar
  • Clojure veya Scala - orta/uzun vadede gerçekten çok zorlayıcı. Aslında Java 10-15 yıl içinde değiştirilebilir), ancak her ikisi de gerçekten Java platform JVM dilleri olduğu için zaten. Yani Java yatırımlar güvenli olacak).
  • Gizemli bilinmeyen yeni dil? - olabilir, ancak tarih, bir dil ne kadar zorlayıcı olursa olsun, çekişin gelişmesi, geliştiricilerin yeni beceriler öğrenmesi, şirketlerin gerçekleşmesi için önemli yatırımlar vb.'nin uzun zaman aldığını göstermiştir.

Son olarak, bazı sonuçlar/tahminler:

  • Ana dillerin genel göreceli pozisyonları (pazar payı açısından) önümüzdeki birkaç yıl içinde biraz gelişecek, ancak çok fazla değişmeyecek. Java 1 numaralı kalacaktır.

  • Sonraki 10-15 yıl için Java platformunu seçerken yanlış gitmeyeceksiniz. Java yakında herhangi bir zamanda kullanımdan endişe etmeyin).

  • Kısa vadede, Java dili güvenli ve güvenilir bir bahistir. Daha uzun vadede veya inovasyon/dil tasarımının en ileri noktasında daha fazla olma ihtiyacı hissediyorsanız, Clojure veya Scala yeni JVM dilleri olarak tavsiye ederim)

  • İnsanlar Java hakkında FUD yaymaya devam edecekler. Görmezden gel.

47
mikera

Bir düşüş olduğunu söyleyebilirim. Gitmedi, ama zirveyi aşıyor.

17
Fishtoaster

En kötü (en iyi?) Durumda bile, Java 5 yıl içinde alakasız hale geldiğini hayal edemiyorum. Java, kabaca COBOL, Fortran, vb. ile aynı durum - mevcut kodu olan herkes mevcut tüm sistemleri başka bir dilde makul bir şekilde yeniden yazmaya karar verse bile, hepsini değiştirmek 5 yıldan fazla sürecek (ve bundan 5 yıl sonra, aktif kullanımda hala yeterli miktarda bakımın devam edeceği yeterli olacaktır.

Gerçekçi olarak, bunun gerçekleşmesi olası değildir - Oracle'ın kesinlikle farklı görüşleri olsa da, onların Java) büyük yatırımları olan tüm büyük oyuncuların o kadar korkunç bir şey yaptığını hayal edemiyorum. Dürüst olmak gerekirse, IBM'in (örneğin) Java'nın yerinde başka bir şey kullanmaya çalışmayı düşünmesi büyük olasılıkla 5 yıla yakın açık bir şekilde kötü kararlar alacaktır. Java, neredeyse hiç alternatifleri olmadığına inanana kadar bırakma olasılığı düşüktür.

17
Jerry Coffin

İki cevap:

1) Android

2) Böğürtlen

Cidden, masaüstünde, düşüşte olabilir, ancak iki rakibe iPhone'a güç veriyor.

Ayrıca, geçen yıl, okul için Java ödevine sahip bir grup insana yardım ettim. Mesele şu ki, Java hala kolejlerde öğretiliyor.

Düzenleme:

Ekim 2011 itibarıyla BlackBerry düşüşte gibi görünüyor. Android hala güçleniyor.

17
Moshe

Mobil pazarda önemini yitiriyordu, ancak Android ile tekrar kazandı.

14
Casebash

Eski bakım modunu değil, yalnızca yeni kodu içerecek şekilde tanımlamış olsanız bile, Java öngörülebilir bir gelecekle alakalı olacaktır. Evet, dil yetişkinlerine rıza göstermek yerine programcılarına yaramaz çocuklar gibi emer ve davranır ve Taş Devrinden bu yana bir facelift geçirmemiştir. Diğer yandan:

  1. Java'nın harika kütüphaneleri var.

  2. JVM harika bir platform.

  3. Bu kütüphaneleri kullanmak için Java) programlamak zorunda değilsiniz, şimdi JVM dillerinin çoğalması oldu.

IMHO işlerin evrimleşme şekli Java yerel derlenmiş dünyada C'nin haline gelecektir) İnsanlar günlük kodlamada Scala, Jython, Groovy vb. ancak sonsuza dek eski, crufty Java kodu bu dillerden çağrılmaya devam edecektir.) Bazı performans açısından kritik kod yine de Java'da yazılmış olabilir, çünkü muhtemelen en düşük düzeydeki, en etkili JVM dili. kütüphaneler yeni özelliklerin eklenmesini gerektirecektir, bu nedenle, Java günlük ortalama programcı tarafından kullanılmasa bile yüksek düzeyde alakalı kalacaktır.

13
dsimcha

Sanırım. Eklentideki son gelişmeler ve sözdizimsel geliştirmelerin Java 7] ile gelen popülaritesinin önümüzdeki birkaç yıl içinde artacağını tahmin ediyorum. İyi bir açık kaynak kitaplığı (.NET ile karşılaştırıldığında) 10 yıl daha canlı tutabilir.

7
finnw

Şu anda Qt öldürüyor Java. Java Qt'ye kadar birçok yeniden yazma var.Şu anda bunlardan biri üzerinde çalışıyorum. Günden beri) benim programlama kariyer başladı her zaman bir şey C++ öldürmek söylentisi vardır.Örnek Visual basic, Java, C # için, ama gerçekte C++ hala devam ediyor, birçok dezavantajı var ama hala gidiyor. ........

5
Tamilselvan R

Java dil yavaş düşüşte olabilir, ancak Java platform (JVM + JDK) son birkaç yıldır kesinlikle patlama yaşıyor (Scala , Clojure ve diğer birçok dil; Android framework). Gömülü mobil cihazlardan ana bilgisayar kuruluşuna ölçekleme, orada en iyi (yalnızca uygun?) Çoklu mimari, çoklu işletim sistemi, çok dilli platformdur ve şu anda AFAIK'de karşılaştırılabilir rakipler yoktur. Bu yüzden Java platformunun 5 yıl içinde ve hatta 15 yıl içinde alakalı olmasını beklerim. Bu, Java'yi, popülerliği zirveyi aşmış olsa bile, uzun vadede ilgili dili yapar.

4
Joonas Pulakka

Alaka düzeyini kaybedeceğini sanmıyorum. Java 7, geliştiricilerin harika yazılımları daha kolay oluşturmasına yardımcı olacak bir çok düzgün özellik ile geliyor.

Ayrıca Java önde gelen kurumsal cep telefonlarından biri olan Blackberry uygulamaları oluşturmak için kullanılır. Yakında hiçbir yere gitmeyeceğini söylemek güvenlidir.

4
Sergio

TIOBE, dil kullanımlarını derecelendirir ... http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

İstatistiklerine dayanarak Java yol açar ve muhtemelen uzun bir süre için gelecektir - 2005'ten bu yana # 1. Java kariyerim üzerinde kullandım) ve çalıştığım her yerde Java uygulamalar/geliştiriciler vardı - kendilerini Microsoft Dev Shops olarak kabul edilen yerlerde bile vardı. Java almak için bu kadar kolay bir dildir Mac veya Linux Sunucusunda çözümler geliştirmeniz gerektiğinde.

Ayrıca, iyi ole C/C++ hala # 2 ve # 3'te güçlü duruyor - C # - herkesin en popüler olduğunu düşündüğü dil (MS en iyi pazarlama) - hatta yakın değil! Şimdi C # kullanıyorum, ancak Java ve Delphi) yazdığım kod miktarına eşit olması yıllar alacak.

Bu yüzden öğrenmek veya kullanmaktan korkmayın Java - onlar için her zaman ilan edilen işler vardır. Bu nedenle, evet Java uzun bir süre çok alakalı olacak gelecek zaman.

4
MDV2000

Görevi elde etmek için gereken diğer dillerle (Java dahil) çalışmamıza rağmen birincil .NET geliştiricisiyim. Bu nedenle, dil ile ilgili kendi deneyimime dayanarak, yakında herhangi bir zamanda gideceğini düşünmüyorum, işte neden:

  1. Mevcut Kurulum Tabanı - Yeni geliştiricilerin dili öğrenmesi için bir neden olması için uzun süreli desteğe ihtiyaç duyacak yeterli program var.
  2. Akademik Ortamda Kullanım - Çoğu kolej ve üniversite, OOP ve diğer temel kavramları öğretmek için giriş dillerinden biri olarak kullanmaktadır; yeni geliştiriciler mezun olur ve işe başladığında dile aşina olacak işgücüne girer.
  3. Bu Platformlar Arası Doğa - Bariz bir platform, ancak platformlar arası olması, Java Yalnızca bir kod tabanını korumak zorunda kalmanın, ancak birden fazla platform için uygulamaları dağıtabilmenin (yani satabilmenin) ihtimali biraz anlaşılır.İOS ve Droid'in her ikisinin de Java ile yazılmış uygulamaları destekleyip desteklemediğini hayal edebiliyor musunuz?
  4. Güçlü Rakip Yok - Şu anda Java için güçlü bir rakip olduğunu düşündüğüm bir dili adlandıramıyorum. Elbette C #, Mono sayesinde daha fazla platformda görünmeye başlıyor, ancak bu Java sahip olduğu aynı çapraz platforma sahip olmakla aynı şey değil). Java yapar (ve bazı durumlarda daha iyidir) yaptıklarına göre uyarlanma eğilimindedirler ve bazı büyük projeler için kabul ederseniz korumak için bir ton dile sahip olmak mantıklı değildir Java olabilir) herhangi bir performans hit.
4
rjzii

IMHO, Java, yapılarında veya güçlerinde gerçekten gelişmese bile, çok alakalı kalacak ve kullanımda büyüyecektir.

İşte benim akıl yürütme: - Orada bir sürü kod var ve bakım yeni kod yazmaktan daha fazla kişi gerektirir.

  • "VM dilleri çok yavaş" kampı yavaş yavaş kaybediyor (özellikle Java algo ticaretine başarıyla geçti).

  • Büyük şirketler hala Oracle dahil tüm sektörlerde kullanıyor.

  • Android platformu iOS'tan daha hızlı büyüyor, görünürde başka bir rakip yok ve bu da dil için daha fazla insan getiriyor.

  • İnsanların kullanması işlevsel dillerden daha basittir. Dil uzmanları ve akademisyenlerin işlevsel dilleri ve yeteneklerini takdir etmeleri kolaydır, ancak CS derecesi olmayan yeni başlayanların çoğu Lambda'nın gücünü tam olarak takdir etmez. Bu yüzden bu dillerin kalkacağını sanmıyorum.

  • Tamamen ücretsiz (alternatiflerine rağmen hala Windows ekosistemine daha yakın olan .NET'in aksine).

3
Uri

Java hakkında emin değilim. Ancak JVM elbette diğer birçok dili destekleyerek ilgili kalacaktır.

3
Gulshan

Kurumsal programlamanın en büyük isimlerinden biridir (J2EE). Önümüzdeki birkaç yıl boyunca aşağı ineceğini görmeyeceğimizden eminim.

3
Terence Ponce

Dilin nasıl gelişeceğine bağlıdır.

Şu anda state Java dil olarak çok etkili değildir. Bir (ve sadece bir) paradigmayı desteklemek için doğmuştur: OOP.Yüksek seviyeli soyutlamalara izin veren diller arasında (C++ gibi) ve metaprogramlama özellikleri) ve yansıtma özelliklerine sahip komut dosyası dillerini (Python "exec" ve "dir" komutları gibi), ancak bir şekilde gerçek yerini bulamıyor. "Bu, mobil cihazlarda fiili bir standart olmadığı için şimdiye kadar öleceğini düşünüyorum.

Aslında OOP Gördüğüm şeyden şüphelerim var: tüm Java doğumlu programcılar sadece Ziyaretçi ve Gözlemci desenleri her yerde ortaya çıkarıyor, ancak çok iyi değilim Java programcılar ile deneyim.

Hala çok eski kod var ve mobil cihazlarda bir standart. Ben asla Java tercih etmem dedi.), Apart iş olanlar (çoğu yönetici "Java" derseniz başını sallamak için hiçbir neden yoktur ve ben varsayalım, mobil cihazlarda bir standarttır).

3
Emiliano

Java, uzun yıllar boyunca alaka düzeyini tamamen kaybetmeyecek, ancak kesinlikle düşüşte. Son gelişmeler bunu etkileyecekse veya Oracle değişebiliyorsa görülmesi gereken bir şey. Ama bir gün COBOL gibi olabileceğimi düşünüyorum, yeni proje yok, ama hiçbir zaman çok ölmüyor.

2
indyK1ng

COBOL, Fortran ve C hala geçerlidir. Java'nin beş yıl içinde ortadan kalkma şansı nedir? Muhtemelen beş yıl içinde çok yeni Java gelişme olmayacak, ama ben de buna karşı bahis oynarım, çünkü Java kullanan birçok insan var ve dükkanlar oldukça yavaş tercih ettikleri dilleri değiştirin.

2
David Thornley

Java dünyasında - özellikle JRuby ve Rails veya Groovy ve Grails'in kesinlikle mükemmel bir şekilde benimsenmesi - Java'nin hala var olduğunu gösteren bazı eğilimler oldu içinde çok hayat var. Sonra Java'nın lehine olan Android durumu var. Mac'teki Snow Leopard kadar yakın bir zamanda, bazı sürücüler - şimdi harici sürücüler olmadan Midi'yi destekliyor - bunu masaüstünde olasılıklar kazanacak şekilde yapıyor. Ve Swing uygulamaları nihayet% 99 yerli görünüyor (veya en azından şu anda buna inanan çok sayıda somun var: 10 yıl önce hiç yoktu).

Java, 90'larda her şeyin çözümü gibi göründüğü muhteşem bir an yaşadı. Şimdi hiçbir şeyin her şeyin çözümü olmadığı açıktır. Net, ass, Ruby ve Python ve PHP (aptal CMS çözümleri ve insanların yaşam için evlendikleri tüm çerçevelerle!) Ve Java (Groovy JRuby ile) JPython ne olursa olsun) ve bir sürü daha. Cevap:

Çoğulcu Bir Evren Bekleyin

Java bu Evrende önemli bir rol oynamaya devam edecek mi? "JVM üzerinde çalışan diller" demek istiyorsanız, cevap kesinlikle. Cevap sadece Java (dil, JVM, vb.) İse, cevap "belki de o kadar büyük değildir". Ama hadi, Cobol bile hala takılıyor.

1
Dan Rosenstark

Bence akademik hala Java'da açık kaynak değerine ihtiyaç duyuyor. Java üzerinde geliştirilen çok sayıda güçlü kütüphane (akademik amaçlara odaklanmış) var.

Java ilgili, ancak daha küçük segment için geçerli kalacağını kabul ediyorum.

1
VinkyH

Google Java ve Google web'deki en büyük şirkettir.) Web'in geleceği olduğunu düşünüyorum - web uygulaması, bulut bilişim - ve bence Java gelecekte hala alakalı.

Ve bence akıllı telefonların geleceği olan Android var. Ve bazı insanlar akıllı telefonların bilgisayarın geleceği olduğunu söylüyor - benim düşüncem ne değil :) - ama aynı zamanda Java büyük bir gelecek verdi.) = Java : D

1
SCBoy

Tüm dillerin sonunda punditlerin "[Dil] [on yılı buraya yazınız] 'ın COBOL'u diyeceği bir aşamadan geçtiğinden şüpheleniyorum.

Java, bir dizi yazılım geliştirme alanında sadece veya ana araçlardan biri olan standart bir araç haline gelmiştir. Onun VM yeni diller inşa etmek için bir platform olarak popülerdir.

1
DarenW

Java'nın reddedilmesi üzerine ReadWriteEnterprise'dan bir makale:

http://www.readwriteweb.com/enterprise/2011/02/javas-not-dying-its-mutating.php

Tanık olduğumuz şey Java'nın ölümü değil, dönüşümüdür. Sadece şirkete hakim olan genel bir kullanım platformu olmaktan, çeşitli özel uygulamalar için birçok farklı teknolojinin cesaretine dönüşüyor.

Ayrıca, belirli araçların Java teknolojisine nasıl alternatifler sunduğunu, ancak bunun yerine değiştirilmesi gerekmediğini de ele alır:

NoSQL veritabanları ilişkisel veritabanlarına bir alternatif sunsa da, ilişkisel veritabanlarının ortadan kalkacağı anlamına gelmez. Benzer şekilde, Node.js, Apache'ye özel bir alternatif sunar, ancak Apache'yi öldürmez.

0
Britt Wescott

Bir sektöre (yani bankacılık; mobil platformlar vb.) Bağlıysa, 5 yıl önce "Internet Explorer hala 5 yıl içinde geçerli olacak mı?" Bugün, IE'ye özgü dahili web sitelerine sahip olan ve sıfırdan yeniden yazılamayan birçok şirket var. Yani "alakalı" değil "kaçınılmaz".

Sorunuza gelmek - hayır, bu yenilik için itici güç ile ilgili değildir; ancak evet, konuyla ilgilidir, çünkü birçok endüstrinin önümüzdeki yıllar boyunca Java uygulamalarının bakımının sürdürülmesi gerekecektir).

0
lorenzog