After finishing the Go language, continue to read Flutter

Click on the blue "Flying Snow Ruthless" above to follow my official account, set a star, and read the article as soon as possible

Two days ago, on May 12, at the Google IO Conference, Flutter 3 was officially released, and it supports six major platforms: iOS, Android, Web, Windows, macOS, and Linux. So far, Flutter has completed the triple jump from Android, iOS, to Web, Windows, to macOS, and Linux, occupying six major platforms.

——  1  ——

Flutter is a toolkit from Google for building applications. At the earliest, it mainly focused on mobile platforms, supporting the development of Android and iOS APPs.

Why is there such a thing? This is inseparable from cost, full stack, etc. If there is an APP developed by a tool framework that can run on both Android and iOS platforms at the same time, it will not only bring about the unification of UI, the convenience of upgrade and maintenance, but also the reduction of labor costs.

In fact, before advocating the big front end, there are some frameworks exploring the possibility of this aspect.

If you started mobile Internet programming earlier, you should have heard of PhoneGap, which allows you to use HTML, JS, CSS and other web technologies to make apps that can run on mobile platforms such as iOS, Android, and BlackBerry. Its advantage is that it allows those originally engaged in web development to quickly develop apps without having to learn languages ​​such as OC and Java.

66e0c5683458de521772aef6239f981b.png

——  2  ——

With the rise of the mobile Internet, not only foreign PhoneGap, but also domestic uniapp are exploring the road of big front-end.

uniapp is a front-end application framework developed using Vue.js. It does not support the development of applications such as Android, iOS, and Web. It also supports the development of small programs, and it is a variety of small programs, such as WeChat, Toutiao, and Alipay. , Baidu, it can do it, which is also one of its advantages.

At that time, when we were considering the big front-end framework, in addition to Flutter, we also investigated uniapp, and finally gave up on it. The reason is mainly two points: the performance is not as high as Flutter; our small program version is soy sauce, mainly Android and iOS, and Flutter is more suitable for us.

In fact, if you want to make a small program and launch it on multiple small program platforms, you can consider using uniapp, a set of codes that can support the release of 11 small program platforms, which is still very good.

——  3  ——

In fact, on the desktop side, there is also a framework for cross-platform application development, and it has a longer history. For example, QT, which is a cross-platform GUI program development framework developed by C++, is a bit far from our big front-end today. I won’t introduce too much here, and friends who are interested can Google it.

There is also an earlier desktop cross-platform framework in the big front end, which is Electron. Electron is open-sourced by GitHub, using NodeJS as the backend and Chromium as the front-end rendering desktop GUI program development framework. That is to say, you use JavaScript, HTML and CSS to build cross-platform desktop applications, support macOS, Windows and Linux platforms, and do not require local development experience, which is a boon for Web front-end engineers.

There are many applications based on Electron, such as our commonly used VS Code, and Figma, which banned DJI accounts some time ago, are all based on Electron.

——  4  ——

The rise of Flutter is actually due to the big front-end, which is essentially a set of codes that run everywhere, which can be developed in a unified way, updated dynamically, and save human resources.

In China, there are several major manufacturers that support Flutter, mainly Tencent, Ali and Toutiao. For example, Tencent Classroom and Ali’s Xianyu use Flutter more.

Under the big front-end trend, Flutter can be selected. One is that it has a good father, Google, and the other is that it has good performance. The unified UI design based on Material Design is also good, and the integration with the native platform is also relatively good.

Flutter's rendering performance is good, thanks to the fact that it is based on the Skia graphics library, so its performance is superior. When migrating from native to a framework such as a large front-end, the performance of UI rendering itself is a very fancy item when you choose, and Flutter just has this advantage. The APP interface can be opened, and the opening speed should be fast, preferably as smooth as the natively developed APP, then this framework has a great advantage.

——  5  ——

The original Flutter was mainly used on mobile platforms, that is, Android and iOS. With its popularity, its ambitions began to expand. It began to support Web and Windows. Now the newly released Flutter 3 supports macOS and Linux. It's all inclusive with the desktop.

Flutter 3’s support for the six major platforms is not only rendering, but also interaction models, internationalization, construction, etc., that is, it encapsulates the capabilities of the underlying operating system, and developers can use them well and focus on the UI. Reuse and business logic planning.

For programmers, UI design has always been a headache. It is no problem for us to write code, but it is a bit difficult for us to write a system with a beautiful interface (if you have a designer girlfriend, I didn’t say it).

Now, you don’t have to worry about this kind of problem anymore. Flutter is designed based on Material Design, so we can easily use Flutter to write beautiful interfaces.

——  6  ——

To choose Flutter, a relatively high threshold may be the Dart language. This is a new programming language. It is completely popularized by Flutter. As for why Google chose Dart as the development language of Flutter, there are many chats. You can Google it yourself.

Now we have large front-end frameworks such as Flutter and Electron, as well as native development methods. As for how to choose, it still depends on your own business scenario. Ask yourself three main questions:

  1. Does your application need to span multiple platforms?

  2. Can Flutter, etc. provide the system capabilities used by your application?

  3. Save labor costs and improve development efficiency?

If all "YES", then the big front end is your better choice! ! !

—— Wonderful recommendation ——

GitHub launches AI-based code auto-completion tool Copilot

446321bdfb497414214bc425790f7e55.png

Scan code attention

Share, like, watch is the biggest support

Guess you like

Origin blog.csdn.net/flysnow_org/article/details/124812032