RemObjects is previewing a new native Mac IDE for its Oxygene and C# compilers. Oxygene is a Delphi-like language (in other words, a variant of Object Pascal) which targets iOS, Mac, Android, Windows Phone and Windows. RemObjects C# shares the same targets. Both can compile to .NET assemblies for Windows, or to Mono for cross-platform .NET, or to a Mac or iOS executable (using the LLVM compiler), or to Java bytecode for the Android Dalvik runtime. You can get both Oxygene and RemObjects C# bundled in a product called Elements.
In the past, RemObjects has used Visual Studio as its IDE. While this is a natural choice for Windows users, much development today is done on the Mac. Requiring Mac users to develop in a Windows Virtual Machine adds friction, so RemObjects is now working on a native IDE for the Mac codenamed Fire.
I gave Fire the briefest of looks. Here are some of the options for a new .NET application:
Note the appearance of ASP.NET MVC 4, and even Silverlight.
Here are the options for a new Cocoa application:
If you are developing for Cocoa, you can edit the resource file in Apple’s Xcode and use it in your application. I started a new C# Cocoa app, made a few changes and and then ran it from the IDE:
I imagine Microsoft will be keeping an eye on tools like this – if it is not, it should – since they fit with the strategy of supporting Microsoft services on multiple devices. Visual Studio is a fine tool but if Microsoft is serious about cross-platform, it needs strong Mac-native development tools. Xamarin came up with Xamarin Studio, which is cross-platform for Windows and Mac, but the RemObjects approach also looks worth investigating.
PS The first release of RemObjects C# lacked full generic support, for which failing Xamarin and Mono founder Miguel de Icaza took RemObjects to task on Twitter. I was amused to see this in the changelog for April 2014:
65764 Full support for Generics on Cocoa, as requested by Miguel
For more details on Fire, see here.
- Build Mac and iOS apps in Visual Studio: Oxygene for Cocoa
- Oxygene for Java released: develop for Android and Java runtime with Delphi language in Visual Studio
- Is Appcelerator Titanium native? And what does native mean anyway?
- Embarcadero previews Metropolis in RAD Studio XE3: fake Metro apps?
- A puzzle: why did Microsoft hold back Windows RT previews from developers?