3 ms·
I recommend you to go with Android(kotlin) development and Swift for iOS. Here are the pros: - As a profesional app developer you want to know the native patt
by alfonsodev 8y ago
I recommend you to go with Android(kotlin) development and Swift for iOS.
Here are the pros:
- As a profesional app developer you want to know the native patterns better, so you can take out the most from the platform.
- You won't rely on third party components as much.
- You'll have immediate access to the latests apis as they are released in the native framework.
- Faster testing, better debugging experience.
- Easier integration with CI tools or automated test tools.
- Shorter build times.
- Writing in two languages has also it's advantages, you can learn things from Swift 4 that you might love.
Cons:
- You'll have to write two applications.
There are things that will be fundamentally different in both platforms and you won't be able to build once and release in both platforms anyway. (Android instant App is the first that comes to my mind)
So in my opinion you should start with native development first, later you can change your mind, and go to Flutter but you'll be able to leverage your experience to build your own plugins, and create really advance stuff.
Otherwise you'll be always limited. IMHO.
- srrr 8y agoWhile I concur with everything you mentioned I find the debugging expierience with flutter ahead of the native approaches. Especially state keeping hot reloads are very usefull. Personally I choose flutter over kotlin/swift simply because it did "click" with me, while the native apis only confused. But I know that my (simple) app is 80% design, flows, user research, ideas and marketing and only 20% is code. If it ever happens that I reach the limits of flutter, I need to redo 20% of my work. But since I am an absolute beginner at app development, and consistently learn new approaches, I need to rewrite my old code one way or another. At the moment flutter enables me to get the other 80% of work done much faster than native approaches. So maybe think about what you want to learn... To code, or to make apps. Because these are different things.