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

> Flutter is the best thing that happened to UI development since Qt. Most people don't realize how many apps written in Flutter they use daily, simply because it's impossible to tell.

Electron-based apps are also everywhere and they are through and through bad and a step backward. I would take caution to not do appeals to authority. I would extend this assertion over any javascript-on-a-webview-based GUI framework. Awful concept from start to finish.

The fact that you failed to give any specifics to support your superlatives leads to suspect that the comparison with Electron is well suited.



Not OP, but what makes Flutter good IMO is drawing directly to native canvas, a very good hot reload implementation and AOT compilation.

There are three ways cross-platform UI frameworks draw UI. 1) wrap platform controls, 2) use webview or 3) use low-level graphics API.

Option 1 has to design controls to cater for the lowest common denominator. And there is a higher chance that an OS update might break things that in options 2 or 3. Being based on wildly different APIs (for each platform) increases complexity of creating and maintaining custom controls.

Option 2 has to render UI through a high-level declarative language made for documents.

Option 3 uses same APIs as native UI frameworks use. It's basically alternative implementation of an UI framework. Downside is that it has it's own look and feel, which is mostly an issue, if native UI framework is more polished.

Flutter, being option 3, is more similar to a game engine, than to Electron. Low-level graphic APIs maintain good backwards compatibility, so OS updates don't affect the framework much. Less maintenance is needed.

Good hot reload makes use of XML unnecessary and allows to declare UI in an actual, more powerful programming language. Overall, this removes another layer of complexity. (MS take a hint)

AOT compilation enables fast startup times and less pauses. Which is good as end users are opening and closing applications all the time.


You are right, sheer popularity is not the argument for the quality of the framework. I wrote those two sentences separately for different purposes (the second was more of a reflection of other comments in the thread. I should've put it in a separate paragraph or elaborated more.




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

Search: