Don't miss an insight. Subscribe to Techopedia for free.


Cross-Platform Development

What Does Cross-Platform Development Mean?

Cross-platform development is the practice of developing software products or services for multiple platforms or software environments. Engineers and developers use various methods to accommodate different operating systems or environments for one application or product.


Techopedia Explains Cross-Platform Development

The idea of cross-platform development is that a software application or product should work well in more than one specific digital habitat. This capability is typically pursued in order to sell software for more than one proprietary operating system, such as to accommodate use on both Microsoft and Apple platforms. With the development of mobile devices and other kinds of platforms, as well as the proliferation of open-source technologies like Linux, more kinds of cross-platform development have emerged.

Some of the fundamental strategies for cross-platform development include compiling different versions of the same program for different operating systems, or in other cases, the use of sub-tree files to apply or fit the product to different operating systems. Another major approach is to make the program abstract at certain levels in order to accommodate different software environments. Software like this can be said to be "platform agnostic" in that it doesn’t value or support one platform over another. Developers can also use application programming interfaces (APIs) to adjust a piece of software to a specific platform.

In general, cross-platform development can make a program less efficient. For example, it can require redundant processes or file storage folders for the various systems that it’s supposed to support. It may also require that a program be "dumbed down" to accommodate less sophisticated software environments. However, in many cases, the makers of software figured out that the limitations of cross-platform development are worth dealing with in order to offer an application or product to a wider set of users.


Related Terms