Desktop development is the process of writing software that will run on standard computers including your desktop, laptop, or general purpose computer. Desktop applications can take full advantage of a computer's power.
Cloud computing refers to computers and applications that run remotely and are accessed over the Internet. Aggregating the computing needs of many users achieves economies of scale that result in numerous benefits.
Phone development is similar to desktop development, but with a different device at its core. To simplify development, many developers initially run, debug, and test their applications in an emulator on their desktop.