Live data from Hacker News

Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

blog.codemagic.io

131–140 of 186 posts

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#131

OP mentions the Provider package [1] wasn't around when they did the Flutter version. That is really too bad, because it is absolutely the best way to manage state in Flutter. It makes things so much easier and cleaner than the other methods. [1] https://github.com/rrousselGit/provider Edit: I probably would have even gone back and refactored the app to use Provider before publishing the article. =) That would have b…

Wow this looks interesting, I don't know why it has slipped right past me so far.

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#132
post #69
post #67

Considering that the lifespan of a Google product is 4 years, would you really invest the time to become an expert on Flutter? Right now about 190 Google products are slated for retirement. They are even going to start killing the Google Cloud after 2023. It's a YUUGE bet.

Also, do you really want to invest time into learning Dart?

It takes like a few days to pick up and you can easily be productive from day 1. Dart's been around for some 8 years already, I'd assume Flutter bites the dust sooner than Dart will.

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#133

Earlier quoted context omitted.

Didn't know about Nativescript. Did you try it already?

Yup, I used it on a client application the first time I used it and it worked very well. The project was finished a while ago, and Nativescript has made leaps and bounds in that time, it's even better today. I used Nativescript-Vue[0] which has since been brought under the nativescript umbrella fully, and it was a great experience. Vue is drastically less complex than React and that translated to very easy app buildi…

How's the development experience? Can you debug/step-in to the code?

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#134
post #126
post #111

Earlier quoted context omitted.

Hardly impressed with hot reloading, having done GUIs in Lisp, Smalltalk and Oberon. Plus the competition is stepping up, with Swift UI, Xamarin, Jetpack Compose hot reload support.

It's one thing to have hot reload and another to have it also preserve the whole app state like Dart/Flutter does.

You mean like Common Lisp and Smalltalk do.

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#135
post #22

There are some issues here and there (JSX is not a language!) but this is definitely a very good comparison. It is indeed a little bit too shallow (give animations! Full app navigation stack management!) but gives practical insights. Props to the author.

JSX aka JavaScript XML. It is technically a language.

It’s an extension to a language. Would you call generics a language? Is TSX a different language from TypeScript?

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#136

This whole commentary will change in about 6 months when Jetpack Compose goes live. Compose is basically android-native SwiftUi equivalent - a reacty way to write apps. Officially sanctioned and tuned by the core Android team

Flutter is also cross platform, a big advantage. No matter how well the Jetpack Compose experience is going to be, it's still only Android.

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#137
post #30

Looking at Flutter vs React Native, the only comparison of interest for, perhaps most of us, Flutter for the win! Lower dev resources and way lower cpu usage. Dart is lovely, the docs are great, wide array of great UI widgets, and easy animation. As for hot reloading, well, you just have to experience the difference.

> Lower dev resources Learning a completely new language in Dart to even get started with Flutter doesn't seem like low dev resources. With React Native you are using: - Javascript which most devs have a grasp on in 2020 - JSX which really isn't much different to HTML - Styling is practically just CSS with slightly different property formatting and naming If you've decided to go down the RN then theres a decent chanc…

I was part of a team who had to do two upgrades of the react native version. and every time, it was a pain taking weeks of developer productivity away. ... i wonder if React Native fixed this problem... but their track record is not the best...

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#138
post #134
post #126

Earlier quoted context omitted.

It's one thing to have hot reload and another to have it also preserve the whole app state like Dart/Flutter does.

You mean like Common Lisp and Smalltalk do.

What's impressive is that they brought this experience to cross platform mobile. Reminds me of Guy Steele's quote about Java bringing the mainstream halfway to lisp but people could only complain.

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#139

Earlier quoted context omitted.

This needs to be higher up -- Nativescript is Flutter's biggest competition and IMO it's better than Flutter, because it doesn't require investing in Dart and switching to the Flutter "ecosystem" completely.

Exactly. Seems here that there’s tons of Dart fanboys in this thread forgetting that most people code to solve a business problem in the most efficient way.

What Flutter has achieved is impressive, but I don't think it's reasonable to classify Dart as a good language in 2020 off the back of it -- the competition is just too good.

Dart feels like an older java in a time when java doesn't even feel like java (with the recent versions, along with other JVM options). For example, try and check out Dart's JSON serialization story[0], it's bad compared to Haskell, Rust and even Go. Dart was rewritten (Dart1 was a train wreck) and Dart2 still doesn't have the features that are expected. Who rewrites a language but doesn't add non-nullable types[1]??

The Dart team is full of smart people, and what they've created is certainly a feat of engineering, but the competition is just tough out there. I consider Typescript to be a better language to write (in this same space, since it's an option for Nativescript), and would consider Swift just barely better, and of course on android you have Kotlin (or Go) as a choice.

At this point I'm generally curious, what do Dart fanboys mark as the strengths of the language over others?

[0]: https://flutter.dev/docs/development/data-and-backend/json

[1]: https://github.com/dart-lang/sdk/issues/22

Re: Flutter vs. Other Mobile Development Frameworks: A UI and Performance Experiment

#140

Earlier quoted context omitted.

Yup, I used it on a client application the first time I used it and it worked very well. The project was finished a while ago, and Nativescript has made leaps and bounds in that time, it's even better today. I used Nativescript-Vue[0] which has since been brought under the nativescript umbrella fully, and it was a great experience. Vue is drastically less complex than React and that translated to very easy app buildi…

How's the development experience? Can you debug/step-in to the code?

You can[0] -- that's one of the upsides to the web as a platform, you get to use some familiar tools to debug the JS side of things.

Also, I'd honestly argue at you that development is so fast for Nativescript (especially when you start using Hot Module Replacement[1]) that you could get away with print debugging.

And again, another really awesome thing is that nativescript integrates really well with native code -- you can write your game/native-feature-heavy screen in native java/kotlin/swift/objc and just write every other screen with nativescript. Flutter makes that just a smidge harder to do because of how it integrates (drawing every pixel) -- it's possible[2], but my money is on Nativescript being better at it.

[0]: https://docs.nativescript.org/tooling/debugging/debugging

[1]: https://www.nativescript.org/blog/nativescript-hot-module-re...

[2]: https://api.flutter.dev/flutter/widgets/AndroidView-class.ht...

Post reply on HN