{"product_id":"de-kotlin-y-java-a-gabriel-anhaia-9798195589264","title":"De Kotlin y Java a TypeScript: Un Puente para Desarrolladores JVM","description":"\u003cb\u003eUn desarrollador JVM en activo llega a TypeScript con costumbres bajo el brazo - anotaciones de varianza, jerarquías de clases sealed, memoria muscular de hilos y executors, autowiring de Spring - y la mayoría se traducen mal o tienen un casi-equivalente que significa algo sutilmente distinto. Este es el libro del recableado mental.\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003ci\u003eDe Kotlin y Java a TypeScript\u003c\/i\u003e no es otro tutorial de TypeScript que arranca con let x: number. Asume que ya entiendes genéricos, sealed classes, corrutinas y Spring\/Ktor. Lo que te entrega es el mapa: cada concepto JVM que ya conoces, mapeado a su contraparte en TypeScript, con las brechas nombradas de forma explícita en lugar de pasarlas por alto. \u003cp\u003e\u003c\/p\u003eVeintisiete capítulos. Anclado a \u003cb\u003eTypeScript 6.0\u003c\/b\u003e y \u003cb\u003eKotlin 2.1.x\u003c\/b\u003e. Cada ejemplo es ejecutable en el repositorio público que acompaña el libro en github.com\/gabrielanhaia\/the-typescript-library-examples. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eQué encontrarás dentro: \u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e- \u003cb\u003eTipificación estructural frente a nominal\u003c\/b\u003e -- por qué UserId y OrderId son el mismo tipo para TS, y cómo los tipos marcados (branded) lo arreglan.\u003cbr\u003e- \u003cb\u003eGenéricos y varianza\u003c\/b\u003e -- declaración out\/in en Kotlin frente a comodines de Java (? extends\/? super) frente a la varianza de TypeScript, incluyendo strictFunctionTypes.\u003cbr\u003e- \u003cb\u003eSeguridad ante null\u003c\/b\u003e -- el ? de Kotlin frente a strictNullChecks, los equivalentes en TS del operador de llamada segura, y qué cambia exactOptionalPropertyTypes.\u003cbr\u003e- \u003cb\u003eData classes\u003c\/b\u003e -- mapeadas a interfaces de TS con factorías; qué pierdes (copy() gratis, equals) y cómo recuperarlo.\u003cbr\u003e- \u003cb\u003eSealed classes frente a uniones discriminadas\u003c\/b\u003e -- lo más cerca que TS llega de los ADT, con coincidencia exhaustiva mediante never.\u003cbr\u003e- \u003cb\u003eConcurrencia\u003c\/b\u003e -- hilos y executors frente al event loop, corrutinas de Kotlin frente a async\/await, hasta dónde se transfiere la concurrencia estructurada y patrones de cancelación.\u003cbr\u003e- \u003cb\u003eDecoradores frente a anotaciones\u003c\/b\u003e -- qué te dan los decoradores stage 3 y qué no (y por qué el autowiring estilo Spring no es idiomático en TS).\u003cbr\u003e- \u003cb\u003eRecords frente a clases TS\u003c\/b\u003e -- la historia de readonly por defecto y los patrones de igualdad por valor.\u003cbr\u003e- \u003cb\u003eErrores como valores frente a excepciones verificadas\u003c\/b\u003e -- el patrón Result, cuándo lanzar y cómo modelar fallos recuperables.\u003cbr\u003e- \u003cb\u003eUn porte trabajado\u003c\/b\u003e -- un servicio Kotlin\/Spring reescrito como servicio Node\/Hono de extremo a extremo, con las decisiones arquitectónicas hechas explícitas.\u003cbr\u003e- \u003cb\u003eAntipatrones de escribir Java-en-TS\u003c\/b\u003e -- las construcciones que sobreviven a la traducción pero producen TypeScript no idiomático y difícil de mantener.\u003cbr\u003e- \u003cb\u003eCuándo quedarse en la JVM\u003c\/b\u003e -- un balance honesto sobre dónde la JVM sigue siendo la herramienta correcta. \u003cp\u003e\u003c\/p\u003eCada ejemplo es \u003cb\u003eejecutable y verificado en CI\u003c\/b\u003e. El repositorio que acompaña el libro está anclado a TypeScript 6.0 y Kotlin 2.1.x con implementaciones lado a lado en Kotlin y TypeScript. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eA quién va dirigido este libro: \u003c\/b\u003e a desarrolladores JVM en activo (Kotlin como lenguaje principal, Java conocido) que cruzan a TypeScript. Un desarrollador JVM con dominio de Kotlin puede sustituir con este libro a los libros 1 y 2 de la colección. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eThe TypeScript Library\u003c\/b\u003e (colección de cinco libros): \u003cbr\u003e- \u003ci\u003eTypeScript Esencial\u003c\/i\u003e (Libro 1)\u003cbr\u003e- \u003ci\u003eEl sistema de tipos de TypeScript: De los genéricos a tipos al nivel de un DSL\u003c\/i\u003e (Libro 2)\u003cbr\u003e- \u003cb\u003eEste libro\u003c\/b\u003e -- \u003ci\u003eDe Kotlin y Java a TypeScript: Un Puente para Desarrolladores JVM\u003c\/i\u003e (Libro 3)\u003cbr\u003e- \u003ci\u003eDe PHP a TypeScript: Un Puente para Desarrolladores de PHP 8+ Moderno\u003c\/i\u003e (Libro 4)\u003cbr\u003e- \u003ci\u003eTypeScript en producción: Herramientas, build y autoría de librerías entre runtimes\u003c\/i\u003e (Libro 5) \u003cp\u003e\u003c\/p\u003ePágina del proyecto: xgabriel.com\/the-typescript-library\/\u003cbr\u003e\u003cbr\u003e\u003cb\u003eAuthor:\u003c\/b\u003e Gabriel Anhaia\u003cbr\u003e\u003cb\u003eISBN-13:\u003c\/b\u003e 9798195589264\u003cbr\u003e\u003cb\u003ePublisher:\u003c\/b\u003e Independently Published\u003cbr\u003e\u003cb\u003eLanguage:\u003c\/b\u003e English\u003cbr\u003e\u003cb\u003ePublished:\u003c\/b\u003e 05\/04\/2026\u003cbr\u003e\u003cb\u003ePages:\u003c\/b\u003e 408\u003cbr\u003e\u003cb\u003eFormat:\u003c\/b\u003e Paperback\u003cbr\u003e\u003cb\u003eWeight:\u003c\/b\u003e 1.20lbs\u003cbr\u003e\u003cb\u003eSize:\u003c\/b\u003e 9.00h x 6.00w x 0.84d","brand":"Gabriel Anhaia","offers":[{"title":"Paperback","offer_id":48801474543871,"sku":"9798195589264","price":29.3,"currency_code":"USD","in_stock":true}],"url":"https:\/\/www.whiterainbookhouse.com\/products\/de-kotlin-y-java-a-gabriel-anhaia-9798195589264","provider":"WR Book House","version":"1.0","type":"link"}