Cross-platform - Challenges To Cross-platform Development

Challenges To Cross-platform Development

There are certain issues associated with cross-platform development. Some of these include:

  • Testing cross-platform applications may be considerably more complicated, since different platforms can exhibit slightly different behaviors or subtle bugs. This problem has led some developers to deride cross-platform development as "Write Once, Debug Everywhere", a take on Sun’s "Write once, run anywhere" marketing slogan.
  • Developers are often restricted to using the lowest common denominator subset of features which are available on all platforms. This may hinder the application's performance or prohibit developers from using platforms’ most advanced features.
  • Different platforms often have different user interface conventions, which cross-platform applications do not always accommodate. For example, applications developed for Mac OS X and GNOME are supposed to place the most important button on the right-hand side of a window or dialog, whereas Microsoft Windows and KDE have the opposite convention. Though many of these differences are subtle, a cross-platform application which does not conform appropriately to these conventions may feel clunky or alien to the user. When working quickly, such opposing conventions may even result in data loss, such as in a dialog box confirming whether the user wants to save or discard changes to a file.
  • Scripting languages and virtual machines must be translated into native executable code each time the application is executed, imposing a performance penalty. This penalty can be alleviated using advanced techniques like just-in-time compilation; but even using such techniques, some computational overhead may be unavoidable.
  • Different platforms require the use of native package formats such as RPM and MSI. Multi-platform installers such as InstallAnywhere, JExpress, InstallBuilder, or IzPack address this need.
  • Cross-platform execution environments may suffer cross-platform security flaws, creating a fertile environment for cross-platform malware.

Read more about this topic:  Cross-platform

Famous quotes containing the words challenges and/or development:

    A powerful idea communicates some of its strength to him who challenges it.
    Marcel Proust (1871–1922)

    For the child whose impulsiveness is indulged, who retains his primitive-discharge mechanisms, is not only an ill-behaved child but a child whose intellectual development is slowed down. No matter how well he is endowed intellectually, if direct action and immediate gratification are the guiding principles of his behavior, there will be less incentive to develop the higher mental processes, to reason, to employ the imagination creatively. . . .
    Selma H. Fraiberg (20th century)