Now that the Xamarin Community is free for everyone, we don’t require a Xamarin professional license to build Xamarin applications using Visual Studio. However some developers who are joining Xamarin development for the first time may wonder which IDE they should start with in order to develop Xamarin applications. Some people have Mac (like me ) with Windows as Virtual Machine and s may have just Windows. This article will help you understand the usability differences between Xamarin Studio & Visual Studio (which I have felt) for making the decision clear which IDE you should use for Xamarin Forms development.
Xamarin Studio:
- In Xamarin Studio, Creating a new Xamarin Forms project is a four-step process:
- Click on New Solution,
- Select the Project Type and click ‘Next’,
- Enter the App name (1) , Organisation Identifier (2), select target Platform (3), Shared Project type (PCL or shared) (4) and click ‘Next’,
- Enter the project name (1), solution name (2), Location to save the code (3) , Select Solution Directory creation (4), Select Version Control (if needed) (5), Select option to add Xamarin Test Cloud Project (6) and click ‘Create’,
- The default template of Xamarin Forms project will create projects 3 Projects one PCL/shared, One for iOS and Android projects,
- Xamarin Studio automatically checks for updates of Nuget packages added to project and shows it in the solution explorer,
- The default template of Xamarin Forms project will create ‘App’ class in the file named after the project,
- ‘Add new Item’ option supports 4 type of Form files for creating rest of the file types you will have to manually change the root tag (in XAML) and base class (in code behind),
- Forms ContentPage (Code only)
- Forms ContentPage (XAML)
- Forms ContentView (Code only)
- Forms ContentView (XAML)
- Code completion is perfect, even while writing code for user controls (in XAML).
- The namespace of the class created inside a folder will remain same (i.e. name of the project).
- Debugging is better as the exact error is explained in the error break.
Visual Studio:
- In Visual Studio Creating a new Xamarin Forms project is a 2 step process:
- Click on New Project,
- Select the Project Type, Enter the Name (1) , Location to save code (2), Solution Name (3), Select ‘Create Directory for Solution’ (by default selected) (4) Select ‘Add to source control’ (not selected by default) (5) and click OK,
- The default template of Xamarin Forms project will create projects for all the windows platforms whose SDKs are installed and supported on the host machine (apart from iOS, Android and PCL/Shared projects) like the screen shot which below the host machine was with Windows 10 OS with SDKs for UWP,Windows 8.1 and Windows 8.1 Phone. If your Windows OS is Windows 7 without any SDK installed it will only add iOS and Android projects.
- Visual Studio automatically checks for updates of nuget packages added Projects but shows only in ‘Manage nuget Packages’ window.
- The default template of Xamarin Forms project will create ‘App’ class in the file named ‘App.cs’.
- ‘Add new Item’ option supports 3 type of Form files for creating rest of the file types you will have to manually change the root tag (in XAML) and base class (in code behind).
- Forms ContentPage (Code only)
- Forms ContentView (Code only)
- Forms XAML Page (It’s Forms ContentPage XAML)
- Code completion is erratic, Some times it works some times it doesn’t while writing code for user controls (in XAML).
- The namespace of the class created inside a folder will be like ‘ProjectName.FolderName’.
- Debugging is erratic as it most of the time gives generic errors.
As from the above differences it’s pretty clear that it’s easier to use Xamarin Studio on Mac (if you have one) than Visual Studio on Windows if you have to create mobile app for only iOS and Android.
This is just my personal opinion based upon my usage of both the IDEs for the last year, things may now change as Microsoft has acquired Xamarin. Hope this article helps you in taking decision, let me know if I have missed anything. Happy coding .
Read more articles on Xamarin: