Chapter 4. Handling Diversity
Walking into a mobile phone retail shop and looking around is a good way to appreciate the enormous diversity of devices and what different people want to do with them. There are devices that are used with one hand and devices that have touch screens; screens can be large or small; some devices have more than one screen; some have built-in GPS; and the list could go on. Symbian OS provides a common platform for many devices and families of devices, which ensures consistency of behavior and functionality for users and gives developers a common and consistent development platform across many models. For example, devices using S60 5th Edition, S60 3rd Edition, UIQ 3.1, and UIQ 3.3 all have a large common base.
The prevalence of Java ME on mobile phones has resulted in many Java ME implementations, which in turn have resulted in fragmentation. A common problem in Java ME on feature phones is that there are many implementations, each with its own set of supported JSRs, implementation defects, specification interpretations, optional features, implementation gaps, and so on. The story of Java ME on Symbian OS is fundamentally different. Having a single common Java ME platform for S60 5th Edition, S60 3rd Edition, UIQ, and other Symbian OS UI platforms considerably reduces the problems that plague other platforms, resulting in diversity differences rather than fragmentation.
Realistically, it is hard to find two families of Symbian smartphones that are completely ...