360 andev 2017 raimon rafols header

Bytecode Mumbo-Jumbo

If you enjoy talks from 360 AnDev, please support the conference via Patreon!

We know one of the main characteristics of Java is portability, and that usually means it is not as efficient as it should be. That might be the reason Java has never been associated with high performance, but nowadays there are a lot of Java powered devices in the world and lots of people are building applications for them. Compilers that produce native machine code do a great optimisation job because they know where the code is going to be executed. But because of the portability feature, the Java Compiler could not assume anything about where our program is going to run and leaves all the optimisations to be done by the JVM while loading or, even, running our code (or converting it to native code in the case of ART). In this session you will not only learn how to make your Android code faster but also what to avoid when looking for critical performance and a bigger understanding of how the Java compiler works, and how these small changes affect to Dalvik VM and the ART runtime. #perfmatters

Get more development news like this

Next Up: Android Architecture Components and Realm

General link arrow white

About the content

This talk was delivered live in July 2017 at 360 AnDev. The video was recorded, produced, and transcribed by Realm, and is published here with the permission of the conference organizers.

Raimon Ràfols

Raimon Ràfols is a software engineer living in the Barcelona area. He is an engineering manager at AXA Group Solutions, taking care of all the engineering and development processes, mobile application quality and leading a small R&D team. In his spare time, he enjoys hackathons, photography and speaking at conferences. Raimon has won more than 40 international awards, including AngelHack Barcelona, Facebook World Hack, and 2nd place at js1k 2016. He speaks about Java/Android performance, Android custom views, and entrepreneurship around the world.

4 design patterns for a RESTless mobile integration »