Migrate to Jetpack Compose from XML in Android

With the addition of Jetpack compose, Android development has moved from an imperative to a declarative development style. We have removed the need for most xml files, and instead replaced them with Kotlin code which is much more flexible and easier to read. Thus, a need arose for developers to migrate their code to the new development style. This course will teach students how to make that transition.

We will start with an example app built with XML. The app will focus on a few UI screens, and will be kept simple, to focus on the UI aspect. The app will be provided to the students so that no time is wasted building it.

As we progress through the course, we will build the same app in Jetpack compose, while studying the various aspects described above.

Course Description

In this course we will cover UI migration from XML to Composables. Learn about Managing state, state hoisting, side effects. Understand how to organise UI with Column, Row, Box, LazyColumn, LazyRow, Grids, Modifiers, Sizing, Themes. In our sample project, we'll also work with Common Composables: Text, Button, Image, Icon etc and look at Clicks and gestures

Drag to resize
By the end of the course you will have mastered:
  • Refactoring an existing app to use Jetpack Compose
  • Understanding the new way of thinking when building UIs
  • Get comfortable building UIs with Compose
  • Understand how themes work in Compose
  • Understand how dimensions work in Compose
  • Understand which XML files are no longer used, and which are still used in Compose

Meet the instructor

Drag to resize

Catalin Stefan  

Content Author & Course Instructor

I am an avid learner and teaching enthusiast. I love creating content and courses that enrich people's lives and help them have a better experience, both personally and professionally. I am an expert mobile application developer with over 10 years development experience. I enjoy making courses related to software development and mobile apps, and want to share the knowledge I have acquired. I create courses based on my professional experience. I hope to teach people skills that help them in their careers, allow them to acquire new skills and improve their personal relationships.