Abstract
Mobile gaming is playing an important role in the entertainment industry. Good performance is a critical requirement for mobile games in order to achieve acceptable running speed although mobile devices are limited by scarce resources. Object-oriented programming is the prevalent programming paradigm and this is true for mobile game development as well. As the origin of object-orientation (OO) is not targeting the embedded software domain, there is suspicion as to OO’s usability for embedded software, especially with respect to mobile games. Questions arise like how OO and to what degree OO will affect the performance, executable file size, and how optimization strategies can improve the qualities of mobile game software. In this paper we investigate these questions within the mobile Role-Playing-Game (RPG) domain using five industrial mobile games developed with OO. We re-implemented these five RPGs with a structural programming style, by reducing the inheritance relationships, removing excessive classes and interfaces. Some additional optimizations are also applied during the re-implementation, such as the tackling of performance bottleneck methods, using more efficient algorithms. New games after optimizations run on average almost 25% faster than the corresponding original games, with a maximum of 34.62% improvement; the memory usage is decreased by more than 10% on average and 17.56% as a maximum; we also achieved a 59% code reduction and a 71% Jar file decrease after optimization. Therefore if developers are aiming for mobile game performance, we conclude that they should use as few OO features as possible. Structural programming can be a very competitive alternative.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Blow, J.: Game Development: Harder Than You Think. Game Development 1(10) (2004)
Boasson, M.: Embedded systems unsuitable for object orientation. In: Blieberger, J., Strohmeier, A. (eds.) Ada-Europe 2002. LNCS, vol. 2361, pp. 1–12. Springer, Heidelberg (2002)
Object Oriented Programming Oversold (2007-3-10), http://www.geocities.com/tablizer/oopbad.htm
J2ME homepage (2007-3-10), http://java.sun.com/javame/index.jsp
Marinescu, R.: An Object Oriented Metrics Suite on Coupling. Master’s thesis, Polytechnic University of Timisoara (1998)
Borland together Architect homepage (2007-3-10), http://www.borland.com/downloads/download_to-gether.html
Daconta, M.C., et al.: More java pitfalls. Wiley, Chichester (2003)
Proguard homepage (2007-3-10), http://proguard.sourceforge.net/
Supremej2me website (2007-3-10), http://supremej2me.bambalam.se/
Nokia. Designing MIDP applications for optimization (2007-3-10), http://sw.nokia.com/id/89527700c7ff/
Klingauf, W., Witte, L., Golze, U.: Performance Optimization of Embedded Java Applications by a C/Java-hybrid Architecture. In: Global Signal Processing Conference, Santa Clara, CA (Sep. 2004)
mBooster homepage (2007-3-10), http://innaworks.com/mBooster.html
Zhang, W., Jarzabek, S.: Reuse without Compromising Performance: Industrial Experience from RPG Software Product Line for Mobile Devices. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, pp. 57–69. Springer, Heidelberg (2005)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer Berlin Heidelberg
About this paper
Cite this paper
Zhang, W., Han, D., Kunz, T. (2007). Object-Orientation Is Evil to Mobile Game: Experience from Industrial Mobile RPGs. In: Lee, YH., Kim, HN., Kim, J., Park, Y., Yang, L.T., Kim, S.W. (eds) Embedded Software and Systems. ICESS 2007. Lecture Notes in Computer Science, vol 4523. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-72685-2_1
Download citation
DOI: https://doi.org/10.1007/978-3-540-72685-2_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-72684-5
Online ISBN: 978-3-540-72685-2
eBook Packages: Computer ScienceComputer Science (R0)