ПІДВИЩЕННЯ ПЕРЕНОСИМОСТІ ВИХІДНОГО КОДУ C++ ДЛЯ БАГАТОПЛАТФОРМНИХ ОБЧИСЛЮВАЛЬНИХ СИСТЕМ

Software portability is one of the key factors for successful development in the context of rapid hardware evolution and increasing diversity of computing architectures. The emergence of alternative platforms such as ARM and RISC-V, alongside traditional x86_64, as well as the widespread adoption of mobile, embedded, and cloud computing, necessitates the development of source code that can be adapted across different environments with minimal resource cost. This issue is especially relevant for system-level programming languages such as C++, which is widely used for building high-performance and resource-efficient applications. Ensuring code portability without sacrificing performance is a critical objective for enhancing the competitiveness of software products in global markets. The aim of this study is to develop an effective methodology for improving the portability of C++ source code for multiplatform computing systems, which enables the minimization of costs related to adapting software solutions to diverse hardware and software platforms. To achieve this goal, the study analyzes common challenges encountered when porting C++ applications between computing environments. A comprehensive approach is proposed, which includes strict adherence to modern C++ standards (with a focus on C++17 and C++20), the use of cross-platform libraries such as Boost and POCO, unified build configuration through CMake, and automation of testing using continuous integration (CI) systems with support for multiple target platforms. Additionally, the study considers adaptive programming techniques and conditional compilation practices to optimize the code for platform-specific features. A test C++ project implementing typical data processing functionality was created and successfully compiled and executed on three major platforms: Windows, Linux, and macOS. The results demonstrate that adherence to portability principles eliminates the need for modifying the source code when switching between environments. Performance and resource usage were analyzed, confirming the effectiveness of the proposed methodology for industrial-scale use. The study confirms that C++ source code portability is achievable through proper application architecture planning and the use of modern cross-platform development tools. The proposed approach significantly reduces the time and cost of maintaining software across diverse platforms. Future research is expected to focus on developing automated tools for analyzing code portability and evaluating the performance of adapted solutions on emerging architectures.

Authors

Publication Details

Journal
Herald of Khmelnytskyi National University Technical sciences
Published
2025-08-28
DOI
https://doi.org/10.31891/2307-5732-2025-355-3
Primary Topic
Mobile and Web Applications
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

ПІДВИЩЕННЯ ПЕРЕНОСИМОСТІ ВИХІДНОГО КОДУ C++ ДЛЯ БАГАТОПЛАТФОРМНИХ ОБЧИСЛЮВАЛЬНИХ СИСТЕМ

Михайло БЕРДНИК, Ігор СТАРОДУБСЬКИЙ
Herald of Khmelnytskyi National University Technical sciences
Mobile and Web Applications
article

ПІДВИЩЕННЯ ПЕРЕНОСИМОСТІ ВИХІДНОГО КОДУ C++ ДЛЯ БАГАТОПЛАТФОРМНИХ ОБЧИСЛЮВАЛЬНИХ СИСТЕМ

Михайло БЕРДНИК, Ігор СТАРОДУБСЬКИЙ
article en

Abstract

Software portability is one of the key factors for successful development in the context of rapid hardware evolution and increasing diversity of computing architectures. The emergence of alternative platforms such as ARM and RISC-V, alongside traditional x86_64, as well as the widespread adoption of mobile, embedded, and cloud computing, necessitates the development of source code that can be adapted across different environments with minimal resource cost. This issue is especially relevant for system-level programming languages such as C++, which is widely used for building high-performance and resource-efficient applications. Ensuring code portability without sacrificing performance is a critical objective for enhancing the competitiveness of software products in global markets. The aim of this study is to develop an effective methodology for improving the portability of C++ source code for multiplatform computing systems, which enables the minimization of costs related to adapting software solutions to diverse hardware and software platforms. To achieve this goal, the study analyzes common challenges encountered when porting C++ applications between computing environments. A comprehensive approach is proposed, which includes strict adherence to modern C++ standards (with a focus on C++17 and C++20), the use of cross-platform libraries such as Boost and POCO, unified build configuration through CMake, and automation of testing using continuous integration (CI) systems with support for multiple target platforms. Additionally, the study considers adaptive programming techniques and conditional compilation practices to optimize the code for platform-specific features. A test C++ project implementing typical data processing functionality was created and successfully compiled and executed on three major platforms: Windows, Linux, and macOS. The results demonstrate that adherence to portability principles eliminates the need for modifying the source code when switching between environments. Performance and resource usage were analyzed, confirming the effectiveness of the proposed methodology for industrial-scale use. The study confirms that C++ source code portability is achievable through proper application architecture planning and the use of modern cross-platform development tools. The proposed approach significantly reduces the time and cost of maintaining software across diverse platforms. Future research is expected to focus on developing automated tools for analyzing code portability and evaluating the performance of adapted solutions on emerging architectures.

Herald of Khmelnytskyi National University Technical sciencesVol. 355(4)
Openalex Percentile: Top 58%
Mobile and Web Applications
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.