Issue No. 06 - Nov.-Dec. (2015 vol. 32)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2015.133
Danny Dig , Oregon State University
To improve responsiveness, developers often use asynchronous programming. In the post-PC era, asynchronous programming is even more in demand because mobile and wearable devices have limited resources and access the network excessively. One current development task is refactoring long-running, blocking synchronous code (for example, accessing the Web, a cloud, a database, or a file system) into nonblocking asynchronous code. This article describes the refactorings that improve responsiveness, along with the obstacles of using asynchrony. It also discusses the challenges of retrofitting asynchrony and presents program analyses and transformations and a growing, practical toolset and resources for retrofitting asynchrony. This article is part of a special issue on Refactoring.
Reactive power, Graphical user interfaces, Mobile communication, Programming profession, Androids, Humanoid robots, Code refractoring,software development, refactoring, asynchronous programming, program analysis and transformation, Asynchronizer, AsyncFixer, AsyncDroid, Asyncifier, software engineering
Danny Dig, "Refactoring for Asynchronous Execution on Mobile Devices", IEEE Software, vol. 32, no. , pp. 52-61, Nov.-Dec. 2015, doi:10.1109/MS.2015.133