In the past, the programming and run-time environments on the phone were often quite different from the almost universal model supported for the server, desktop, and laptop. Even where the development environments were similar (such as on the Microsoft® platform, where the ability to develop mobile applications using Microsoft Visual Studio®, Visual C++®, or Visual C# were similar), the wide range of screen resolutions, device capabilities, hardware nuances, and other incompatibilities made writing mobile applications a challenge. This tended to limit development of enterprise applications in the mobile device area.
However, with the advent of the typical form factor and design of consumer-oriented mobile devices, such as iPhone and Androidpowered phones, it is possible for the programming model, code languages, run-time environment, and display technologies to converge so that the ideal of “write once, run everywhere” (though usually on only a specific manufacturer’s device) is slowly becoming a reality. A common design and set of capabilities means that it is much easier for developers to create applications that work well on that device, even if they are not directly portable to devices from other manufacturers.
Windows Phone 7 brings all the advantages of a standardized platform and a consistent developer experience to the Microsoft platform for devices from many different manufacturers. It is not a replacement for Windows Mobile, which continues to provide a powerful platform for a wide range of devices and application scenarios. Instead, Windows Phone 7 is a brand new mobile device that incorporates a comprehensive set of features necessary to build applications
that satisfy the needs of business and consumers, to allow developers to easily create powerful interactive and attractive applications, and to reuse their skills and knowledge of existing modern development environments, such as the Microsoft Silverlight® and the Microsoft XNA® development platforms.
Windows Phone 7 incorporates the majority of features that users now expect to find on a mobile device, such as cloud service and media integration, easy and safe application installation, a stylish modern user interface (UI) that supports gestures and smooth animation, and device capabilities, such as location awareness, camera, sound recording, messaging, and multi-touch. Figure 1 shows the main features of a Windows Phone 7 device.
Windows Phone 7 is also an integrated part of the end-to-end application development and run-time story at Microsoft. The wide range of powerful Microsoft frameworks, applications, and services work with Windows Phone 7 to provide a consistent and complete environment for developing enterprise applications that extend the corporate presence to mobile workers, as well as to consumers.
In addition to integration with applications such as Microsoft Exchange, Windows Live® network of internet services, and Microsoft SharePoint® team services, developers can easily take advantage of reliable and scalable custom services that run in the cloud on the Windows Azure™ technology platform. Windows Phone 7 also uses services specifically designed to integrate with the device, such as the Location Service and Notifications Service provided by Microsoft,
and it is likely that more of these types of services will appear in the future.
Windows Phone 7 also allows developers to easily distribute and sell their applications using a combination of the developer portal and the Windows Marketplace portal. Windows Marketplace provides a single consistent environment for users to obtain applications with the knowledge that they have been certified for use on the device and will properly integrate with it. In conjunction with the targeted advertisement opportunities available through the Microsoft Advertising Exchange for Mobile hub, this also allows developers to profit from creating Windows Phone 7 applications.