Hi,
I want to develop a product, i can run all platforms (Desktop, Window phone, android. iOS),
What should i choose between Oxygene and RemObjects C#?
Which item support better?
Thanks,
Kai
Hi,
I want to develop a product, i can run all platforms (Desktop, Window phone, android. iOS),
What should i choose between Oxygene and RemObjects C#?
Which item support better?
Thanks,
Kai
Technically is doesnât matter in my opinion. If you own a license for both languages yourâe able to mix .pas and .cs files in a sinlge project. RO C# and Oxygene are âjustâ Languages for the one and the same compiler backend.
RO C# currentty doesnât support the Windows UI side (WinForms, WPF, Silverlight, ASPX and so on).
Oxygene does supporting the Windows side. But this difference shouldnât be relevant for a cross platform application, because you can put your apps functionality for Windows easiely in a separate RO C# or Oxygene ânone UIâ Assembly, which you can reference in a regular MS C# Windows project.
The missing Windows UI support in RO C# is more a benefit then a restriction. To develop the native Windows UI stuff I take the regular MS C# rather then Oxygene. Thatâs because the âeco systemâ around MS C# is perfect to develop Windows stuff, with tools like CodeRush or ReSharper, with wizard support for the great UI Frameworks like DevExpress. The âtooling stuffâ for Windows UI around MS C# is much more matured than for Oxygene.
So, if you use MS C# for the WIndows UI and RO Elements for the Windows Business logic, iOS and Android, the remaining question is, what elements language you prefer.
I prefer Oxygenâs Pascal for the native iOS development, because I came from Delphi and love the Oxygene Language.
But for cross platforn stuff (iOS and Windows) I use primary RO C# combined with MS C#, because itâs difficult for me to type in Pascal into the one file and type C# in the other. The permanent rethinking between â:=, =â â!= <>â âbegin end {}â or âvar Type name, var name:Typeâ is not easy.
So my final recommendations are:
Hi Jensw,
thanks you for your answer,
i understood but could you please tell me some Pros and Cons when choose RO C# or Oxygene when develop one application will run all 3 platform . (.NET, Java, Cocoa)
I need some info from person have experience about 2 language.
Thanks,
Kai
Oxygene, RO C# and Silver are just frontend languages for the same backend.
Imho it realy doesnât matter what language youâll take.
Oxygene and RO C# have generaly small differences. For example Oxygene does supporting âcode contractsâ, C# doesnât. In RO C# is it easier to handle attributes then in Oxygene, and so on. Iâm sure there is a Wiki article somewhere.
But this language specific differences exists on all 3 platforms.
Alike each platform has itâs own API benefits that Elements can support exclusively on that specific platform. But this doesnât depend on the Elements frontend language, rather than the target platform itself.
Perheaps anybody else can describe this a bit better âŚ
@jensw_2000 is right. It really doesnât matter which you choose. Itâs personal preference. There isnât one that is inherently better for cross platform than the other.
Oxygene is RemObjectsâ baby and they can add new language features as they see fit. With C# theyâve taken a different approach and stuck to the standard. When writing cross platform code though it makes little difference as you tend to use common denominator features and they are pretty much the same in both languages.
With Oxygen, what tools i can use to make UI more beautiful⌠(ex: WPF, Devexpress,Telerik UI , or some thing else)
I own a DevExpress Universal Subscription and can use all of the DevExpress controls with Oxygene
BUT âŚ
You can NOT use any of the DevExpress wizards (project wizard, ânew DevExpress itemâ wizard âŚ).
Additionally you DONât have all the âitem templatesâ from DevExpress for Oxygene. DevExpress is delivering templates for C# and VB.Net.
This make the usage of the DX UI Framework with Oxygene less efficient in comparison to C#. As result it doesnât make a lot of sense to create UI intensive projects with DevExpress and Oxygene.
With this restrictions you can use all of the DX UI controls (drag it on a form and use it).
Additionally CodeRush doesnât understand RO C# multi-part method names.