This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Programming with Ghosts
Jan.-Feb. 2013 (vol. 30 no. 1)
pp. 74-80
O. Callau, Univ. of Chile, Santiago, Chile
E. Tanter, Univ. of Chile, Santiago, Chile
Best practices in programming typically imply incremental coding with classes and interfaces that are either not yet defined or only partially defined. Yet integrated development environments (IDEs) don't support incremental coding well, and recent enhancements and third-party plug-ins fail to provide a seamless experience. We propose to reify undefined entities as ghosts, properly supported by the IDE. A Ghost View provides an integrated, modular view of each ghost, reflecting the current set of assumptions about a given undefined entity. This view is built unobtrusively and on the fly, without interrupting the programming workflow, and it supports program understanding tasks such as navigating from ghosts to the places where they're used. Ghosts and their usages are type-checked automatically as soon as they're defined. Busting a ghost generates a complete skeleton, in the background. Ghosts are a simple and useful metaphor to better support incremental development.
Index Terms:
software tools,data flow analysis,program understanding tasks,programming practices,incremental coding,integrated development environments,IDE,third-party plug-ins,Ghost View,programming workflow,Programming,Software development,Context awareness,Visualization,Java,User interfaces,Search engines,IDEs,Programming,Software development,Context awareness,Visualization,Java,User interfaces,Search engines,ghosts,programming tools,programming environments,integrated development environments
Citation:
O. Callau, E. Tanter, "Programming with Ghosts," IEEE Software, vol. 30, no. 1, pp. 74-80, Jan.-Feb. 2013, doi:10.1109/MS.2012.49
Usage of this product signifies your acceptance of the Terms of Use.