Google Jetpack Compose Goes 1.0, JetBrains lanza Compose Multiplatform Alpha

Jetpack Compose, el marco de interfaz de usuario declarativo basado en Kotlin de Google para Android, ahora ha alcanzado la estabilidad en la versión 1.0 , que también trae algunas herramientas nuevas para mejorar la experiencia del desarrollador. Si bien Compose de Google solo es compatible con Android, el fabricante de Kotlin JetBrains anunció su Compose Multiplatform , que tiene como objetivo extender Compose al escritorio y la Web.

Jetpack Compose tiene como objetivo acelerar el desarrollo de la interfaz de usuario para las aplicaciones de Android al permitir que los programadores definan sus interfaces de usuario utilizando un estilo declarativo. En otras palabras, los desarrolladores crean interfaces de usuario combinando elementos componibles que se adaptan a los cambios en el estado de la aplicación. Según Google, Compose permite la creación de interfaces de usuario con una reducción significativa de código. Para facilitar su adopción para los proyectos existentes, es posible integrar Compose progresivamente e incrustarlo dentro 

o viceversa .

Este es un ejemplo de cómo puede colocar un 

Text
widget de redacción simple dentro de una actividad estándar de Android:


class MyActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        // ...

        val greeting = findViewById<ComposeView>(R.id.greeting)
        greeting.setContent {
            MdcTheme { // or AppCompatTheme
                Greeting()
            }
        }
    }
}

@Composable
private fun Greeting() {
    Text(
        text = stringResource(R.string.greeting),
        style = MaterialTheme.typography.h5,
        modifier = Modifier
            .fillMaxWidth()
            .padding(horizontal = dimensionResource(R.dimen.margin_small))
            .wrapContentWidth(Alignment.CenterHorizontally)
    )
}

Con la versión 1.0, Compose está obteniendo algunas herramientas nuevas, incluida Compose Preview. Con el objetivo de simplificar la creación de componentes de la interfaz de usuario, Compose Preview le permite ver sus componibles en diferentes estados, temas, etc., todo al mismo tiempo, sin necesidad de instalar y ejecutar una aplicación de prueba en un dispositivo o emulador. Compose Preview también puede ejecutar una vista previa de un componente en un dispositivo físico de forma aislada, para que pueda probarlo de forma interactiva. Todas estas nuevas funciones están disponibles en Android Studio Arctic Fox .

Como se mencionó, inmediatamente después del anuncio de Google, Jetbrains ha lanzado Compose Multiplatform alpha. Compose Multiplatform incluye Compose para escritorio y Compose para Web y aprovecha Kotlin Multiplatform para admitir varias plataformas diferentes . Compose Desktop utiliza la biblioteca Skia de Google para dibujar widgets de interfaz de usuario en Windows, macOS y Linux. Esto proporciona una experiencia unificada en todos los sistemas operativos compatibles a expensas de la apariencia nativa de cada plataforma, similar al enfoque de Flutter y contrario al de React Native.

Según el equipo de Kotlin, el uso de Compose Multiplatform debería proporcionar una serie de beneficios en comparación con las aplicaciones de Electron, a saber, menor consumo de memoria, tamaño de instalación y rendimiento de representación de la interfaz de usuario.

Con su versión alfa, Compose Multiplatform también recibirá un nuevo complemento de Android Studio , que incluye soporte para mostrar la vista previa de componentes en el IDE, así como una serie de funciones adicionales .

Compose Multiplatform es todavía una versión alfa temprana, por lo que JetBrains solo lo está poniendo a disposición para escribir implementaciones de prueba de concepto y preparándose para la primera versión estable, que debería salir en algún momento de este año.

FUENTE: https://www.infoq.com/news/2021/08/jetpack-compose-1-0/