Analysis of implementations of graphical interface design systems using various frameworks
Abstract
Introduction. People's consumption of digital content is growing rapidly every year. To obtain information, users use a huge variety of applications, websites, video hosting services and other systems. Every time such systems are used, each user is confronted with the graphical interface of this system. Creating a graphical user interface is not an easy task. There are many GUI building systems for various environments and programming languages, most often they are implemented as frameworks. Materials and methods. Creating graphical interfaces is a complex task, for which there are many tools, including frameworks focused on specific languages or platforms, as well as visual programming tools. This scientific article presents an analysis of five popular systems – Flutter, Jetpack Compose, Electron, Windows Forms and Qt. The analysis was carried out according to the following key criteria: development speed, performance, cross-platform, customization, licensing, and community support. Results and discussion. Flutter is a cross–platform framework in the Dart language that provides high-speed development thanks to a hot reboot and a single code base for iOS, Android, Web, Windows, macOS and Linux. Jetpack Compose is a declarative Kotlin UI development tool in the Android ecosystem. Electron – allows you to create desktop applications using web technologies (HTML/CSS/JS). Windows Forms is a classic Microsoft framework for creating Windows applications in C#. It has a simple visual design and a low entry threshold, but is limited only to Windows, is outdated and does not support modern UI features. Qt is a powerful cross–platform C++ framework with support for visual design (Qt Designer) and the declarative QML language. Conclusion. The frameworks considered – Flutter, Jetpack Compose, Windows Forms, Electron, and Qt – demonstrate different approaches to building graphical interfaces, each of which is optimized for specific tasks and target platforms. None of them provides a perfect balance between development speed, performance, and crossplatform, but each stands out in its own aspects. The choice of a tool depends not only on the technical characteristics, but also on the programming language, license terms, long-term support and community activity.