Cinnamon logo
Cinnamon logo
Cinnamon logo
Close

Home

Projects

Services

About Us

Careers

Blog

Let’s collaborate

Close

Why Choose Flutter Over Other Frameworks?

Josip M.

2020-12-22

5min

Development

The one topic I’d like to tackle is why use Flutter instead of native Android or iOS. Here is my take on the question, and why I suggest Flutter.

placeholderWhy Flutter.jpg

Share this blog:

twitter logo
facebook logo
linkedin logo
link logo

If you would like to find out more about what Flutter is and read an introduction to Flutter, I would highly recommend checking out this blog: Introduction to Flutter. However, here in this blog I’ll be writing about why to pick Flutter and why Flutter is a good technology for you to start learning and using. Whether you’re starting off or you’re an intermediate developer, I believe Flutter is a good choice.

Choosing Flutter as a Junior Developer

One course I would highly recommend for starting out with Flutter is ‘The Complete Flutter Development Bootcamp Using Dart’ by The App Brewery, linked here. This is the course I was given by Cinnamon Agency to start out with and it made everything so much easier and clearer for me.

Learning to code in Dart and use Flutter is really simple. While I can’t speak for whether it is more simple from writing code for mobile applications in Java, Kotlin or Swift, coming from Web Development, where you have to write separate files in different programming languages for the whole project to come together, I can definitely say Flutter is a much simpler and easier approach. In an example of Web Development, if you aren't even using a framework you still have different file types, such as:HTML, CSS, JS and sometimes PHP. HTML is often somewhat messy, and hard to navigate through. CSS on the other side is easy to read, but it has small tricks that you won’t immediately know, it will take a lot of research to write better CSS code as it’s not capable of being very dynamic. Javascript is the actual programming language, and although I’m a big fan of it, I do prefer Dart. If you were to use different frameworks, they would change the logic by a lot. The two that I have personally used are “React” and “Angular”. They are very different, and they add more complications to the file types. Angular is written in Typescript, and React uses JSX. In comparison to Flutter, it’s just a complete mess. In Flutter, everything is in .dart files; UI files, API calls, repositories, everything in one type of file.

This is one of my favorite reasons as to why I believe Flutter is a great choice for new junior developers. It’s easy to understand and it’s also really rewarding. In Flutter it’s such a quick and simple development process that even as a new developer you can write a simple app and see progress within minutes. At uni I started out with Java and I could tell that if I didn’t have assignments due, I would’ve lost motivation for programming completely. Even when you do make the UI, it doesn’t look half as good as when you write code using Flutter.

These are the sorts of GUI's you can get with a minimal amount of effort. Ofcourse, if you spend more effort, both sides would have nicer looking UI's. The difference is that in Flutter, you can achieve way more beautiful results, in a smaller amount of time.

Choosing Flutter as a Senior Developer

I believe Flutter is good for senior developers because the language Dart is fairly similar to other languages (especially to Java and Kotlin). Similarly to my reasoning for why Flutter is good for new developers, senior developers will also be quickly rewarded and see instant progress in their applications.

Even if you come from a language that isn’t specifically object-oriented, but rather function-oriented, you still wouldn’t find it difficult. The reason why is because in Dart you don’t need to be object-oriented. Although having classes and functions and objects is somewhat of a norm. You don't even need to do it that way. Flutter very easily allows developers to write code in their own way.

If you are a person that isn’t worried about learning a new technology, but more about if the technology is old enough to provide you with some good tools, rest assured. Flutter comes with many helpful tools in Flutter Inspector. It also comes with an amazing feature called “Hot reload”. Programmers coming from mobile development will know the pain of wanting to change the design and having to wait for the app to be rebuilt after every save just to see what the app looks like now.

Another reason for senior developers to choose Flutter is that the SDK is old enough to have good options for state management. There are many popular ones such as Redux, but the one we use at Cinnamon Agency is BLoC (a blog about this will be coming soon). BLoC is definitely what I would recommend (and Google also recommends, they even have their own library for BLoC).

A pro for senior and junior developers is that it is rewarding, not only in terms of immediately seeing progress, but it is also a technology that you can develop on any kind of computer or laptop and you can get an output on pretty much any kind of mobile device. It’s supported by popular IDE’s such as Android Studio, IntelliJ and even Visual Studio Code.

Of course, if you become serious about Flutter and write an application that you wish to publish, you get the benefit of being able to put it both on App Store and on Play Store! Something to note as well is that Flutter can also export its project to other platforms such as Windows, Mac, Linux and even Web. Although some of these platforms are still in some sort of Beta phase, after fiddling with it, I found that they do work, the downside being that you need to be careful what sort of plugins you are using as some plugins won't work on some platforms.

Share this blog:

twitter logo
facebook logo
linkedin logo
link logo

Subscribe to our newsletter

We send bi-weekly blogs on design, technology and business topics.

Similar blogs

Job application illustration

You could use our expertise?

Let's work together.