Hey everyone! I'm a web designer and developer, mainly working with HTML, CSS, PHP, and some JavaScript. I recently came up with a cool idea for an app that I initially thought would work better as a website, but I'm realizing it's much better suited as a mobile app. The issue is, I've never actually built an app before and now I'm feeling a bit lost.
Here are my main questions:
1. I want my app to be available on both Android and iOS. I know they require different programming languages and methods – Android typically uses Java or Kotlin, while iOS uses Swift (correct me if I'm wrong). I'd rather not have to learn two different programming stacks to create one app, especially since I'm not even sure if my idea will take off. Is there a way to create one app for both platforms?
2. I came across an article that mentions using cross-platform frameworks like React Native or Flutter, which lets you write code once and deploy on both systems. Is this a good option? Will the user experience or performance suffer compared to building a native app? Are most developers opting for cross-platform these days?
3. Between React Native and Flutter, which one is better for cross-platform development? I've seen both mentioned a lot, but I'd love to hear thoughts from devs who have used them. Which should someone with a web development background consider learning?
Just to give you some context: I'm an iOS user, but the majority of my family and my target audience are on Android, so I can't just go for iOS alone. I'm not looking to become a mobile developer; I just want to create this one app idea and see where it goes. It won't be a really basic app either, so it's important to start off on the right foot. Any advice, resources, or tutorials you could share would be greatly appreciated!
3 Answers
You should definitely consider React Native for your app! It's great for cross-platform development and pretty beginner-friendly, especially given your web development background. Since React Native is based on JavaScript, you won't need to learn a completely new language. I've built several apps using it, and they've worked well on both Android and iOS. Plus, there are tons of resources and a supportive community out there for help.
If you're coming from a web development background, React Native is definitely simpler to grasp since it's all JavaScript. Just make sure you get a solid foundation in JS first, then transition to React and React Native. It'll all click together once you dive in!
While I understand the appeal of using something like React Native, I'd advise caution in terms of user experience and accessibility. Native code tends to perform better and gives you complete access to the accessibility API, which is crucial for many users. Hybrid apps can struggle with speed and responsiveness, and as a screen reader user, I often find them frustrating. Make sure to prioritize accessibility and don't overlook the documentation related to it. It's important for reaching a wider audience.
Related Questions
Fix Not Being Able To Add New Categories With Intuitive Category Checklist For Wordpress
Get Real User IP Without Installing Cloudflare Apache Module
How to Get Total Line Count In Visual Studio 2013 Without Addons
Install and Configure PhpMyAdmin on Centos 7
How To Setup PostfixAdmin With Dovecot and Postfix Virtual Mailbox
Dovecot Error Unknown database driver mysql