Why Flutter? Beautiful, Natively Compiled Mobile App
Flutter Logo Transparent |
So recently I've been doing mobile app development using this framework made by Google, Flutter. To be honest, other than that it is a multi platform mobile app framework, for Android and IOS, i am really disappointed. I hate it because it is using this Dart language that look like Javascript but it is not Javascript, it looks like Java but it’s no Java. It’s confusing for even creating, adding a variable typed List. Do i need to do var myList? or List myList=new ArrayList()? But then, can i just myList[123] or myList.get(123)? It turns out that there’s so many things we need to learn about this Dart language alone, and Flutter is another different complex story.
Flutter is React like mobile app development framework. I’ve been doing React and have been really happy, enjoying so much, but it is not as flexible as pure as HTML, Javascript, JQuery and CSS. You can build more maintainable codes with React, but is that you want?
Now talk about why consider Flutter to be your mobile app language (framework, whatever), why is it the choice for building mobile app? Why it is being hyped by many mobile developer community.
- Native feel app
- Widgets (a component like in React), state (Also from react), these are currently believed to be an efficient way to build a UI. If you don’t know what is widget and state here’s simple summary
- Android and IOS can be built with just one code base? But why flutter? React native can do that? Look reason number 4
- It is backed by our grandpa Google, with their popular mobile OS, Android in their hand, they can stir everything in the mobile app world. They plan to make Flutter as the main language for Android, they will focus on perfecting it, and they will abandon the current technology we use, Java. So if you are more into looking for future, better to learn Flutter starting from now.
People also say that Dart is also the main reason for choosing Flutter, because they say Dart is a beautiful and modern language. For me, as I already stated above, in my personal opinion i don’t like it. Language style can only be either Java or Javascript, not a combination of them, again in my opinion Dart is a combination of Java and Javascript, it is confusing to do programming in Dart. But I don't know, maybe someday I will begin to love it, for now I don't see any special thing in Dart.
To be honest I am more into rejecting Flutter than to support it, because I don't think I need to learn a new framework. I’ve been learn so many languages, frameworks and syntax in my journey as a software developer. And so many things i learn doesn’t give me any significant change on project i created. So in my mind, whatever new technology that didn’t do very much impact to me, i will subconsciously rejected it.
If only Java base code for Android development can be ported to IOS app, i will never ever touch Flutter, even though Google maybe abandoned it soon, i don’t care, I'd rather doing something I love than learning new things that I hate. I love learning new things in the past, writing codes with very long lines, when I was a teenager, but now, the less code i can write is the happier I am.
Doing Android development in Java, using Android studio has been really pleasure moment in my life. Java and this Jetbrains IDE tools has been doing so great, with many features in it, I've been trying to learn over the years, now I can code within Android studio so much faster. it comes new technology that is completely new, then I was like, what are you doing Google? Why are you trying to kill an already proven working tools?
For the first couple of days, I am like an idiot learning this Flutter widgets, I hate it so much, it is frustrating, the same as when I learn React native few years ago. Just even dealing with button alignment is really hard, i want to have just a button with text and icon inside it to be left aligned, not in the center, i googled around several hours, still until now, i am not getting the solution. The option is to create our own widget, but it could be more hard suppose. I mean a button in Material design principle is something really hard to do.
It has been unpleasant moment in my career as a software developer to learn new and new coming technology, I would say Flutter might be the last thing i can handle, upcoming technology i will say NO. I really will reject it. I don’t want to learn any new technology if it is not giving much significant result of that app that we are going to build.
Please someone on too, who has power controlling the crowds, please, just stop being such obnoxious. Don’t reinvent the wheel, we don’t need more wheel. We need rocket, how can we build rocket if we only constantly focus on the wheels?
Well this is my life, for now, I am really active on learning Flutter because this is the only reasonable way to build mobile App for Android and IOS. It will be the last mobile framework I can learn, my brain can not comprehend to learn any weird thing anymore. It is been stressful learning Flutter and many other weird framework along the span of my career, and I promised to never touch any new language that’s just will end up being abandoned. If there’s any single button tool to build anything, I will definitely try it, if it is just Flutter like thing, big NO.