Building Mobile Apps: Android, iOS, both?

Posted by Isabel Vazquez on March 14, 2018
[ mobile-development  ]

Currently tinkering with Android development, I thought of mobile apps as being either Android or iOS. However, an alternative to these native approaches is a cross-platform framework like Ionic, Flutter by Google, or Xamarin by Microsoft. Another important option mentioned in this space is React Native by Facebook which is not exactly a cross-platform tool but a solid approach to those developers with previous experience in React and JavaScript land.

I wanted to bring attention to hybrid mobile development, a space with many options/competitors. My general feel is that most companies are not using these tools given the amount of job openings for “Android developer” or “iOS developer.” I have yet to see a job description with “mobile developer.” However, learning these technologies in addition to Swift or Kotlin is great to bring up in interviews. Mobile app development benefits from hybrid technologies by having an app look the same on all platforms and less cost and time spent building essentially two separate apps.

As with most tech, there are many routes to go about doing it. Here are some options for learning mobile development:

  • Focusing on iOS means learning Swift and exposure to Objective-C
  • Android development has Kotlin usage growing in comparison to Java
  • For a cross-platform approach: Ionic is JavaScript-based, Xamarin is C#-based, and Flutter is Dart-based. As I haven’t dabbled extensively in all of them, I won’t recommend one over another. It depends on your individual knowledge and where you find the most community.