Java sarà ancora rilevante tra 5 anni? [chiuso]


41

Java avrà la stessa importanza che aveva in passato, o sarà meno rilevante di oggi?


4
Java rimarrà sempre rilevante nel settore della programmazione. Come suggerisci di scrivere qualcosa senza di essa ?! ;)
ingannare il

7
La lingua o la piattaforma?
MIA,

@Jim: ottimo punto, disaccoppiando il futuro del linguaggio Java e JVM.
Azheglov,


1
Non "guardiamo al futuro e prevediamo cosa accadrà" più domande.
Adam Lear

Risposte:


30

Java è rilevante e continuerà ad esserlo per molti anni nel mondo dell'informatica aziendale.

Il fatto che continui ad essere rilevante in altre aree dipende molto da ciò che fa Oracle. Se iniettano un po 'di vita (e risorse) in ME, applicazioni desktop e altre aree, e se continuano con l'evoluzione del linguaggio Java, allora Java farà bene.

Ma se Oracle riduce la ricerca e lo sviluppo e / o cerca di calpestare altri giocatori nello spazio Java, ci sono buone probabilità che qualcuno / qualche azienda svilupperà un linguaggio migliore (e più aperto) simile a Java. Se Oracle vincerà la causa contro Google, prevedo che la prossima generazione della piattaforma Android avrà un nuovo linguaggio, proprio come è successo con C #. Se Google ottiene l'apertura nel modo giusto ... allora il gioco è attivo!


1
Essere d'accordo. Oracle stesso ha investito troppo del proprio stack di applicazioni Enterprise in Java per consentirne il declino. Interessante che molte delle altre risposte sembrano concentrarsi sulla piattaforma mobile.
Gary,

10
IBM supporta Java su tutte le loro piattaforme principali. Ciò significa che anche se Java dovesse scomparire dalla faccia della Terra, sarà comunque in esecuzione sui mainframe (come COBOL). Il vantaggio principale per i programmatori è la capacità di sviluppo locale e la rigidità della JVM che significa che funzionerà in modo prevedibile.

+1 soprattutto per I predict that the next generation of the Android platform will have a new language, just like happened with C#.Non dimenticare che Gosling ora funziona per Google; nighthacks.com/roller/jag/entry/next_step_on_the_road
Qwerky

@Qwerky Ora lavora per Liquid Robotics. nighthacks.com/roller/jag/entry/i_ve_moved_again

Non dimentichiamo cosa ha fatto Borland a Delfi. Era così abbandonato che la maggior parte delle persone oggi pensa a Delfi come una soluzione in via di estinzione. Ma Embarcadero ha salvato il prodotto e ora è aperto per java, mac, html5, android e altre aree di programmazione.
Please_Dont_Bully_Me_SO_Lords,

47

Sì, Java continuerà sicuramente ad essere rilevante e probabilmente manterrà la sua posizione come la piattaforma n. 1 per lo sviluppo del software per molto tempo.

Innanzitutto, i motivi per cui Java è e continuerà ad essere una scelta forte:

  • Java è ancora la lingua più popolare - e questo significa che ha il maggior numero di sviluppatori, lo sviluppo più in corso, la base installata più grande ecc. No.1 per i prossimi 10-15 anni

  • Java, nonostante i suoi difetti, è ancora un linguaggio eccellente per lo sviluppo di applicazioni aziendali . Il fatto che sia prolisso e tende a promuovere uno stile abbastanza standardizzato di sviluppo OOP è una buona cosa quando le applicazioni devono essere gestite da molti sviluppatori diversi per molti anni in modo abbastanza standardizzato. Gli Smart CIO se ne rendono conto, motivo per cui non vedrai Java scomparire presto nell'azienda. A proposito, e l'obiettivo esplicito di Java quando fu creato era che doveva essere "semplice, orientato agli oggetti e familiare".

  • Il successo delle lingue non riguarda solo la lingua stessa, ma attorno all'ecosistema di librerie disponibili per la lingua. A questo proposito, Java non è secondo a nessuno, con una vasta gamma di librerie commerciali e open source.

  • Prestazioni : il codice compilato JIT sulle moderne JVM funziona molto vicino al codice nativo ottimizzato in termini di velocità. In pratica, ciò significa che Java è in genere una delle combinazioni linguistiche / di implementazione più veloci disponibili (vedere benchmark errati, se lo si desidera). Chiunque pensi che Java sia lento (o, per l'amor del cielo, "interpretato") deve aggiornare i propri fatti dal secolo scorso.

  • Importante supporto aziendale - Java è una piattaforma strategica supportata da molte delle più grandi e importanti società e organizzazioni tecnologiche del mondo - stiamo parlando di Google, Oracle, IBM, Apache Software Federation ecc. Java ha anche un supporto sostanziale da parte dei principali utenti della tecnologia - banche, società di media, ecc. Nessun'altra lingua / piattaforma ha un supporto così ampio nel settore (anche se i giocatori hanno occasionali tiff :-))

  • Android : sta dando un notevole impulso a Java nello spazio mobile. Molte startup stanno prendendo di mira questo, e non è irragionevole aspettarsi che anche le startup mobili abbiano buone ragioni per scegliere Java sul lato server.

  • Portabilità : Java è la cosa più vicina esistente a un vero ambiente di programmazione multipiattaforma. È su tutto, dai server di fascia alta agli smartphone, e il codice Java puro compilato verrà eseguito senza modifiche su tutte queste piattaforme. Pochissime lingue possono dirlo con lo stesso grado di credibilità. Anche come linguaggio bytecode, Java ha un vantaggio intrinseco nello spazio delle librerie perché le librerie compilate sono intrinsecamente trasportabili su più piattaforme.

  • Strumenti eccellenti - molti dei quali sono gratuiti e / o open source. Netbeans ed Eclipse sono ottimi esempi nello spazio IDE. Gli sviluppatori hanno bisogno di buoni strumenti per essere pienamente produttivi, quindi questo è un fattore importante nella scelta della lingua / piattaforma.

  • Java è Open Source - non andremo nel perché questa è una buona cosa qui, ma basti dire che sia a) l'implementazione Java di base in OpenJDK eb) la maggior parte delle interessanti librerie e strumenti Java sono open source.

  • Java non è solo una lingua, è una piattaforma : ci sono molti linguaggi promettenti sulla JVM come Clojure e Scala che rappresentano il futuro della piattaforma sul fronte linguistico. La mia previsione sarebbe che il linguaggio Java continui a ricevere piccoli miglioramenti delle funzionalità (JDK 7, 8 ecc.) Mentre questi nuovi linguaggi JVM sono il luogo in cui avverrà l'innovazione all'avanguardia. Ma fa tutto parte della piattaforma Java.

In secondo luogo, come verrà sostituito Java? Diamo un'occhiata ai contendenti alternativi:

  • C / C ++ - continuerà ad essere importante in termini di programmazione dei sistemi e per requisiti di codice nativo altamente ottimizzati come i giochi. Ma questa continuerà ad essere una nicchia specializzata e non li porterà mai oltre Java, che è più adatto allo sviluppo di applicazioni per scopi generici.
  • Microsoft.NET - C # è sicuramente un bel linguaggio (un clone di Java migliorato / raffinato, in sostanza), ma l'intera piattaforma .NET rappresenta il blocco dei fornitori nello stack di software Microsoft. Un gran numero di persone non adotterà mai una strategia specifica del fornitore che è stata bruciata da questa in passato. Mono, nonostante sia un bel progetto open source, non sarà mai completamente compatibile, quindi la maggior parte delle aziende non scommetterà su questo come opzione. .NET / C # continuerà ad essere molto importante nello spazio di Windows, ma non sarà in grado di spostare Java in generale.
  • Obiettivo-C: continuerà senza dubbio a occupare una nicchia importante nello sviluppo specifico di Apple, ma probabilmente non avrà molta trazione al di fuori di quello spazio. Inoltre, Java ha una contro-storia molto avvincente nello spazio mobile grazie ad Android
  • Python, Ruby - di nuovo belle lingue, molto produttive nelle loro nicchie. Ma in nessun posto vicino alla JVM in termini di prestazioni, accettazione del settore o gamma di librerie. Continuerà sicuramente ad avere successo, ma non si preannunciano per essere killer di Java.
  • JavaScript: continuerà a svolgere un ruolo importante nello sviluppo Web lato client. Ma nessuna vera forza al di fuori di quello spazio che probabilmente minaccerà Java in qualunque momento presto.
  • Haskell, OCaml (e varie altre lingue accademiche / FP) - grandi lingue, ma non hanno nulla vicino al supporto della libreria che Java ha, quindi non particolarmente pratico per l'uso nel mondo reale. Inoltre, non offre vantaggi convincenti rispetto ai linguaggi JVM come Clojure o Scala (che può utilizzare le librerie Java indolore)
  • Clojure o Scala - in realtà davvero convincente a medio / lungo termine. Potrebbe effettivamente sostituire Java tra 10-15 anni, ma entrambi contano comunque come parte della piattaforma Java poiché sono linguaggi JVM. Quindi gli investimenti Java saranno al sicuro.
  • Misteriosa nuova lingua sconosciuta? - potrebbe accadere, ma la storia ha dimostrato che non importa quanto sia convincente una lingua, ci vuole molto tempo per sviluppare la trazione, gli sviluppatori per apprendere nuove competenze, investimenti significativi da parte delle aziende, ecc.

Infine, alcune conclusioni / previsioni:

  • Le posizioni relative complessive (in termini di quota di mercato) delle principali lingue si evolveranno un po 'nei prossimi anni, ma non cambieranno molto. Java rimarrà n. 1.

  • Non sbaglierai nella scelta della piattaforma Java per i prossimi 10-15 anni. Non preoccuparti che Java vada via presto.

  • Nel breve termine, Java-the-language è una scommessa sicura e affidabile. A più lungo termine, o se senti la necessità di essere più all'avanguardia dell'innovazione / del design linguistico, consiglierei Clojure o Scala come nuovi linguaggi JVM

  • Le persone continueranno a diffondere FUD su Java. Ignoralo.


2
Ottimo post, le persone che usano linguaggi come Ruby e Python pensano che il loro linguaggio sia la cosa migliore in assoluto, ma la realtà è che per applicazioni intensive su larga scala un linguaggio dinamico non lo taglierà
programmx10

4
Questa non è la prima risposta, ma è di gran lunga la più dettagliata e convincente a partire dalla metà del 2011, e quindi merita di essere la risposta migliore. +1
limista

@ programmx10: c'è più sovraccarico nei linguaggi dinamici rispetto a quelli nei framework Java come Spring?
Kevin Cline,

@Kevin: Spring è in genere utilizzato solo per la configurazione dell'applicazione, quindi il costo non è terribile. OTOH, se fosse utilizzato anche per il calcolo effettivo e l'assistenza IO, sarebbe alla velocità dei linguaggi dinamici. La chiave è che le app basate su Spring sono in parte parzialmente scriptate , il che in realtà è un ottimo posto dove stare, ma non diciamo ai capi che come a loro piace credere che assolutamente tutto debba essere compilato.
Donal Fellows,

1
Buon post. Dove vedi Go e forse Dart in questo spettro?
Paul Tomblin,

17

Anche nel caso peggiore (migliore?), Non riesco a immaginare che Java diventi irrilevante entro 5 anni. Java è stato usato abbastanza da trovarsi all'incirca nella stessa situazione di COBOL, Fortran, ecc. - anche se tutti coloro che hanno un codice esistente decidono di riscrivere tutti i sistemi esistenti in un'altra lingua il più rapidamente possibile, ci vorrebbero più di 5 anni rimpiazzarlo tutto (e tra 5 anni, rimarrebbe ancora abbastanza in uso per consentire una buona dose di manutenzione).

Realisticamente, è improbabile che accada - mentre ci sono sicuramente opinioni diverse su Oracle, non riesco a immaginare che facciano qualcosa di così terribile che tutti i principali attori che hanno enormi investimenti in Java lo lascerebbero cadere molto rapidamente. In tutta onestà, probabilmente ci vorrebbero quasi 5 anni di decisioni ovviamente sbagliate prima che IBM (per esempio) consideri persino di lavorare per usare qualcos'altro al posto di Java. Hanno un investimento abbastanza grande in Java che è improbabile che lo lascino cadere fino a quando o a meno che non credano di non avere praticamente alternative.


+1 per la connessione a COBOL. Alcuni sostengono che a causa di Java che agisce come il moderno COBOL, è corretto per Oracle averlo.
Macneil,

17

Direi che è in declino. Non è andato, ma ha superato il suo picco.


13
Fonte? (15 caratteri)
TheLQ

13
@Kop - "questo è uno stackexchange di siti Web per opinioni soggettive" . Questo è quello di fraintendere lo scopo di questo sito. Le opinioni soggettive sono OK, ma i fatti oggettivi sono chiaramente più preziosi. Ed è legittimo contestare qualsiasi affermazione soggettiva per ottenere possibili prove oggettive a sostegno.
Stephen C,

12
@Lorenzo Nell'ultimo decennio Java è stato il più diffuso e probabilmente il linguaggio di programmazione più utilizzato nell'industria e nell'istruzione. Concordo con Fishtoaster che ora è in declino, in gran parte a causa della mancanza di direzione e progressi su Java 7 e del rifiuto da parte dei programmatori di soluzioni JavaEE pesanti a favore di alternative più leggere in altre lingue.
Dan Dyer,

17
Non so se sono d'accordo con questa risposta concisa, ma i 15 voti dimostrano che devo smettere di frequentare questo zoo. Questa risposta non ha ragionamento e non cita nulla. Qual è la "fonte"? probabilmente significava. Non mi dispiace opinioni, ma "Java morto!" o "Java vivo e vegeto!" sono entrambi completamente non votabili per me. +0.
Dan Rosenstark,

5
-1: nessun dato o argomento in questa risposta. soggettivo! = affermazioni casuali non supportate
mikera

17

Due risposte:

1) Android

2) Blackberry

Seriamente, sul desktop, potrebbe essere in declino, ma alimenta i due concorrenti su iPhone.

Inoltre, l'anno scorso, ho aiutato un sacco di persone con i compiti di Java a scuola. Il punto è che java è ancora insegnato nei college.

Modificare:

A partire da ottobre 2011, BlackBerry sembra essere in declino. Android sta ancora andando forte.


Che cosa? Stanno ancora andando? Sono agli anni 2000 ciò che Palm era agli anni '90 ... :)
Adolf aglio

@adolf garlic - Quindi, non sono ancora venduti a HP;) Ecco perché ci sono due risposte, comunque. Android è per il 2010 ciò che iPhone è per gli anni '90. Android non è ancora in fase di dissolvenza.
Moshe,

8
Non è mai stato così rilevante sul desktop. La maggior parte dello sviluppo di Java è nel back-end, mercato OLTP.
luis.espinal,

@ Luis.espinal - Stavo raggruppando server, desktop in un gruppo, mobile nell'altro.
Moshe,


14

Stava perdendo importanza nel mercato mobile, ma con Android l'ha riguadagnato di nuovo.


1
L'effetto Android potrebbe essere di breve durata se sl4a viene completato. L'obiettivo finale di sl4a è consentire alle persone di scrivere app per Android in qualsiasi linguaggio di programmazione. Inoltre, toolkit multipiattaforma come Appcellerator rendono almeno parzialmente non necessario l'apprendimento di Java per lo sviluppo di Android.
Chinmay Kanchi,

3
Ci vorrà molto tempo prima che sl4a decida per lo sviluppo generale a causa di problemi di prestazioni. Non sono ancora venduto su toolkit multipiattaforma per applicazioni di alta qualità. Per qualcosa di rapido / risorse limitate, certo
Casebash

quali sono le prestazioni? La versione Python è CPython nativa con tutte le API chiamate tramite un ponte Dalvik (IIRC). Quindi dovrebbe essere quasi altrettanto performante del codice "nativo" di Dalvik, in assenza di un JIT. Android 2.2 ha un JIT, ma a quel punto, non c'è motivo di non usare più Jython, poiché sarebbe più veloce di CPython e non molto più lento di Java.
Chinmay Kanchi,

+1 per ispirare il commento di @Chinmay Kanchi. Non sapevo che sl4a fosse così interessante.
Dan Rosenstark,

13

Java sarà rilevante per il prossimo futuro, anche se si definisce rilevante per includere solo il nuovo codice, non la modalità di manutenzione legacy. Sì, il linguaggio fa schifo e tratta i suoi programmatori come bambini cattivi invece di adulti consenzienti e non ha avuto un restyling dall'età della pietra. D'altro canto:

  1. Java ha alcune librerie fantastiche.

  2. La JVM è una piattaforma fantastica.

  3. Non è necessario programmare in Java per utilizzare queste librerie, ora che c'è stata una proliferazione di linguaggi JVM.

IMHO il modo in cui le cose si evolveranno è che Java nel mondo JVM diventerà ciò che C è nel mondo compilato nativamente. Le persone useranno Scala, Jython, Groovy, ecc. Nella codifica quotidiana, ma continueranno a chiamare il codice Java vecchio e croccante da queste lingue per l'eternità. Alcuni codici critici per le prestazioni potrebbero essere ancora scritti in Java, perché è probabilmente il linguaggio JVM di livello più basso ed efficiente. Le vecchie librerie avranno bisogno di nuove funzionalità aggiunte. Pertanto, Java rimarrà altamente pertinente anche se non viene utilizzato quotidianamente dal programmatore medio.


mi fa sentire vecchio, quando dici che Java diventerà una lingua madre. sospiro
Dheeraj Bhaskar,

7

Credo di si. Prevedo che la sua popolarità aumenterà nei prossimi due anni, con recenti miglioramenti del plug-in e dei miglioramenti sintattici in arrivo in Java 7. E ha il vantaggio della vasta gamma di buone librerie open-source (rispetto a .NET) che potrebbe facilmente mantenerlo in vita per altri 10 anni.


4
Java 7 ha respinto molte delle migliori idee
Casebash,

1
@Casebash: quali erano quelli?
Chris,

5

Attualmente Qt sta uccidendo Java in applicazioni desktop. Ci sono molti riscritti da Java a Qt. Attualmente sto lavorando su uno di essi. Dal giorno in cui ho iniziato a programmare la mia carriera, c'è sempre la voce che Something avrebbe ucciso C ++. Per es. Visual Basic, Java, C #, ma in realtà C ++ continua a funzionare. Ha molti svantaggi ma continua a funzionare. Tutti gli altri concorrenti hanno avuto una morte triste .........


4

Non penso che perderà rilevanza. Java 7 è appena uscito con molte funzioni interessanti che aiuteranno gli sviluppatori a creare facilmente un ottimo software.

Anche Java viene utilizzato per creare applicazioni Blackberry; uno dei principali telefoni cellulari aziendali. È sicuro dire che non andrà da nessuna parte presto.


E alimenta Android, un telefono cellulare che sta guadagnando slancio e popolarità ovunque
TheLQ

Sono andato a Java One quest'anno. Alcune delle cose interessanti in arrivo: il supporto dell'utilizzo automatico di più core, lo scaricamento automatico sulla GPU e lo scaricamento automatico sull'unità vettoriale della CPU renderà Java una piattaforma molto efficiente. E tutti i programmatori Java che scrivono il "nuovo" idiomatico java lo riceveranno gratuitamente. Ci sono alcuni ragazzi scarsamente intelligenti a cui Oracle ha dato dei soldi per migliorare Java. Il progetto Lambda fornirà chiusure e lo farà in modo che funzioni E sia totalmente compatibile con le versioni precedenti senza alcun dolore. Rock di conversione SAM. Le cose buone stanno arrivando.
Tim Williscroft,

4

Sono uno sviluppatore .NET primario, anche se lavoro con altre lingue (incluso Java), se necessario, per ottenere il compito a portata di mano. Pertanto, in base alla mia esperienza di lavoro con la lingua, non credo che sparirà presto, ecco perché:

  1. Base di installazione corrente - Ci sono abbastanza programmi là fuori che avranno bisogno di supporto a lungo termine che c'è una ragione per i nuovi sviluppatori di imparare la lingua.
  2. Utilizzo in ambito accademico - La maggior parte dei college e delle università utilizza una delle loro lingue introduttive per insegnare OOP e altri concetti fondamentali, ciò significa che continueranno a esserci nuovi sviluppatori che si laureano e entrano nella forza lavoro che avranno familiarità con la lingua quando iniziare.
  3. È la natura multipiattaforma: ovvia, ma il fatto che sia multipiattaforma è un grosso problema, tanto più che gli smartphone a supporto di Java per i nuovi dispositivi. La prospettiva di dover mantenere solo una base di codice, ma essere in grado di distribuire (cioè vendere) app per più piattaforme sarà un po 'un affare. Riesci a immaginare se iOS e Droid supportano entrambe le app scritte in Java?
  4. Nessun concorrente forte - A questo punto nel tempo non riesco a nominare una lingua che considero un forte concorrente di Java. Sicuramente C # sta iniziando a presentarsi su più piattaforme grazie a Mono, ma non è esattamente lo stesso di avere la stessa piattaforma multipiattaforma di Java. Concesso che ci sono un certo numero di lingue che fanno ciò che fa Java (e in alcuni casi meglio) tendono ad essere adattate a ciò che stanno facendo e per alcuni grandi progetti non ha senso avere un sacco di lingue da mantenere se si può accettare qualsiasi hit delle prestazioni che Java potrebbe avere.

4

Java la lingua potrebbe essere in lento declino, ma Java la piattaforma (JVM + JDK) è stata sicuramente in forte espansione negli ultimi due anni (Scala, Clojure e molte altre lingue; framework Android). È facilmente la migliore (solo fattibile?) Piattaforma multi-architettura, multi-OS, multi-lingua là fuori, scalabile da dispositivi mobili integrati a mainframe enterprise, e attualmente non ci sono concorrenti simili AFAIK. Quindi mi aspetto che la piattaforma Java sia rilevante tra 5 anni e anche tra 15 anni. Ciò rende Java il linguaggio rilevante a lungo termine, anche se la sua popolarità potrebbe essere passata all'apice.


4

TIOBE valuta il linguaggio utilizzato ... http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Sulla base delle loro statistiche Java è all'avanguardia e probabilmente lo farà per molto tempo a venire - numero 1 dal 2005. Ho usato Java durante la mia carriera e ovunque abbia mai lavorato con applicazioni / sviluppatori Java - anche in luoghi che si consideravano Microsoft Dev Shops. Java è un linguaggio così semplice da imparare quando devi sviluppare soluzioni su un server Mac o Linux.

Inoltre, il buon ole C / C ++ continua a resistere a # 2 e # 3 - mentre C # - il linguaggio che tutti pensano sia il più popolare (marketing MS al suo meglio) - non è nemmeno vicino! Uso C # ora, ma ci vorranno anni per eguagliare la quantità di codice che ho scritto in Java e Delphi.

Quindi non abbiate paura di imparare o usare Java - ci sono sempre lavori pubblicati per loro. Quindi, sì, Java sarà molto rilevante per molto tempo a venire.


Tiobe rate ... la quantità di persone su Internet che parlano di una lingua nel modo in cui tiobe cerca. blog.timbunce.org/2008/04/12/…
Sean McMillan,

3

È uno dei nomi più importanti nella programmazione Enterprise (J2EE). Sono abbastanza sicuro che non lo vedremo scendere per i prossimi due anni.


3

Non sono sicuro di JAVA. Ma sicuramente la JVM rimarrà rilevante supportando molte altre lingue.


3

Dipende da come si evolverà la lingua.

Allo stato attuale Java non è molto attraente come linguaggio. È nato per supportare un (e solo uno) paradigma: OOP. Si posiziona a metà strada tra i linguaggi che consentono astrazioni di livello superiore (come C ++ e le sue funzionalità di metaprogrammazione) e linguaggi di scripting con capacità di riflessione (come i comandi "exec" e "dir" di Python) ma in qualche modo non riesce a trovare il suo posto reale. Fondamentalmente sta diventando obsoleto come "linguaggio". Non per il fatto che è uno standard di fatto sui dispositivi mobili, penso che ormai sarebbe morto.

Per quanto riguarda il fatto che sia un buon linguaggio di insegnamento per OOP, ho i miei dubbi su ciò che posso vedere: tutti i programmatori nati in Java generano schemi di visitatori e osservatori ovunque, ma non è che ho una grande esperienza con i programmatori Java.

C'è ancora molto codice legacy e sui dispositivi mobili è uno standard. Detto questo, non avrei mai scelto Java per un desktop o un'applicazione web. Non vi è alcun motivo, a parte quelli aziendali (la maggior parte dei gestori annuisce se si dice "Java" e questo è, suppongo, il motivo è uno standard sui dispositivi mobili).


Qualcuno ricorda quando qualcuno di SUN ha detto che "Java non ha bisogno" di enumerazioni? C # / VB.NET ha degli enum, e successivamente aggiunto a Java
umlcat il

1
è ampiamente usato per le app su larga scala, sicuramente ai "programmatori", agli "scripter" e ai "ninja ROR" non piace, ma è perché è un vero linguaggio di programmazione ed è usato per creare app che fanno molto di più di un semplice CRUD le applicazioni lo fanno, se hai molte cose intense in corso sul lato server di un'app Java è di solito la scelta più interessante prima che tu debba andare ad usare C ++ o un altro linguaggio di livello inferiore
programmx10

3

IMHO, Java rimarrà molto rilevante e crescerà in uso, anche se non si sta realmente evolvendo nei suoi costrutti o nei suoi poteri.

Ecco il mio ragionamento: - C'è un sacco di codice là fuori e la manutenzione richiede più persone rispetto alla scrittura di nuovo codice.

  • Il campo "Le lingue delle macchine virtuali sono troppo lente" sta lentamente perdendo (soprattutto quando Java è riuscito a diventare algo trading).

  • Le principali aziende lo usano ancora in tutti i settori, incluso Oracle.

  • La piattaforma Android sta crescendo più velocemente di iOS, senza altri concorrenti in vista, e questo porta più persone nella lingua.

  • È più semplice da usare per le persone rispetto ai linguaggi funzionali. È facile per i puristi e gli accademici delle lingue apprezzare i linguaggi funzionali e le loro capacità, ma la maggior parte dei neofiti senza laurea in CS non apprezza appieno il potere della Lambda. Quindi non penso che queste lingue decollerebbero.

  • È completamente gratuito (a differenza di .NET che è ancora più vicino all'ecosistema di Windows nonostante le alternative).


2

Java non perderà completamente la sua rilevanza per molti altri anni, ma è certamente in declino. Se gli sviluppi recenti influiranno su questo o se Oracle può cambiare, resta da vedere. Ma penso che un giorno potrei essere come COBOL, nessun nuovo progetto, ma neanche morire del tutto.


2

COBOL, Fortran e C sono ancora rilevanti. Qual è la possibilità che Java scompaia tra cinque anni? Concepibilmente, non ci sarà molto nuovo sviluppo Java tra cinque anni, ma scommetto anche contro quello, dal momento che ci sono molte persone che usano Java e i negozi sono piuttosto lenti a cambiare le loro lingue preferite.


1

Sospetto che alla fine tutte le lingue attraversino una fase in cui gli esperti diranno "[La lingua] è la COBOL del [inserire decennio qui]".

Java è diventato uno strumento standard, esclusivamente o uno dei principali strumenti, in una serie di aree di sviluppo software. La sua VM è popolare come piattaforma su cui costruire nuove lingue. Sarà troppo a lungo solo a causa della sua enorme inerzia, anche se le nuove lingue migliori diventeranno popolari.


Ma Java è diventato COBOL, mainframe, server che parla
umlcat il

1

Ci sono state alcune tendenze nel mondo Java - in particolare l'adozione assolutamente geniale di JRuby e Rails o Groovy e Grails - che indicano che Java ha ancora molta vita. Poi c'è la situazione Android, che è anche a favore di Java. Recentemente come Snow Leopard su Mac, alcune modifiche - che ora supportano Midi senza driver esterni - lo fanno in modo che stia guadagnando anche possibilità sul desktop. E le app di Swing sembrano finalmente native al 99% (o almeno ci sono un sacco di casi che lo credono ora: 10 anni fa non ce n'erano).

Java ha vissuto un momento straordinario negli anni '90, in cui sembrava fosse la soluzione per tutto. Ora è chiaro che nulla è la soluzione per tutto. .Net prende a calci in culo, Ruby, Python e PHP (con soluzioni CMS sciocche e interi framework con cui le persone si sposano per sempre!), E Java (con Groovy JRuby JPython qualunque), e molto altro ancora. La risposta è:

Aspettati un universo pluralistico

Java continuerà a svolgere un ruolo importante in questo universo? Se intendi "lingue che girano su JVM" la risposta è sicuramente. Se la risposta è solo Java (lingua, JVM, ecc.), Allora la risposta è "forse non così importante". Ma dai, anche Cobol è ancora in agguato.


1

Penso che il mondo accademico abbia ancora bisogno del valore dell'open source in JAVA. Ci sono così tante potenti librerie (focalizzate su scopi accademici) sviluppate su JAVA.

Concordo sul fatto che JAVA rimarrà rilevante, ma per segmenti più piccoli.


1

Google scrive molto in Java e Google è la più grande azienda del web. Penso che il web sia il futuro - applicazione web, cloud computing - e quindi penso che Java sia ancora rilevante in futuro.

E c'è Android, che è il futuro degli smartphone secondo me. E alcune persone dicono che gli smartphone sono il futuro del computer - cosa non è la mia opinione :) - ma che avrebbe anche dato a Java un grande futuro. Quindi vai Java: D


In secondo luogo, Google sta spingendo molti dei suoi strumenti e librerie interne (ad esempio, GWT, Guava, ecc.) Nella comunità, quindi ha un impatto esterno oltre al solo numero X di ingegneri che lo utilizzano.
Uri,

0

Se è legato ad alcuni settori (ad es. Bancario, piattaforme mobili, ecc.) È come chiedere "Internet Explorer sarà ancora rilevante tra 5 anni ..." 5 anni fa. Oggi ci sono molte aziende che hanno siti Web interni specifici di IE che non possono essere riscritti da zero. Quindi non è "rilevante" ma "inevitabile".

Per rispondere alla tua domanda: no, non è rilevante come forza trainante per l'innovazione; ma sì, è rilevante perché molti settori richiederanno il mantenimento delle applicazioni Java per molti anni a venire.


0

Ecco un articolo di ReadWriteEnterprise sul declino di Java:

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

Ciò a cui stiamo assistendo non è la morte di Java, ma la sua trasformazione. Si sta passando dall'essere solo una piattaforma di uso generale che ha dominato l'azienda ad essere il fegato di molte tecnologie disparate per varie applicazioni speciali.

Risolve anche in che modo strumenti specifici offrono alternative alla tecnologia Java, ma non necessariamente la sostituiscono:

Sebbene i database NoSQL offrano un'alternativa ai database relazionali, ciò non significa che i database relazionali andranno via. Allo stesso modo, Node.js offre un'alternativa specializzata ad Apache, ma non ucciderà Apache.


Un articolo dallo stesso sito sulle tendenze del lavoro mostra che Java ha ancora più annunci di lavoro rispetto a qualsiasi altra lingua: readwriteweb.com/enterprise/2011/05/…
Britt Wescott,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.