Domanda

Sono uno sviluppatore Java e voglio sapere, qual è il vantaggio principale di imparare una lingua come Scala o Groovy?

È stato utile?

Soluzione

È possibile ottenere lo stesso beneficio da imparare un'altra lingua JVM come imparare qualsiasi lingua nuova. Aumenta la comprensione della programmazione in generale, e più importante, è aggiunge un altro strumento per la vostra cassetta degli attrezzi.

Così la prossima volta che si deve risolvere un problema, si può raggiungere per una pistola sparachiodi, invece di un martello.

Per essere più precisi, Groovy è un buon linguaggio per beffardo Codice di fretta, e Scala, mentre io l'ho mai usato, è supponiamo di grande per la scrittura di applicazioni simultanee grazie alla sua approccio funzionale. Come altri hanno già detto, le lingue JVM possono interagire con il codice Java. Che può essere utile per aggiungere su sistemi legacy o per beffardo fino pezzi di un'applicazione in fretta.

Altri suggerimenti

Alcuni buoni motivi che vengono in mente:

  • Hanno caratteristiche che Java non ha e che si possono trovare utili in determinate circostanze.
  • Si utilizzano diversi paradigmi di programmazione, diverso modo di pensare.
  • imparare altre lingue apre la mente.
  • L'apprendimento delle lingue ti rende consapevoli dei loro rispettivi punti di forza e di debolezza.
  • Stanno diventando sempre più attenzione e un migliore supporto JVM (con Java 7).

In realtà, forse porsi la domanda inversa:

  • Perché non imparare una lingua JVM addiitional?

Le altre risposte qui sono molto buoni punti, ma c'è una cosa che mi manca.
Un buon coder raramente si identifica come un 'sviluppatore Java', un 'Python sviluppatore' o qualsiasi 'sviluppatore'. Imparare un'altra lingua (sia esso una lingua JVM o no) vi farà capire c'è molto di più in tutto il mondo per imparare.

Se si è soddisfatti con una sola lingua, di solito significa che siete ignari dei problemi che ha, e che ci sono molte attività che sono più adatti per le altre lingue.

Questo è il motivo per cui i Pragmatic Programmers incoraggiano ogni programmatore di imparare una lingua di un anno.

Le lingue che hai citato pratica un diverso paradigma di programmazione che potrebbero aiutare a essere più produttivi. Essi sono anche più divertente lavorare con.

Linguaggi come Scala e Clojure eseguire sulla JVM e presentano grandi prestazioni in sistemi multi-core senza imporre requisiti di sincronizzazione.

E, naturalmente, si è ancora in grado di utilizzare la ricchezza piena di librerie che sono disponibili per Java.

Perché allora saprete una nuova lingua, il che significa un insieme di abilità più ampia e un altro modo di guardare al problema. Ma perché Groovy e Scala corrono sulla JVM e sai Java, è possibile integrare le librerie e codici esistenti se si desidera o bisogno.

http://groovy.codehaus.org/ :

"Groovy è come una versione super di Java. E 'possibile utilizzare le funzionalità enterprise di Java, ma ha anche funzioni per la produttività cool come chiusure, costruttori e tipizzazione dinamica. Se sei uno sviluppatore, tester o uno script guru, devi amare Groovy. "

Quindi, in molti casi ha senso usare Groovy su Java; Per esempio in unit test Java!

vantaggi linguaggio di scripting all'interno JVM. l'interazione trasparente con codice Java compilato.

Lo so con Groovy, è possibile caricare gli script (da file) in fase di runtime dall'applicazione Java. Questo mi permette di personalizzare il comportamento delle azioni di applicazione presso un cliente senza richiedere me per ricompilare il codice. È piuttosto bella.

Spiacenti più domande poi risponde ..

  • Cosa vorresti trascorrere il vostro tempo su se non si sta imparando una nuova lingua?
  • Perché te stesso limitando alle lingue JVM?
  • sarebbe di maggior beneficio per imparare Test Driven Development?
  • Che dire di imparare i brevetti di design standard?
  • Quali sono cerca di raggiungere con il gli investimenti di tempo?

L'apprendimento di una lingua è sempre bene, se non li si impara molto bene e li usa non si ottiene un grande vantaggio, come è necessario essere in grado di “ pensare in una lingua ”in modo da ampliare la vostra mente.

Utilizzando più di una lingua in una società porta ad un sacco di costi aggiuntivi a lungo termine così si può guadagnare di più per imparare a programmare meglio nella lingua principale, solo tu puoi decidere.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top