I encountered this use case before. Personally, I find it a bit overkill to have one stream/StreamController for each text input. When dealing with input forms, I normally opt for two possible approaches: - Use a Form, and keep all logic inside the StatefulWidget (no bloc at all) - Use a BLoC with one stream/StreamController, which manages a single…
Great intro! You could also consider adding some examples using the Hooks library by Remi. It works great for reducing the boilerplate with animations: https://github.com/rrousselGit/flutter_hooks
Hi, in the article I use the Swift definition of optional. This is equivalent to nullable variables in Dart. Non-nullable (non-optionals) variables are planned but not yet available in Dart. You were referring to optional “parameters” in function declarations instead, which are supported as you said. Hope this clarifies things.
Apple has allowed apps built with Flutter and other multi platform frameworks for a long time.
Swift and the native SDKs will be around for a long time, and even with Flutter you access native APIs with platform channels.
Admittedly, I got carried away, and fell short on presenting a balanced, unbiased article.
Some of the points I made require more evidence, or at least more insights on my reasoning behind them.
All the feedback I received can be a strong basis for a follow up article. Next time around, I’ll try again and do better. Lesson learned.
Very good question.
Performance is an entire topic on its own. If I find the time I’ll try to do a separate article. Also need to figure out a “scientific method” to measure performance, and compare “apples to apples” (pun intended 😉).