Java avrà la stessa importanza che aveva in passato, o sarà meno rilevante di oggi?
Java avrà la stessa importanza che aveva in passato, o sarà meno rilevante di oggi?
Risposte:
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!
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
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:
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.
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.
Direi che è in declino. Non è andato, ma ha superato il suo picco.
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.
Stava perdendo importanza nel mercato mobile, ma con Android l'ha riguadagnato di nuovo.
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:
Java ha alcune librerie fantastiche.
La JVM è una piattaforma fantastica.
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.
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.
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 .........
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.
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é:
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.
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.
È uno dei nomi più importanti nella programmazione Enterprise (J2EE). Sono abbastanza sicuro che non lo vedremo scendere per i prossimi due anni.
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).
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).
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.
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.
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.
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.
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
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.
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.