Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What is the state of dart for cross-platform development? I looked a few years ago and it seemed like progress was being made for web development and desktop use, if I remember correctly.


Web development is not really going well (imho), but desktop I find good enough to at least prototype with. Wether I can make my mind up if I like Dart or not, Flutter really feels right to me.


[I'm the eng lead for Dart.]

Dart itself is used heavily on the Web by Google. E.g., ads.google.com is a Dart web app - but not a Flutter one. It uses a Dart version of the Angular framework. It's probably the largest Dart app in existence today.

Flutter on the Web is less mature, but (IMO) making good progress.


Isn't AngularDart "deprecated" now? I say "deprecated" in quotes because the repository has been archived [0] and it says it's been moved to a community project, which I'd think is a little strange if Google has a large (and I'd assume important due to it being a revenue generating site, ie ads) codebase but then archives the project.

Big fan of Flutter though, what's next for Flutter on the web, anything interesting?

[0] https://github.com/angulardart


Regarding AngularDart, see:

https://medium.com/dartlang/angulardart-flutter-and-the-web-...

TL;DR - It's still heavily used inside of Google, but the team decided to stop maintaining the open source version of it. It was a fair bit of work to do both - different build rules, different tests / test infra, different priorities. Effectively, AngularDart has been forked. There is an internal-only version that is actively developed, and there is an external community project.

Regarding Flutter on the Web, there is a lot of active work, but I'm not the best to speak to all of it. On the Dart side, it's one of the major reasons we're investing in things like compilation to Wasm.


Ah I see, so Google doesn't use the open source version at all. I thought it was like Flutter or Angular where the OSS version was used but it's different in this case.

Just had another question, I actually just filed a feature request for Dart (based on reading this thread about Option and Result types) about whether Dart has a Result type [0]. Looks like it does in Flutter's async module, but I wasn't sure why that wasn't also brought to the rest of the language.

And for WASM, I thought garbage collection for WASM wasn't stabilized yet, will Dart have to wait until then? What benefits does WASM provide for Flutter that's not already covered by how it does web support anyway, ie drawing inside a canvas?

[0] https://github.com/dart-lang/language/issues/2697


For Wasm, yes, we're targeting the new garbage collection support using the experimental implementation in Chrome. We think this has the potential to help with performance.


That's excellent to hear! I did not know (my lack of research in that regard obviously) that Dart was used that much outside Flutter! I really like Flutter and see them as married, but I'm obviously wrong. Thanks for the explanation.


are you using flutter just for the vanilla use case of a mobile app?


Mobile + Desktop. But these are LoB apps. I just like it better than React(Native). The results are really robust and easy to debug if something wrong. Also when I do an update, unlike React, not suddenly everything is broken.


The most important thing to remember is that Dart doesn't support shared memory concurrency in the traditional sense. It's modeled after JavaScript's WebWorkers (message passing).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: