Used by many developers in RAD Studio

Heterogeneous end devices: software development with RAD Studio - all in one go!

It used to be clearer! We had the desktop and there was Windows. And on the server side, Linux was used. Finished! Today the world is much more colorful! The desktop is still there, including Windows. But in the mobile sector you can't get past Android and iOS. With macOS there is a much used alternative for the desktop. From the developer's point of view, this diversity is very complex. Modern development approaches that promise to address multiple systems and devices at the same time, such as RAD Studio, are helpful.

Users always want to use the system that is best for them in the given situation. On the desktop there are the current versions of Microsoft Windows and MacOS. Android and iOS dominate the market for mobile devices. On the other hand, Linux distributions are very often used on the server. In addition to this selection of the operating systems used and their versions, today's variety of devices plays a major role. The spectrum is extensive. Smartphones, tablets, notebooks and personal computers in desktop form are in use today with a wide variety of hardware requirements.

From the point of view of software development, this diversity is not without its problems. As a developer, you should ideally be able to address a large part of this variety of systems with your applications. The specialized development for each individual system environment represents the ideal state from a technical point of view, but is labor-intensive and therefore very cost-intensive. In addition, there is the fact that the necessary knowledge of various programming languages, frameworks and system internals is very extensive. Therefore, alternative development approaches are in demand and ways to reduce this complexity have been sought for a long time. Cross-platform or cross-device programming approaches promise to get a grip on diversity and complexity in a wide variety of ways. The big goal is so simple and yet so difficult to achieve:

Once a code has been written, it can be executed on any device or system imaginable.

The ways to get there could hardly be more different. Java, for example, is an approach that uses a virtual machine at the level of the runtime environment. In the area of ​​developing apps for mobile devices, web technologies are also very often used and so-called hybrid apps are obtained. Other approaches - such as Xamarin - generate native applications from a common code base. This is also not without problems and trip-free. The peculiarities of a platform either have to be left out or they have to be programmed individually.

Basically, the performance of cross-platform and cross-device technologies, among other things. determine how well it is possible to get the sometimes very heterogeneous systems of the graphical user interfaces under one roof. The aim is that the application should ideally fit in as harmoniously as possible on each target system and not feel like a foreign body. Another decisive criterion for assessing a cross-platform or cross-device development approach is the effectiveness it has achieved. Typical questions are:

  • How high is the proportion of cross-platform source code or how many functions have to be implemented system-specifically?
  • How extensively are cross-platform functions encapsulated?
  • Is there a powerful tool for designing the graphical user interface?
  • Is the learning effort justifiable and can existing know-how be used?

In this post we introduce an alternative tool called RAD Studio. It is a comprehensive development environment, the latest version of which fills the gap described in cross-platform and cross-device development. After a compact overview of RAD Studio, let's take a closer look at what kind of applications can be built with it for the most varied of systems.