Reputation: 25
I want to make a project for the summer where I want to create an Android app. Now my question is for those who have used Xamarin before to create Android apps:
Is it better to create Android apps with Java than in C# with Xamarin?
Are there any restrictions with usin Xamarin for Android app development?
I.e. are there some things that I can do in Java but not in Xamarin?
And last, what do you think about Xamarin for a pretty new programmer?
Upvotes: 0
Views: 1002
Reputation: 101
An additional feature which is in C# but is omitted in Java is LINQ which gives significant assistance to data handing and sorting.
The main factor to consider is as Liel has already said your preference of programming Language, Java or C#, go with which you are more comfortable with. The only hesitation which I would mention when referring someone to Xamarin as opposed to Java is that their is significantly tutorials out their.
This in my view though should become less of an issue in time. The main source which I use when I am learning is AppDev and Pluralsight Training DVDs and have found them to be essential in learning.
It is possible to simply refer to Java sources the only manipulation sometimes needed is to capitalize the first character setContentView() => SetContentView() in C#, and then using Intelisence to find the correct syntax Resource instead of R in Java.
Good luck with whatever you choose, James
Upvotes: 1
Reputation: 2437
You specifically asked to:
create an android app
If that is your only requirement, and you have no previous experience in C# development, you should stick to developing the application using JAVA and Android SDKs. After all, it is free of charge.
However,
Why do you want to limit yourself to Android platforms?
If there is a chance that you might want to expand to other platforms in the future, you should IMHO start preparing for it right now, and create a cross-platform application.
C# is a powerful language, Xamarin products are mature and of high quality and Xamarin community is big enough for wide support. There are no restrictions that I know of, and everything that you can do with native Java you can also achieve with Xamarin.Android. Also, in case you will ever find any restriction, you can always include Native Java Code inside your application.
The only thing to mind is the price, which is probably high for a beginner developer.
Upvotes: 3