¿Por qué debería cambiar a Kotlin desde Java para el desarrollo de Android?

Actualmente, mi empresa, Pandora Media Inc., está trabajando para mudarse a Kotlin y puedo decirle que, aunque estamos en las primeras etapas del cambio al desarrollo de Kotlin, nos ha brindado a todos una mayor experiencia de desarrollo. Lo mejor de Kotlin: realmente fue hecho con Android en mente. ¿Cuáles son las ventajas de Kotlin?

  1. La verbosidad desaparece con la introducción de clases de datos (esto literalmente convierte una clase con 100 líneas en 2 líneas). Hay más allá de eso, pero la verbosidad realmente desaparece.
  2. Soporte de primera clase en el mundo de Android. Sus clases de Kotlin se compilan en Java y usted puede, en Android 3.0+, realmente puede ver el código Java compilado .
  3. Programación funcional sintaxis y azúcar sintáctica. Realmente, Kotlin toma el paradigma de programación funcional y te presenta a un mundo completamente nuevo. Todavía tengo mucho que aprender, pero puedo decirte que la mejor manera de hacerlo es saltar al fondo, buscar guías y leer sobre esto en las publicaciones de Medium.
  4. Cuenta con el respaldo oficial del equipo de desarrollo de Google . Sus futuros SDK y bibliotecas tendrán una gran integración de Kotlin .
  5. Kotlin es realmente “las mejores prácticas de Java” puestas en un lenguaje . Por ejemplo, todas las clases son finales a menos que se indique lo contrario … etc … Hay mucho más que cubrir, y no puedo hacerlo en una publicación de quora. Definitivamente deberías consultar las guías en línea. También hay libros en línea.
  6. Lo dicen en serio cuando dicen que Kotlin se integra a la perfección con Android. Kotlin puede usar todas las definiciones de Java y Java puede usar todas las definiciones y funciones de Kotlin.

En este punto, me consideraría un novato de Kotlin y tengo mucho más que aprender, pero Kotlin realmente ha revitalizado la vida de desarrollo para mí y para muchos de los desarrolladores con los que estoy trabajando.

Sin embargo, hay posibles inconvenientes para recoger Kotlin.

  1. Su tiempo de compilación realmente puede aumentar (lo que significa que las compilaciones son más lentas ).
    1. Esto sólo es parcialmente cierto. Si sabe lo que está haciendo, puede hacer que sus velocidades de compilación coincidan con las velocidades de compilación de Java o que se acerquen bastante.
  2. Falta actual de apoyo de las bibliotecas existentes.
    1. En unos 6 meses a 1 año a partir de ahora, esto no será un problema, ya que Kotlin es la tendencia más popular en Android y la gente está literalmente trabajando para apoyarlo.
  3. Si no tiene cuidado, el código Java compilado puede generar redundancia e ineficiencias.
    1. Realmente debe utilizar todas sus herramientas, como ver el código Java compilado para garantizar que no se introduzcan ineficiencias.
    2. Lea las GUÍAS. Por ejemplo, aprenda sobre delegados y perezosos. ¡Son realmente ordenados!

La verdad es que habrá una curva de aprendizaje, pero puedo confirmarlo: cambiar a Kotlin vale la pena y será a largo plazo. Kotlin realmente ha aprendido mucho de los errores de Java y tiene mucho cuidado y consideración al abordar esos problemas.

Desea sumergirse y comenzar a aprender, comience con Kotlin Koans: Kotlin Koans – Lenguaje de programación Kotlin

Respuesta de: ¿Merece la pena mudarme a Kotlin?

Kotlin ofrece la multitud de beneficios para usted como desarrollador. Algunos de los beneficios generalistas que ofrece Kotlin incluyen:

  • Completa compatibilidad con Java:

    Java y Kotlin pueden ser interoperados. Kotlin es completamente compatible con todas las herramientas y el marco de Java, lo que facilita la migración de Java a Kotlin. Además, el entorno de desarrollo holístico que Java y Kotlin prometen juntos seguramente puede ampliar el alcance de la programación en un solo proyecto.

  • Conversión automática de Java a Kotlin:

    Jetbrain desarrolló un convertidor completo de Java-Kotlin que se integró en IntelliJ para ahorrar tiempo al desarrollador. Esto ahorra tiempo durante la migración y ahorra la molestia de volver a escribir una gran cantidad de código.

  • Aumenta la productividad:

    Kotlin fue desarrollado para eliminar la verbosidad del lenguaje Java. Esto significa que ya no un codificador tiene que lidiar con una gran cantidad de codificación repetitiva. Con una sintaxis de codificación concisa, intuitiva y compacta, Kotlin ahorra tiempo de codificación y agiliza todo el proceso de implementación.

  • Promete aplicaciones más seguras, confiables y mejores con errores reducidos:

    La base de código de Kotlin es mucho más compacta y clara en comparación con Java. Esto deja menos espacio para el error y el código estable. Además, el compilador de Kotlin detecta errores en tiempo de compilación y no en tiempo de ejecución, lo que hace que la aplicación final sea mucho más estable y confiable.

Por lo tanto, hay suficientes razones para cambiar a Kotlin desde Java para el desarrollo de Android.

Referencia:

Lenguaje de programación Kotlin

Kotlin y Android

¿Qué es Kotlin y el uso del lenguaje Kotlin en el desarrollo de aplicaciones de Android?

Google ha anunciado que Kotlin es el idioma oficial para el desarrollo de Android, por lo que en un futuro próximo reemplazará a Java en el mundo de Android al igual que el objetivo c reemplazado rápidamente en iOS. Entonces, si está en desarrollo de Android, entonces debe cambiar su desarrollo a Kotlin. Para otros desarrollos como el desarrollo web o cualquier cosa, puede continuar en Java que no va a cambiar.

Aquí puede ver por qué debería comenzar a usar Kotlin en el desarrollo de Android: ¿Ha comenzado el desarrollo de Android en Kotlin?

Algunas de las mejores ventajas de Kotlin sobre Java incluyen:

  • Seguridad nula a través de tipos anulables y no anulables, llamadas seguras y lanzamientos seguros
  • Funciones de extensión
  • Clases de datos
  • Inmutabilidad
  • Funciones de orden superior / expresiones lambda
  • Corutinas
  • Escriba alias

En general, Kotlin es más conciso y legible que Java. La mayoría de las bibliotecas actuales están escritas en Java, y lo bueno es que Kotlin es interoperable con Java.

He escrito mi aplicación Bookoid – Descubre, lee libros – Aplicaciones de Android en Google Play en Java y planeo migrarla completamente a Kotlin.

(0..3) .map {it + 1}

vs

Lista sucesores = números.stream (). Map (
i -> i + 1) .collect (Collectors.toList ());

Eso es. Sorprendentemente imbécil en Java. Por supuesto que sabes cuál es Java. Si desea claridad con el código del recopilador, entonces:

list ([0: 3]) como {$ .o + 1} // zoomba list
set ([0: 3]) como {$ .o + 1} // zoomba set

Pero entonces bien. Se trataba de Kotlin vs Java, realmente no puedes tener ambos.

Kotlin parece ser un lenguaje más progresivo y cómodo para el trabajo en equipo debido a su concisión y simplicidad. Puede olvidar todas las dudas y hacer una elección óptima: Kotlin. En este blog, por instante, encontré información útil:
Java vs Kotlin: revisión básica para Android Developmen

Debe cambiar solo si desea más sintaxis de azúcar por ahora. Verifique también cómo funcionará en las versiones de SDK más antiguas a las que desea apuntar. Por experiencia, noté que hay limitaciones incluso en algunas características de Java 8, como las transmisiones.

Google y Oracle tuvieron un caso judicial bastante grande entre ellos sobre Google usando aproximadamente 127 API JAVA en Android sin la licencia adecuada. El caso se dictaminó a favor de Google. Creo que eso podría haber hecho que Google buscara alternativas. Entonces, en un futuro cercano, no me sorprendería si Google decide dejar JAVA como lenguaje para el desarrollo de aplicaciones de Android y pasar completamente a KOTLIN.