¿Qué tecnologías deberían los desarrolladores de Java comenzar a aprender para mantenerse a la vanguardia del juego en 2016 y 2017?

Comience a aprender y usar AbacusUtil, una biblioteca de programación de Java general. Aquí hay una muestra simple:

// Por cada uno
List res = new ArrayList ();
para (Cuenta: cuentas) {
if (account.getFirstName (). es igual a (“Albert”)) {
res.add (cuenta);
}
}
// Por transmisión en Java 8
Listar res = accounts.stream (). Filter (account -> account.getFirstName (). Equals (“Albert”)). Collect (Collectors.toList ());

// Por las API proporcionadas en AbacusUtil
Listar res = N.filter (cuentas, account -> account.getFirstName (). Equals (“Albert”));

Muchas características de Apache Commons Lang, iBatis, Jackson … están integradas en AbacusUtil con API concisas / consistentes:

  • Las API más utilizadas: IOUtil, Multiset, LongMultiset, BiMap, Multimap, ImmutableList, ImmutableSet, ImmutableMap, Sheet, Triple, Splitter, Joiner, Builder, Difference, Profiler, AsyncExecutor, CodeGenerator, HttpClient, N, …
  • Lista primitiva: BooleanList, CharList, ByteList, ShortList, IntList, LongList, FloatList, DoubleList y ObjectList.
  • Las secuencias, tanto secuenciales como paralelas, son compatibles con JDK7 / Anrdoid y los tipos primitivos con más funciones: Corriente, CharStream, ByteStream, ShortStream, IntStream, LongStream, FloatStream, DoubleStream y más recopiladores.
  • Enlace de datos: analizador, JSONParser, XMLParser, KryoParser …
  • SQL Builder / ORM: SQLExecutor, SQLBuilder, DataSet, JdbcUtil, CSVUtil …
  • ORM para NoSQL: MongoDBExecutor, CassandraExecutor con CQLBuilder, CouchbaseExecutor, HBaseExecutor, DynamoDBExecutor y Neo4jExecutor
  • Programación en Android: SQLiteExecutor, AsyncExecutor, CompletableFuture, EventBus y Util.
  • Más información: RemoteExecutor, Reintentar, Probar, Sincronizado, Envoltorio, NullSkipped, ObjectPool, KeyedObjectPool, SpyMemcached, JRedis, MemcachedLock, Propiedades, Propiedades de usuario, Conjunto de elementos, Conjunto de elementos, Calendario, ArrayHashMap, ArrayHashMap, ArrayHashMap, LinkedArray OpcionalDouble, Base64, EscapeUtil, DigestUtil, Hex, FilenameUtil, JSONUtil, AWSJSONUtil, AddrUtil, URLEncodedUtil, WSSecurityUtil, IEEE754rUtil, Duration, Range, Fraction, Mutable Boolean… MutableDouble, Hash, JCPPP / PC / PTC

Aunque no es famoso ahora, creo que se convertirá en una influyente biblioteca de programación de Java en 2016

(Declaración: Soy el desarrollador de AbacusUtil)

Programación funcional!

Aunque se puede adquirir un poco de sabor con Java 8, Scala, Spark, la esencia misma de las ideas radicalmente diferentes del paradigma de programación reactiva, declarativa, funcional se captura en un lenguaje: Haskell.

Recomiendo este curso en línea: edx haskell – Búsqueda de Google

Esa es una pregunta demasiado amplia para ser contestada confiablemente. ¿En qué área particular de la tecnología? Limita esto más abajo. La forma en que este es el estado es que no está demasiado lejos de preguntar “¿Qué tecnologías deberían evitar los desarrolladores …” Java es un océano grande y ancho y cuando se pregunta dónde capturar el mejor pez, debe decirnos qué tipo de pez y para que propósito

Apache Spark, tecnologías de nube Bigdata