DEV Community

Cover image for Building a Native Mobile App: First Steps
Varun Palaniappan
Varun Palaniappan

Posted on

Building a Native Mobile App: First Steps

In this podcast, Krish discusses considerations for building a mobile app, particularly focusing on the decision between native and cross-platform development. He outlines the pros and cons of native development for iOS and Android using Swift and Kotlin, emphasizing the longer time to market and higher costs associated with building two separate apps. Krish also mentions cross-platform alternatives such as React Native, Xamarin, Ionic, and Flutter, highlighting their potential for quicker development and broader market reach. He suggests delving deeper into specific development approaches in subsequent podcasts, offering a high-level overview of available options in this discussion.

Summary

Introduction and Overview of Mobile App Development Options

  • Introduces the topic of building a mobile app.

  • Mentions uncertainty about which approach to take: HTML5, progressive, hybrid, or native.

  • Discusses the importance of making the right decision from the outset.

Considerations for Native App Development

  • Discusses the option of building separate native apps for iOS and Android using Swift and Kotlin.

  • Mentions pros and cons, such as time to market and cost implications.

Exploring Cross-Platform Alternatives

  • Introduces cross-platform alternatives like React Native, Xamarin, Ionic, and Flutter.

  • Highlights the benefits of cross-platform development in terms of speed and cost.

  • Briefly mentions each platform’s background and relevance.

Podcast

Check out on Spotify.

Transcript

0:00

Hope you're doing well. If you're considering building a native mobile app but feeling unsure about where to start, perhaps this podcast can offer some guidance. So, let's say you already have a web app or are venturing into mobile-first territory and need to develop a mobile application.

0:24

And you're faced with the decision of whether to build an HTML5 app, a progressive app, a hybrid app, or a native app. There are several options available, and you want to make the right choice before diving in because once you've begun coding, it's not always easy to backtrack, right?

0:46

So, before you take the plunge, let's discuss some factors that might help you make an informed decision. I really hope this discussion proves beneficial to you. Now, what could be a prudent approach – a "safe" approach – to building a native app?

1:03

Consider the two dominant operating systems, iOS and Android. If you aim to capture a significant portion of the mobile market, you might opt for building a native iOS app using Swift and a native Android app. This route is relatively safe, but it comes with its share of pros and cons.

1:22

For instance, the time to market might be longer since you're essentially developing two separate applications. On the other hand, opting for a cross-platform solution typically reduces development time, unless your app requires extensive integration with native features like complex processing tasks.

1:40

So, unless your project demands extensive native integration, building separate native apps may not be the most efficient choice. However, if your team is proficient in Swift, Kotlin, and Android SDK, this option remains viable, albeit at a potentially higher cost and longer development time.

2:32

Now, if time-to-market is a priority, you may want to explore cross-platform alternatives. There are several options available in this space, including React Native, Xamarin (which has become open source), Ionic, and the relatively newer contender, Flutter, developed by Google.

3:12

Flutter, being a newer framework, may lack the maturity of some other options, but it's gaining traction in the development community. If you decide to pursue a cross-platform approach, how would you go about it?

3:28

We've touched on various options at a high level, but there's much more to explore. Perhaps in subsequent episodes, we'll delve deeper into the specifics of building mobile apps. For now, I just wanted to introduce the topic and highlight some broad options available. Thanks for tuning in.

Top comments (0)