• Blog
  • Cross-platform software development framework

Cross-platform software development framework

Firemonkey

Publish date:
Discover more of what matters to you

Overview

Firemonkey is a cross-platform software development framework for developing desktop and mobile applications with a single code base inside RAD Studio and Delphi IDEs.

From the technical point of view, being a framework, Firemonkey is a number of units, classes, interfaces. A framework describes a platform (Windows, Android, macOS, iOS, Linux) SDKs and allows access to these SDKs, their APIs, libraries and so on. RAD Studio or Delphi allows you to write an Object Pascal or C++ code with access to all these SDKs and APIs and provides compilation and deployment routines. Firemonkey (FMX) for cross-platform development has a similar concept as VCL but only for Windows.

If we compare Firemonkey software development with other types of software development, especially in terms of mobile apps development, we can see that the Firemonkey framework, as well as others, has its own pros and cons.

How can we develop mobile applications?

Native applications (XCode, Android Studio):

  • There are different development tools for different platforms;
  • A source code is not re-usable in terms of other platforms.

Cross-platform (Firemonkey, Xamarin, PhoneGap, etc.):

  • Usually there is no 100% platform support;
  • SDKs availability is worse than for native tools – for example, if you need the latest Firebase and Facebook SDKs support you have to wait or develop it yourself.

Hybrid (PWA – Progressive Web Apps):

  • You need a web hosting service, a web server or a virtual machine for hosting a web application;
  • Limited support of distribution via app stores – not a typical way of distribution an app for users.

Each of these types of development that are mentioned above has subtypes and their own pros and cons. We don’t have an ideal solution. If you win in performance – you lose in time or cost, if you win in time – you can lose in something else.

Using Firemonkey we can develop software for the following platforms:

  • Windows 32-bit;
  • Windows 64-bit;
  • Android 32 & 64-bit;
  • iOS 64 bit;
  • macOS 32 & 64-bit;
  • Linux 32 & 64-bit.
Technical audit of mobile application environment settings
Check out a case study from our practice
Check out

Summary 

With Firemonkey we can cover almost all popular platforms without any exceptions. The FireMonkey platform supports creation of user interfaces with a high resolution,high-performance 3D graphics, a high frame rate and that’s important. For graphics Firemonkey uses a graphic processor (GPU).

However, there is no need to copy and paste here all Firemonkey documentation – you can find everything on Embarcadero’s website.

At Softacom, we have rich experience in working with fundamental Firemonkey techniques. Without a deep understanding of the Firemonkey framework architecture it won’t be possible to create complicated mobile applications. Each platform has its own peculiarities and pitfalls. Firemonkey cannot cover all the functionality “from the box”. It will be necessary to change or improve core FMX units, classes or even to rewrite the code if you need to have support for platform features which are not supported by your FMX version.

Firemonkey software development is a big part of Softacom’s software development services

We are ready to migrate your legacy Firemonkey applications, which could be developed using Delphi XE4, to up-to-date Delphi versions or develop Firemonkey software from scratch
Check out our migration services
Check out

Subscribe to our newsletter and get amazing content right in your inbox.

This field is required
This field is required Invalid email address
By submitting data, I agree to the Privacy Policy

Thank you for subscribing!
See you soon... in your inbox!

confirm your subscription, make sure to check your promotions/spam folder

Subscribe to our newsletter and get amazing content right in your inbox.

You can unsubscribe from the newsletter at any time

This field is required
This field is required Invalid email address

You're almost there...

A confirmation was sent to your email

confirm your subscription, make sure to check
your promotions/spam folder