RAD Studio XE4 with Delphi for iOS is here. Who will use it?

Embarcadero has released RAD Studio XE4, its suite of development tools for Window, Web and for the first time, Apple iOS. iOS support first appeared in an earlier release, but in preview, and the current effort works using a new LLVM-based ARM compiler so is somewhat unlike the preview. Individual products such as Delphi XE4 are also available separately.

Looking at what’s new in Delphi and C++ Builder in XE4 it is apparent that iOS support is by far the main change since RAD Studio XE3, though there are two other significant changes:

Prism, a version of RemObjects Oxygene that compiles a Delphi-like language to .NET (and soon other targets) has been removed. Oxygene lives on at RemObjects.

FireDAC, a data access engine acquired from DA-SOFT, is now part of RAD Studio.

I ran up the new RAD Studio on a Parallels VM on a Mac, a VM on a Mac being the best way to try cross-platform development for OS X and iOS. The new IDE immediately presents you with instructions on setting up for iOS development (though I am not a fan of videos, preferring clear text instructions) but I no problems configuring the Mac agent (called PAServer) which makes this work. Start a new mobile app and you can pick a starter template or begin with a blank canvas.

I picked the Tabbed Application and was soon trying out my new app on the iOS simulator

So far so good, though the ability to run up a quick app is no proof of the quality of the development tool. Still, a few reflections.

As I noted earlier, it seems to me that Delphi developers are either Windows developers using the tried and trusted VCL (in which case there is very little for them in XE4), or developers who are targeting mobile platforms and using the cross-platform FireMonkey framework in order to share code between Windows, Mac and mobile. I guess it is also possible that developers targeting iOS alone will be so taken with Delphi or C++ Builder that they will come in as new users.

VCL developers now have 64-bit compilation and a mature framework, and given that the efforts of Embarcadero are now focused elsewhere, and that even Microsoft is going slow on new features for what it now calls “desktop Windows”, there is little reason for such developers to upgrade.

The key questions then are about the quality of the FireMonkey framework and the iOS support. It is hard for me to be objective, since I know Delphi from of old and it is a familiar environment. Delphi or C++ Builder for iOS has obvious attractions for such developers. I would be intrigued though to know what an Objective C or even a JavaScript developer would make of Delphi, coming to it fresh. I am sceptical whether an Xcode developer would find enough productivity benefit in Delphi and FireMonkey to want to move over, and suspect also that many would not be impressed by the FireMonkey approach to iOS controls, which are generally custom drawn rather than true native, or faked completely like the Segmented Control which you are meant to put together from SpeedButtons with segmented styling, as explained in the Delphi iOS tutorial:

Embarcadero is making a big play of being “true native” but native is not just about the executable code (I have written more about this elsewhere) and cross-platform always involves compromise.

There is also some disquiet in the developer community about the cost of keeping up to date with RAD Studio. The full RAD Studio XE4 Architect edition currently costs £2,892.60 ex VAT for a new user, or £1,927.80 to upgrade. If you just want basic Delphi, Delphi XE4 Pro is a more reasonable £642.60 for a new user, or £352.80 to upgrade – but you do not get iOS support for that, that is another £320.40 for the Mobile Add-on, and FireDAC if you need it a further £285.00. When XE3 came out, Embarcadero promised that iOS and Android support would be available later at a “low cost”; of course that is a relative and subjective term, but I can understand if some feel that the price is on the high side. Or you can buy software assurance and get upgrades free; I don’t have prices for that but the cost is significant.

It is unfortunate for Embarcadero that there is intense competition in the iOS tools space, not only from Apple’s excellent and free tools, but also from the likes of Xamarin and Titanium.

None of the above is intended to detract from the achievement of bringing Delphi to iOS, with Android promised, which is considerable.

14 thoughts on “RAD Studio XE4 with Delphi for iOS is here. Who will use it?”

Intensive computing is dominate by Windows. For windows, we find two environments that enable good productivity: Visual Studio from Microsoft and RAD Studio.
RAD Studio is becoming cross-platform while Visual Studio is for windows only. The Delphi compiler is very good on Windows but it is a very good news as well that Embarcadero will use the LLVM compiler for other platforms because LLVM compiler compiles on all platforms available to date (windows, mac, ios, android, linux) and even .net!

You don’t need always a PC (and intensive computer). Very often the mobiles and embedded devices are for the task better so it is important to know how to write software for these platforms and of course choose a language and programming environment that work on those platforms. You will not get them from Microsoft.

Many students that start programing, study engineering. They learn c and Java mainly for programming embedded systems (and micro controllers). They are not using Pascal, despite the beauty of the language and the efficiency of the compiled code. Since embedded system is a Linux world, it could be judicious that Embarcadero brings Delphi back in the Linux world and bring Delphi in the new world of embedded system. It is important if they want Students learning Delphi again. It is very important that there is a compiler for Linux in the starter edition of Delphi.

There are plenty of “Visual Basic” in the Linux world and plenty of “DOS” in the embedded world today, like in the windows world at the beginning of the 90’s. So I would bet today on Delphi again.

Great overview of the subject, Tim. I took part in the beta testing of XE4, and enjoyed it so much that I’ve purchased the upgrade from XE3 for just over £300, giving me the full XE4 Enterprise which includes the iOS pack.

Having been a Delphi developer all my career, this is a great opportunity for my company to be able to add mobile solutions to our existing offerings, using a language and environment we’re completely familiar with and trust.

As you’ve hinted at, I can’t see it necessarily being a great draw for current non-Delphi/RAD Studio users, as there are other offerings out there that probably offer a better approach – Firemonkey works but it’s not always the best – but when you factor in the multi-tier development opportunities using Datasnap, this is an excellent choice for developers offering solutions on multiple platforms. We can now use the same code to service our Windows, web and mobile applications (not to mention a Mac app should we ever need one, which is unlikely).

Yes, it’s because I have Delphi XE3 Enterprise or higher. I would have struggled to justify spending any more than that for what is essentially XE3 + iOS, so they got the pricing OK on this one, in my opinion.

Mobile development is very different to Windows desktop. XCode works very satisfactory out of the box. I don’t see the huge advantage. Maybe because I simply use what I get from Apple. I think it’s Apple’s job to provide an IDE and they do. Delphi on iOS is not false and of course it must have been lots work – the question is what for? It’s a Delphi Add-On … Delphi is a GUI tool. Mobile is not GUI … we will see. History will show.

Xcode is for Apple development only just like Visual studio is for windows only. People who were already developing for Apple devices will probably continue to work with Xcode like the people who were using Delphi on windows.

Delphi is a good option for those news in writing codes that want target windows, OSX and IOS and maybe later Android or Linux server.

I think also that one should also consider that developing for many platforms make us less dependent of decision taken for a particular platform. It is a mean to secure an investment.

Wow that pricing is heavy. In fact so much so you could go and buy a macbook, download a free copy of XCode, sign-up as an apple dev for $99 and still have plenty of change to spare!

I’m a loooong time delphi dev but moved over to using XCode/ObjC about 4 years ago. I still occassionally use and love Delphi but very few Delphi devs I worked with in the 90s still use it. They all moved onto something else.

The challenge isn’t just from IDEs its also from web frameworks like JQuery Mobile which allow multi-platform development and are completely free. With the advent of HTML5 and packaging solutions like phonegap its quite feasible to build feature rich apps fairly simply and deploy to *all* platforms, not just iOS.

I would echo the sentiments that unless you have a large legacy of Delphi code and/or your headcount contains experienced Delphi devs there is no reason to use it for iOS development. Anyway you still need a mac for code-signing and deploying an app to the appstore anyway!

I upgraded from Delphi 2010… my main reason was to try the cross platform, however now that i’ve been using it, everyday I find more disappointment. XE4 seems really buggy. I mean did Embarcadero really test this before they released it. For example if you start an ios app, place one text field. There is a property for text prompt (puts greyed out text in the edit).. Anyways, you would think that such a simple item would work, but it doesn’t…. I did find it in the retorted bugs, but how could something so simple be overlooked. There are many other annoyances with the ide that just seem broken… don’t get me wrong I have used Delphi for years, and pascal before that… Hopefully they release an update quickly because I don’t even feel comfortable deploying an app with all of the issues that are coming up… a lot having to do with fire monkey….

I stopped using delphi in 2006. Best move I ever made. Strangely enough I have just been handed a application developed in Delphi. It needs to be looked at first thing out the window was Delphi. Why on earth should I pay for a outdated and old fashioned piece of crap?

Just ended tested delphi xe4…
after spending 500$ for upgrade from the XE2- i understood, that the XE4, does not include the iOS platform at all, and require another 450$ for mobile pack… Shame, anyhow you couldnt implement any iOS on the XE2, and i bought it for that reason…!

The idea of making a real multi platform is great,
but embracadero like themself, always makes mistakes:
– The IDE does not stop crashing, atleast once a day, and not to mention that it isnt the fastest loaded IDE there.
– They have changed entirely the String concept to be Zero based by default for the iOS, and now i have ton of code, that need to be changed and updated, not to mention that AnsiString is not implemented in the iOS, and need to make hours of checking old code…
Instead of being fully compatible, i cannot rely on my code anymore… And developer still choosing this platform, because they dont want to learn or update any code.
Not to mention that lack of document on how to work with regular UTF8 string (look how simple it is implemented in PHP, and understand why we need to break teeth for things to work)
– The IDE is lack of basic benefit, like this days IDE, code completion should work in the background, I dont need to wait.
– Compiling to the iOS on the MAC, takes about 40-50 seconds, not to mention the code size to be 40-50 mb, for “Hello World application”…
– Firemonkey is lack of basic components, as TWebBrowser, and Bidimode, which makes it difficult to upgrade. has many problem with refresh of components, and its still not working well… i doubt if someone distributed any commercial software with it (maybe only Organization internal platform..)

Do not forget that this advantage over every new version, the migration is BAD BAD BAD, you need to find new packages or DCU compatible with the last version, and upgrading version require 2-3 weeks just for upgrade old code, who need that?

I hate that, i spend hours to check the platform, serving it, instead it to be serving me.
And even tho i decided to give it another chance, so it will take me advanced, i find myself, spending lots of hours, to check for each platform if things working as they should be, and not sure if its a matter of time that bug will be fixed or just to let go, and throw it to the garbish..

Embracadero support works bad, and thier forums are lack…
Try PHP on a regular IDE for web application or Oxygen for Pascal for OS Application,
you install them and start working, within one hour, everything is working, and for PHP you have tons of examples and workaround for everything.

I wouldnt suggest anyone to upgrade to this version, unless they get Update 2,
with solution for all the above… or even listen to thier customers feedbacks.