Mobile, Web and Custom Software



Unless you’ve got been activity during a cave for the past few months, you’ve got detected of an organization known as Xamarin. In 2013, Xamarin declared Xamarin Studio, a tool that allows developers to make mobile applications using the C# language. Additionally, Xamarin declared its integration with Microsoft’s Visual Studio, permitting developers to continue using their favorite development atmosphere to make mobile apps. In this article, I provide an introduction to Xamarin and its attractiveness to developers who are building cross-platform mobile apps.


To understand however Xamarin fits into the developer’s roadmap, you’ve got to know how mobile apps are written. There are 3 kinds of mobile apps that developers will write: native, Web apps, and a combination.
Native apps run directly on the mobile device. they create use of the hardware features out there on the device, like a camera and sensors like an accelerometer, a compass, etc. Native apps are feature-rich and interactive, with full access to the hardware. This approach, although sensible, requires developers to learn a specific language for each platform: Objective-C for iOS and Java for android. For companies that require apps to run on multiple platforms, it’s expensive to take care of completely different code bases for multiple platforms, which are usually not easily ported to the other platforms.
The second kind of apps, Web-apps, are applications that run off the web browser. To use them, users have to launch the web browser on the device and navigate to the right URL. web apps run within the confines of the web browser, which restricts them from accessing most parts of the hardware. web apps tend to be less interactive and are limited in scope and functionalities. Web apps, due to their present access, has the best benefits-the ability to “write once and run all over,” to borrow the motto from Sun Microsystems. However, “write once, run all over” also means the app will look identical everywhere. This restricted the usability of the apps, as their UI should be written to the lowest-common-denominator. however the top of using this approach is that web apps are comparatively simple (and less expensive) to build-developers merely need to know HTML, JavaScript, and CSS.
A third approach to assembling apps is to take the simplest of both approaches and mix them: Use native code for portions of the code that require to access specific hardware features of the device and use web languages (HTML, JavaScript, and CSS) for the rest. although this approach sounds attractive, hybrid apps suffer from performance problems, and aren’t simply scalable because the user base increases.
Xamarin takes the center path; it respects the individuality of every platform and doesn’t force developers to make apps that look a similar on all platforms. On the contrary, it encourages developers to require advantage of the options that every platform offers.
Xamarin also acknowledges that beyond the surface (user interface), apps have lots of extremely reusable elements that can be shared across platforms. for instance, your code for accessing web services can be reused easily on the iOS and android platforms.
Also, database code is additionally highly portable. Xamarin’s approach is to let developers produce UI that are distinctive to every platform, and so produce parts that may be reused simply on another platform.
What concerning the language? rather than using completely different languages for various platforms, a unifying language is needed: C# was chosen as a result of it’s straightforward to be told, and it’s the language of alternative for several .NET developers. using C# allows Xamarin to succeed in out to millions of potential developers.


The IDE plays a very necessary role. a decent IDE permits acceleration of any development effort. Xamarin offers the Xamarin Studio (in addition to Visual Studio support), that may be a world-class IDE that makes developing, debugging, testing, and packaging applications (and more) a walk in the park.

Platforms Supported by Xamarin

To write iOS apps, you need a mac or a reasonable facsimile. Xamarin offers 3 broad choices:
• Use Visual Studio on Windows. using Visual Studio, you’ll develop iOS and android apps natively on your Windows computer. However, the caveat here is that in order to check iOS applications, you need to own access to a networked mac, which will offer the build and deployment services.
• Use Xamarin Studio on Windows. instead of Visual Studio, Xamarin provides its own IDE: Xamarin Studio. Like Visual Studio, Xamarin Studio provides a best development atmosphere to accelerate your development effort. Like option one, testing iOS applications requires access to a networked mac.
• Use Xamarin Studio on a mac. this is the simplest possibility if you’re developing applications for both iOS and android. Xamarin Studio’s tight integration with Xcode makes designing and testing iOS applications easy.

Leave a comment

Your e-mail address will not be published.

Enjoy this blog? Please spread the word :)