Compressing Mobile Java Applications

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Helsinki University of Technology | Master's thesis
Checking the digitized thesis and permission for publishing
Instructions for the author
Location:
P1 Ark Aalto

Date

Major/Subject

Mcode

T-106

Degree programme

Language

en

Pages

80+10

Series

Abstract

Matkapuhelimien resurssit ovat nykyisellään hyvin rajoittuneet Java-sovelluksia ajatellen. Osassa puhelinmalleista on sovellusten maksimikoko edelleenkin rajoitettu 64 kilotavuun. Mahdollisimman laajaan käyttöön tarkoitettujen mobiilisovellusten ja -pelien tulee toimia koko laiteskaalalla mukaan lukien nämä rajoittuneimmat päätelaitteet, mikä tulee ottaa huomioon sovellusten suunnittelussa. Tässä diplomityössä keskitytään matkapuhelinten Java-sovelluksien ohjelmakoodin tiivistämiseen, jotta nämä kokorajoitukset voitaisiin paremmin välttää. Työssä tarkastellaan ja vertaillaan keskenään erilaisia tekniikoita, joilla ohjelman kokoa voidaan pienentää. Osa näistä tekniikoista soveltuu erinomaisesti mobiilisovellusten tuotantoon ja voi pienentää sovellusten kokoa merkittävästi. Diplomityön osana kehitettiin myös uusi Java-sovellusten tiivistysmenetelmä, jotta mobiilisovelluksia saataisiin kutistettua entistäkin pienempään tilaan. Tämä tekniikka perustuu luokan kenttien muuntamiseen taulukkomuotoon sekä luokkien yhdistelemiseen. Tällä tavalla saadaan automaattisesti vähennettyä luokkien lukumäärää ja näin ollen pienennettyä sovellusten kokoa. Lisäksi tekniikka on hyödynnettävissä nykyisellään käytettyjen optimointien ohessa ilman rajoituksia. Tämä uusi tiivistysmenetelmä toteutettiin toimivaksi ohjelmaksi ja testattiin kuudella eri mobiilipelillä tulosten saamiseksi. Näiden tulosten perusteella luokkien yhdistelyllä saavutetaan keskimäärin 3,3 kilotavun säästö sovelluksen koossa. Tämä on huomattava parannus nykyiseen tilanteeseen verrattuna, jossa jokainen säästetty kilotavu on tärkeä.

Description

Supervisor

Malmi, Lauri

Thesis advisor

Lönnroth, Henrik

Other note

Citation