The objective of Smartface is to make native app development accessible to masses without sacrificing quality. At every opportunity, we emphasize the importance of “real native” quality and performance and that makes “real natives” win over “like-native” hybrid frameworks like Phonegap, Cordova, etc.
Unlike hybrid frameworks, most of which are just the fork of a single product, huge amount of effort is required to create cross-platform native frameworks. Therefore, there are only a handful of cross-platform frameworks that produce real native output.
While all cross-platform native products are praiseworthy, Smartface is here to make cross-platform native development even more appealing and in this article, we would like to explain you the main differences between Smartface and Xamarin. You can also view our comparison with Appcelerator Titanium.
|Platform Based Native||Xamarin||Smartface App Studio|
|Development Environment||Xcode, Eclipse||Xamarin Studio or Visual Studio||Smartface IDE|
|WYSIWYG Design Editor||iOS: Yes, Android: Partially||Partially with “Designer”s||Yes|
|Code Based Design Editor||Yes||Yes||Yes|
|iOS Development on Windows||No||No (Workaround available with a Mac on network)||Yes|
|Single Code Base||No||Only for “Xamarin.Forms” projects (Not free)||Yes|
|Supported Platform||iOS or Android||Cross-platform iOS, Android, Windows Phone||Cross-platform iOS, Android|
|Adaptation||Mobile know-how||Specific C# know-how||Web know-how|
|Look and Feel, Sense, UX||Native||Native||Native|
|Extend with custom plug-ins||Yes||Yes||on Roadmap|
|Technical Support||Community||Community &Inexpensive license packages sufficient for direct support||Community & Inexpensive license packages sufficient for direct support|
|Security||Most secure||Secure||Most secure (also includes advanced features)|
|Risk||Learning Cost, Operational Cost||Dependency||Dependency|
Another thing to note is that until recently, Xamarin did not have a single code based offering. It was required to code separately for each platform. For standard Xamarin projects, this is still the case, but there is a new offering called Xamarin.Forms, which allows single code based apps for a specified set of UI controls. It produces high quality native output but its flexibility is yet to be seen (the components are currently limited) and it is not free. Similarly, Xamarin licenses must be obtained separately for each native platform, making costs higher than it initially seems.
Smartface is fully single code based, including the free community edition and the license models are independent of the native platform.
Both platforms have their own IDEs. The advantage of Xamarin is that besides its own Xamarin Studio, it has Visual Studio support and this is an important advantage for target audience of C# developers. However, this is again a paid feature and application design is difficult in Xamarin compared to Smartface.
Smartface is the only cross-platform native framework with a WYSIWYG (What You See Is What You Get) design editor. In Xamarin, you are forced to code your user interface. In Smartface, you may choose to design your app either with drag and drop components, with code or with a combination of both. Xamarin has platform-specific “designer” tools for visual design of apps, but it is not directly translated into working apps. In Smartface, your design appears on any phone/tablet as exactly as you see it on the visual editor.
Moreover, Xamarin does not support iOS development on Windows nor iOS emulator or debugger. If you have a Mac in the same network, you can use Windows to develop iOS apps in Xamarin, but it does not eliminate the need for a Mac and setup over network may be an issue in some network configurations. Smartface is the only cross-platform native framework that supports whole iOS development cycle on Windows.
One advantage of Xamarin is the support for plug-ins to extend you project with native code. This feature will be available in Smartface soon.
Both platforms are highly stable. Smartface cross-platform native framework was developed in closed beta for a long time before making sure that it is almost as stable as the platform-based native frameworks themselves.
We trust our product and there are no app feature limitations in free community edition of Smartface. You can develop fully featured apps with no size or platform limitations, the only requirements are the fixed bundle names and the splash screen, both of which do not affect the functionality of an application. The free edition of Xamarin has app size and feature limitations. Since you cannot predict exactly how large your app may become, you may hit this limit just in the middle of your development, forcing you to upgrade to a paid package. Similarly, in the free edition of Xamarin, you cannot develop with a single code base, so you need to pay first to try the single code base offering.
The free edition of Smartface is free with no strings attached. You can start with the free package that have no app feature limitations whatsoever and you can upgrade to inexpensive packages for direct support.
Therefore, while choosing a cross-platform native framework, we recommend you to consider not just the popularity of the framework, but the flexibility and licensing models as well. We suggest that, with the features that are not available in other frameworks, Smartface is the better choice.