Directory Portals: A Guide to The Quick Start To Flutter

1. What is Flutter?

Flutter is a new, cross-platform mobile application development framework led by Google.

Flutter is developed using the concise Dart language.

It is a true native cross-platform development framework, and it perfectly achieves a set of code, which can run on Android and iOS two major mobile platforms.

Fuchsia, Google’s most secretive new unified operating system (which reportedly has plans to replace Android and other mobile platforms 😨), uses Flutter as an application development framework for its platform.

Google has spent a lot of resources developing and promoting Flutter over the past two years, paving the way for The launch of Fuchsia? 🤔

This is the current architecture of Flutter:

As can be clearly seen from the picture, from bottom to top:

  • Embedder: Platform Embedder layer

  • Engine, a Flutter Engine written by C/C ++

  • Framework, a Framework Framework written by Dart

Flutter can be cross-platform on a native level because it encapsulates a new, independent UI framework called Flutter by using a common drawing library called Skia at the bottom (drawing content is provided to the GPU via OpenGL).

2. Properties of Flutter

2.1 The good

  1. Flutter can implement a set of code that runs on both Android and iOS mobile devices simultaneously.

  2. Flutter implements its own UI rendering engine and provides a complete, rich, platform-independent UI library. Flutter has significantly higher performance and is more native than other cross-platform solutions.

  3. Dart language is used to develop the Flutter application layer. Dart supports both AOT (Ahead Of Time) and JIT (Just In Time) operation modes. Therefore, Flutter is designed to obtain the hot-reload property through JIT mode during development. In the release phase, Flutter is precompiled in AOT mode to produce a high-performance application package.

  1. Community activity continues to rise. This means that more and more developers are involved in the construction of Flutter, which provides the developers with confidence in its future stability and richness. This diagram shows the active trend of Flutter on StackOverflow.

  2. The latest Flutter version 1.2 has support for Android’s AppBundle, which means hot updates and smaller installation packages are possible.

2.2 The bad

  1. Because Flutter is a purely self-built UI library, if some of the custom UI libraries use features of one platform, the other platform will not be able to use Flutter.

Therefore, developers must always choose and write custom widgets carefully.

  1. Perhaps because Flutter was new, the community related tools and libraries were not abundant. Sometimes errors such as layout errors can be confusing, and it can be hard to find useful information on Google.

  2. Debug is not at its best right now, at least when compared to traditional native Debug, there is still a lot of room for improvement.

  3. Compared to Android’s XML UI creation, the current UI creation method provided by Flutter is not intuitive. It takes a long time to get used to.

    Faced with complex layouts, developers must always be aware of how to divide your code properly.

In summary, Flutter is a great boon to mobile development. In many scenarios, it allows developers to write a single set of code to run Flutter on both Android and iOS. Also, you can maintain a high level of performance, which is desirable. What can I say, Flutter is worth a try for mobile developers.

Directory Portals: A Guide to The Quick Start To Flutter

How can I be found?

Portal:CoorChice homepage

Portal:Lot of CoorChice