haku: @keyword android / yhteensä: 28
viite: 8 / 28
Tekijä:Kariniemi, Nicholas
Työn nimi:Clojure on Android: Challenges and Solutions
Julkaisutyyppi:Diplomityö
Julkaisuvuosi:2015
Sivut:79      Kieli:   eng
Koulu/Laitos/Osasto:Perustieteiden korkeakoulu
Oppiaine:Mobile Computing - Services and Security   (T3010)
Valvoja:Nurminen, Jukka
Ohjaaja:Hirvisalo, Vesa
Elektroninen julkaisu: http://urn.fi/URN:NBN:fi:aalto-201505142671
Sijainti:P1 Ark Aalto  2787   | Arkisto
Avainsanat:clojure
android
benchmarking
startup
JVM
Java
Tiivistelmä (eng):Mobile operating systems are rapidly expanding into new areas and the importance of mobile apps is rising with them.
As the most popular mobile operating system, Android is at the forefront of this development.
However, while other mobile operating systems have introduced newer, officially-supported languages for app development, the only supported language for Android app development is an older dialect of Java.
Android developers are unable to take advantage of the features and styles available in alternative and more modern languages.

The Clojure language compiles to Android-compatible bytecode and is a promising language to fill this gap.
However, the development of Android apps with Clojure is hindered by performance concerns.
One recognized problem is the slow startup time of Clojure on Android apps.
Alternative "lean" Clojure compiler projects promise to improve Clojure performance including startup time.
However, the performance of Clojure on Android and the lean compiler projects has not been systematically analyzed and evaluated.

We benchmarked and analyzed the startup and run time performance of Android apps written in Clojure and compiled using both the standard Clojure compiler and experimental lean Clojure implementations.
In our experiments the run time performance of Clojure on Android is similar to that of Clojure on the desktop.
However, Clojure on Android apps take a significant amount of time to start, even on relatively new hardware and the latest Android versions.
Long startup times scale upwards quickly with larger apps and the problem is closely tied to the Clojure compiler implementation.
We also found that while the Skummet lean Clojure compiler project significantly reduces Clojure on Android startup times, more changes are necessary to make Clojure practical for general Android app development.
ED:2015-05-24
INSSI tietueen numero: 51323
+ lisää koriin
INSSI