I have heard a lot of Flutter since a few months ago, as a React Native developer I was not sure on what Flutter was, I literally just knew the basic stuff: google's open source framework for mobile development. So I decided to give it a try just to check out on why there is so much hype about it.
I want to make it very clear that we, as devs, can't rely on just one technology, language or framework and see it as the only thing we need to defend and fight for, no! Frameworks and programming languages are just tools that are out there to serve us and we have to be open-minded towards new ones! That's a vital thing for devs to stay up to date with what's new!
Even though I know that, I can't deny I kind of have a special passion for React Native, so I also knew that that might cause me to have a not-so-good impression on flutter.
It's important to note that I have studied Flutter for just a few days, like 2 or 3 so my opinion may change completely from today on (and it probably will). I learned the most simple things in Flutter, like how to create a screen, how to set state variables and so on.
With that being said, I'd like to mark a few things that grabbed my attention about it:
MESSY
I found the dart/flutter code to be very messy and confusing, everything just appears to be a long and endless tree of code and the pieces of code call for other pieces of code from different parts of this tree.
I had that feeling probably because I'm jut not used to how the code is implemented and all the widget thing (EVERYTHING turns out to be a widget and inside a widget you can create other widgets and so on).
Yaml?
So I had never heard of this yaml type of file, which is basically like the package.json that you get to see in React. The difference is that it looks like a mix of Json and Python. Seriously, I had never heard of that extension, for some reason that shocked me.
It's like a puzzle
At some moments I felt like I wasn't doing anything but finding the correct pieces of a puzzle and having them displayed in the screen. It gives you a sensation that everything is already previously made, like all the widgets are already made and you just have to use them, you kind of miss out on the fun of having to create a whole component.
Even though I know that frameworks serve the purpose of doing exactly what I just described above, I did lack the feeling of figuring out how to implement a 'floating action button' for example.
Mixing the UI and state variables
You simply mix both state variables with the code that draws the screen! That seems so wrong to me.
I obviously came up with a few things that I found intriguing or weird in Flutter but I think that's the reaction when you get exposed to a whole new thing, it definitely will look awkward at first glance. On the other hand I also enjoyed some aspects of Flutter and I'm considering on writing a new post on that soon.
What are your views on Flutter?
Top comments (3)
Everything you've mentioned can be applied to react-native as well. Have you ever tried to implement animations in RN? It's a hot mess.
yes, I agree. That's the reason why I made this post in the first place. Since I made this post I got to learn a ton of new things in Flutter and my opinion has already changed a lot, yet that does not mean RN is better than Flutter or vice-versa.
Try GetX, had the same thoughts about Flutter => watched the GetX tutorials.
Problem solved... GetX is awesome...