Кроссплатформенность — это способность программного продукта работать в нескольких операционных системах, программных средах или на разных типах устройств. Кроссплатформенное приложение может использоваться, например, на компьютерах, смартфонах и планшетах без разработки полностью независимой версии для каждой платформы.
При кроссплатформенной разработке значительная часть общего программного кода используется повторно. Отдельно адаптируются компоненты, которые зависят от конкретной операционной системы, размеров экрана, аппаратных возможностей устройства или требований платформы.
Кроссплатформенными могут быть:
Основное преимущество кроссплатформенности заключается в сокращении времени и стоимости разработки. Команде не требуется создавать несколько продуктов с нуля и независимо поддерживать каждый из них. Обновления и исправления также можно внедрять сразу для нескольких платформ.
Однако универсальный код не всегда обеспечивает такую же производительность и доступ ко всем функциям устройства, как приложение, разработанное специально для одной системы. Поэтому выбор между кроссплатформенной и отдельной разработкой зависит от задач продукта, требований к производительности и сложности пользовательского интерфейса.
Кроссплатформенность тесно связана с адаптивным дизайном, но не является его синонимом. Адаптивный дизайн отвечает за корректное отображение интерфейса на экранах разных размеров, а кроссплатформенность — за возможность работы продукта в различных программных и аппаратных средах.