Unlike with the catchy title of the article, let's try to avoid the "something vs. something" cliche and look at the dilemma from the business and tech perspectives. This way we will figure out the most important cons and pros, basing on both approaches features and nuances. The material contains a short overview of the trending cross-platform solutions, comparative thoughts and will traditionally end with summing everything up.
First, let's discover what are native and cross-platform development approaches. Native mobile app development involves building apps for particular mobile operating systems (OS). For example, if you intend to build an application for iOS with native tools, app developers will use programming languages Objective-C or Swift. Developing for Android they will use Java or Kotlin. Cross-platform mobile app development, on the other hand, is purposed to cover several platforms with a single technical solution. What are the popular players in the cross-platform market?
Flutter is an open-source UI software development kit created by Google. It is used to develop applications for Android, iOS, Linux, Mac, Windows, and the web from a single codebase. Flutter has taken a step forward to effective UI and animation handling showing fair good results compared to competitors. It has a pretty cool app build time, which can decrease development time in the long run. Overall, Flutter is a relatively young technology and still has some bugs. They're not so many professional and experienced developers in the market, and finding one can be challenging. The Futter community is growing and Google spends tons of money for its promotion, which is a positive sign promising a bright future for the technology.
Xamarin is an open-source mobile app platform owned by Microsoft, using .NET technology stack. Xamarin is unique in its own way as a product that works directly with the native OS API. It supports a huge number of assembly libraries and services from Microsoft and plenty of available developers in the market. Microsoft claims a 30% reduction in development budget costs but it smoothes out by time-consuming debugging for Android and iOS platforms. The technology exists for 9 years already and has gathered a massive community along with solid documentation, which means it stands on firm ground.