Ir al contenido principal

Entradas

Lenguajes dependientes de la JVM (3ra parte)

Entre los lenguajes dependientes de la JVM (Java Virtual Machine) más conocidos tenemos a: Kotlin Scala Groovy Clojure Kotlin , un lenguaje orientado a objetos, funcional y predilecto para crear aplicaciones Android. fun main () { val holamundo: String = "Hola, Comunidad City Java" println( "$holamundo" ) } Scala , un lenguaje con paradigmas funcional y orientado a objetos. Donde todo es (realmente) un objeto. @main def holamundo () = println( "Hola, mundo, Comunidad City Java" ) Groovy , un lenguaje dinámico de tipado opcional. Programación funcional, metaprogramación, DSL y scripting. class TestGroovy { def main ( args ){ String holamundo = "Hola mundo, Comunidad City Java" println "$holamundo" } } Clojure , un dialecto directo de Lisp. Con interoperabilidad con Java. De propósito general. ( println "Hola mundo, Comunidad City Java" ) Sin embarg...

Clojure para programadores Java (3)

Clojure no es un lenguaje muy propular, eso es la verdad. Sin embargo, eso no le quita meritos. Clojure es un heredero de Lisp , el cual es un lenguaje de programación de paradigma funcional diseñado para manipular grandes cadenas de texto entre otras cosas y que , según se dice, es ideal para programación de IA. Es obvio que un programador Java se sentirá algo confundido, extrañado y quizá temeroso de hacer uso de "otra forma de pensar" para programar en Clojure. ;; El clásico Hola, mundo (println "Hola, mundo en Clojure" ) Y es que hasta el clásico programa "Hola mundo" es visto como un raro pictograma chino. ;; 10 (+ 1 2 3 4 ) ;; 120 (* 1 4 5 6 ) ;; 12 (- 45 33 ) Las operaciones aritméticas son sencillas si le hallan el modo. ;; Definimos la función ( defn esmayor10? [ num ] ( if (> num 10 ) "Si" "No" ) ) ;; Pruebas de la función (println "300 es mayor a 10? " ( esmayor10? 300 )...

Javalin: Framework Java/Kotlin para crear aplicaciones web ligeras

Javalin es un framework ligeron similar a otros como Spring Boot, Quarkus, Helidon y Micronaut. Enlaces: http://alquimistadecodigo.blogspot.com/2023/09/creando-un-proyecto-con-javalin.html https://javalin.io/ http://sparkjava.com/ http://actframework.org/ https://doc.networknt.com/getting-started/light-rest-4j/ http://www.ninjaframework.org/ https://www.playframework.com/ https://resteasy.github.io/ https://restlet.com/open-source/ http://eventuate.io/ https://axoniq.io/ https://ktor.io/ https://vertx.io https://helidon.io/ https://es.quarkus.io/ https://micronaut.io/

Introducción a Spring Batch, con Gerardo Lucas - Meetup Presencial CDMX

En esta ocasión, Gerardo Lucas nos dará una Introducción a Spring Batch, en la que nos hablará de su experiencia haciendo batch processing, en qué escenarios lo podemos usar, qué alternativas hay, además de mostrarnos algunos conceptos alrededor de Spring Boot. Gerardo es Software Engineer en Wizeline, ha dado charlas dentro de su empresa y también en algunos otros eventos de tecnología. Enlaces: https://www.javamexico.org/blogs/benek/introduccion_spring_batch_con_gerardo_lucas_meetup_presencial_cdmx

Java 14 New Features

Un vídeo (algo pasado de años) para quienes aún no conocen las nuevas características de Java. Enlaces:

Lenguajes dependientes de la JVM (2da parte)

  Java sigue siendo el lenguaje más popular y usado en la actualidad. Con el advenimiento de nuevos lenguajes de programación la elección a un verdadero sucesor se vuelve más compleja. Lenguajes como Ceylon , Scala y Kotlin han tenido el honor de ser considerados sus dignos sucesores. Sin embargo, realmente muy pocos dejan de considerar a Java como un lenguaje lejano y olvidable. Dejar proyectos hechos en este lenguaje ¡ni hablar! ¡Java sigue siendo el rey! Lenguajes como Jabaco (imagen de abajo), Jython y JRuby son difíciles de aceptar como lenguajes sucesores o meramente usables en proyectos reales. Otros, como Concurnas prometen mucho, pero Ceylon en su momento hizo lo mismo. Al final, los desarrolladores originales dejaron el proyecto a la fundación Eclipse. Triste historia. public static class Holder < X > { private java . util . ArrayList < X > li = new java . util . ArrayList < X > (); public void add ( X x ) { li . a...

Panel javaMéxico 02 - Spring vs Nuevos Frameworks / Concurrencia