Cross-Platform Frameworks and their Peculiarities Pt. II

Mar 22, 2019

In the first part of the article devoted to those who plan to outsource cross-platform solution development we briefly discussed this approach and efficiency of its tools. The second part will be useful for those directly involved in the app building process. Let’s look at each cross-platform framework from the technical angle. We surveyed our Ionic, Xamarin, and React Native engineers and on their experience made a small review of these tools. So if you are thinking about going into cross-platform development and are choosing a framework to grasp, stay with us.


Xamarin is a framework for cross-platform development that utilizes C# language. It consists of several parts: Xamarin.IOS (a class library that gives access to iOS SDK), Xamarin.Android (same for Android SDK), a compiler for iOS and Android, IDE Xamarin Studio, and Visual Studio plug-in. The tool uses different types of compilation: AOT for iOS apps and JIT for Android ones. Thanks to native UI elements, Xamarin allows creating applications that hardly differ from native versions.

Why choose Xamarin? First of all, this framework is easy to use, has quality documentation and large community, hence you won’t face many difficulties in exploring it. Plus, Xamarin provides a full package of development tools, optimal conditions for testing, means for preventing hardware compatibility issues and easy support. These are the main features appreciated by Xamarin developers. Among minuses, programmers name platform update delays, limited access to open source libraries, and problems with the integration of third-party resources with Xamarin.


As we know from the previous article, Ionic is a framework for creating hybrid mobile applications, which uses web-technologies such as HTML, CSS, JavaScript/TypeScript, and Angular. Therefore, one needs to have knowledge of these technologies only to work with the framework. Ionic is notable for truly fast development and minimum time for market entry.

As Ionic is based on Angular, if you need to see how the application will look like during development, you can launch it in the browser. In fact, the major part can be developed there. Plus, it is not necessary to install the application on a smartphone or emulator to see the preview, and it really saves your time when changing UI. Another big plus of Ionic – various plug-ins that allow using multiple functions of smartphones. However, if some of the native plug-ins are incompatible or one of them has a bug, it can turn to a huge problem, and build can break for no reason.

React Native

React Native allows writing applications in JavaScript and using CSS-like styles. Here, the code is interpreted on the platform itself, which gives it some flexibility. The framework, like Xamarin, is equipped with UI native elements and thus creates close to native applications. Among all the tools for cross-platform development, this one is the youngest.

This framework suits many types of applications for getting a list from the server, show the list, show a detailed view of the list item, send changes to the server, etc. All this requires less amount of code, which makes the whole development process incredibly fast. Still, the framework requires some training, and, being too young technology, Ionic doesn’t have proper documentation yet.


None of the cross-platform development frameworks is perfect, each of them has its own pitfalls. In any case, no matter which tool you choose for grasp, you will never be out of a job, as cross-platform solutions are of high demand nowadays. Debate each framework in your mind and choose whatever you like. Good luck!

Previous articleNext article