Scala
Scala è un linguaggio di codifica che colma il divario tra la programmazione funzionale e imperativa.
- L'integrazione con Java e JavaScript
- Supportato da una comunità entusiasta di programmatori
- Un linguaggio tipizzato statisticamente
- Offre molti dei vantaggi di entrambe object oriented e programmazione funzionale
- Data la sua maggiore uso nel settore e delle sue complicanze, le aziende assumono gli sviluppatori che sanno seriamente Scala
- Semplice, chiaro, efficiente e una volta capito fondamenti del linguaggio
- Come un linguaggio meno popolare, c'è meno supporto disponibile on-line
- ripida curva di apprendimento per i fondamentali del linguaggio
- Richiede molto tempo per la compilazione
Scala è l'abbreviazione di "scala" e "linguaggio", e questa è una valutazione abbastanza precisa dei punti di forza del linguaggio. Progettato in gran parte per affrontare molti dei problemi riscontrati dagli utenti con Java, Scala è stato progettato per la massima versatilità. Grazie alla sua combinazione di funzioni linguistiche funzionali e imperative, si può scalare per le esigenze degli utenti, anche se ci può essere una ripida curva di apprendimento, soprattutto per gli utenti con poca o nessuna esperienza di programmazione. La programmazione funzionale è stato a lungo utilizzato in ambito accademico, ma non ha guadagnato tanto la trazione nelle comunità di business e di sviluppo app. Nel frattempo, programmazione orientata agli oggetti ha il problema opposto. Scala attinge da entrambi i modelli per creare un sistema che richiede un alto grado di apprendimento logico, ma premia il programmatore che impara i fondamentali. Ha un elevato livello di compatibilità con Java, il che rende la scelta ideale per i programmatori Java cercando più portata o la transizione nelle basi della programmazione funzionale. Come altri linguaggi orientati agli oggetti, ogni valore in Scala è anche un oggetto, che vi dà più controllo sui definizione dei fattori del codice attraverso l'uso di classi e sottoclassi. Scala integra anche un elegante sistema per contribuire a mitigare le complicazioni che provengono da multi-eredità in blocchi più complicato e densi di codice. Come un sistema di tipo statistico, si riduce al minimo il rischio di astrazioni mal definiti gettando una chiave inglese nel programma. Il supporto è disponibile per tutto da classi generiche e superiori e inferiori tipi destinata a notifica varianza e tipi composti. Mentre Scala non può avere il fascino marchio delle lingue più grandi come Python, Java o C #, è trovare un sacco di trazione nella comunità dei programmatori. La capacità di interoperare organicamente con Java e JavaScript offre molto di più la versatilità e fornisce codificatori con il meglio di entrambi i mondi. Se non è possibile trovare il modo di far funzionare qualcosa a Scala, è probabile che probabilmente si può coprire il divario con il codice Java esistente. Molti importanti quadri moderni, come Apache Spark, Akka, e Kafka, sono costruiti fuori della Scala, ed è diventato una componente importante nelle infrastrutture di Tumblr, Twitter, e Coursera. Scala è dotato di una serie di librerie libere che migliorare ulteriormente l'utilità del linguaggio, e nuove aggiunte sono stati fatti tutti i giorni. La sua comunità di sviluppatori è piccolo ma appassionato, e molti sono gli sviluppatori a lungo termine con anni di esperienza nel settore. Non è certamente il miglior linguaggio per un utente basta entrare in programmazione, ma per gli sviluppatori con esperienza in cerca di una più elegante alternativa a Java o un modo per migliorare la loro piena versatilità dello stack, è un apprendimento delle lingue vale la pena. Come la maggior parte dei linguaggi di programmazione moderni, Scala è libero di usare da chiunque.