Flutter Trends and Community Updates

18 December 2019 by Ed Freitas
Flutter Interact, Google's biggest Flutter event to date, recently took place. There were several important announcements made, including an updated release... more information about these announcements can be found here. Flutter's goal is to become a ubiquitous development framework across all platforms and devices, on mobile, web, and desktop.
Flutter's excellent features
So, why should you learn Flutter? Personally, I was never a big fan of mobile app development. All that changed when I heard about Flutter and started to work with it. First of all, its simplicity is a major plus. If you've done native mobile app development with Java or Objective-C, you'll know it's not easy to develop native applications with either. This is the primary reason alternative languages such as Kotlin and Swift were created, being easier to develop with. However, Flutter goes a step further and reduces the complexity of building native mobile apps even more. Flutter enhances developer productivity by allowing quick compilation of code. Changes to the code can be seen in real time with a fast compilation mechanism called Hot Reload. Significant app changes still require the app to reload, but user interface design changes can be seen as they change in real time. Due to this, Flutter is an ideal framework for starting a new project. If you are thinking of building a minimal viable product (MVP), Flutter is a great choice. It's very cost-effective to develop a mobile app with Flutter because you don't need to create and maintain two mobile app code bases, one for Android and another for iOS. Furthermore, Flutter is extremely fast and high-performing. You won't notice any difference performance-wise from a native app written in Java or Objective-C. Another great feature about Flutter is that it comes with great, well-documented widgets out of the box. Also, Flutter comes with great tooling support so you are able to use either Android Studio or Visual Studio Code.
Taking Flutter cross-platform
Flutter started as a mobile development framework, and it has become what Google calls a canvas for creative exploration. This is possible thanks to the Dart programming language, which has been optimized for building user interfaces. Beyond Android and iOS, Flutter provides support for web development through a code-compatible version that can render HTML, CSS, and JavaScript. This means that existing Flutter code can be compiled to run embedded in the browser without the need to use a browser plugin. Flutter also offers desktop support. As of the time of writing, Flutter code can be compiled to a native macOS desktop app. Windows and Linux code compilation are in technical preview, but as Flutter evolves, support for these platforms will eventually become mainstream.
The Flutter community
One of the great things about Flutter, beyond its cross-platform support, is its growing community, developers passionate about the platform who contribute tutorials, learning videos, demonstrations, user interface components, images, maps, charts, storage, templates, and so on. Every day before I start my working day, I head to GitHub and check the trending repositories for the day. There's not a single day I'm not impressed with the tools that developers come up with, and Flutter and Dart are no exception. Checking trending GitHub repositories for me is a great way to keep up with what is going on with technology and software development. The Flutter (Dart) repository on GitHub contains a wealth of resources that can be used by both Flutter enthusiasts and experienced developers to enhance their applications. Some of my favorite Flutter repositories are: Awesome Flutter Flutter Catalog Flutter Example Apps Flutter Samples Flutter Examples All these repositories are hosted on GitHub. They're easy to find by doing a simple search on the Dart trending repos.
Looking ahead
In 2020, Flutter adoption is going to explode, and a lot of companies are going to require developers with this expertise, so learning Flutter is a great decision to strengthen your career and future employment possibilities. If you are an enthusiast, learning Flutter by experimenting with it is also a great choice, as working with it makes you feel productive and you'll also be able to see the results of your work fast. If you'd like to learn more about Flutter and how to get started, the Succinctly series has you covered with Flutter Succinctly. Beyond this, Syncfusion has a collection of amazing Flutter widgets that will enable you to create astonishing apps with Flutter, so check them out. If you come from a C#, Java, or JavaScript background, you'll find very familiar concepts and constructs within Dart that will make your development experience familiar and delightful. I hope this blog post has inspired you to learn more about Flutter and develop even further your skills with it.
This article was written for Syncfusion and published on their blog.