Although flutter is good, it is not said that it can replace everything, some projects are obviously oriented to Chinese, and they have to hold on to flutter, and the shortcomings are said to be advantages, which is too hateful. This article analyzes Flutter in detail. 10 experienced front-end development and UI design veteran drivers at Berg Front-end Workshop, to share with you.The following text is an AI answer, and does not carry my own point of view, so please do not sit in the opposite seat.
Flutter is an open-source mobile app development framework developed by Google that can be used to quickly build high-quality, high-performance cross-platform applications. Flutter uses the DART language as its development language and provides a rich set of UI components and tools that make it easy for developers to build beautiful, smooth user interfaces.
Flutter's history dates back to 2015, and here are the key milestones of Flutter:
2015: Google internal project Flutter started as a project within Google to give the Google Ads team a new way of developing mobile apps.
2017: Flutter Open Sourced After a period of internal development and testing, Google open-sourced Flutter in 2017 and released its first alpha version.
2018: flutter 10 Releases After more than a year of development and improvement, Google released Flutter 1 in December 2018Version 0, officially announcing that Flutter has entered the stable stage.
2019: Flutter Interact Google hosted its inaugural Flutter Interact conference in 2019, announcing a slew of new features and tools, including desktop support for Flutter, Flutter for Web, and more.
2020: Flutter 20 releases After several versions of iterations and improvements, Google released Flutter 2 in March 2021Version 0, which introduces many new features and improvements, including support for the stable version of the desktop app, the stable version of Flutter for web, etc.
2021: Flutter's Widespread Use in China Flutter has been widely used and recognized in China, and many well-known Chinese companies and developers are using Flutter to develop apps, including WeChat, Meituan, Didi Chuxing, Tencent**, etc.
Flutter is suitable for the following development scenarios:
Cross-platform app developmentFlutter is a cross-platform mobile app development framework that can run on multiple platforms such as iOS and Android, allowing developers to build consistent user interfaces and features across different platforms by writing only one set.
Native App Alternative:If you need to develop an app with a complex user interface and high-performance needs, and you don't want to develop with the native development languages and tools of iOS and Android, respectively, then Flutter is an excellent choice. Flutter's custom UI components and high-performance rendering engine provide a smooth user experience.
MVP MVVM architecture application development: Flutter provides a wealth of UI components and state management tools, which can well support architectural patterns such as MVP (Model-View-Presenter) and MVVM (Model-View-ViewModel), making application development and maintenance clearer and more efficient.
Embedded Application Development:Flutter can be used not only for mobile app development, but also for embedded app development, such as smart home control panels, smart watch apps, etc. Flutter's custom UI components and cross-platform features are a great fit for embedded applications.
Rapid prototyping:flutter has a hot reload feature that allows you to see the effects of changes instantly, speeding up development iterations, making it ideal for rapid prototyping and validating ideas.
It is important to note that while Flutter can be used to develop various types of applications, some specific platform-specific features and APIs may need to be implemented using Flutter plugins or custom development. When choosing to use Flutter, you need to consider the needs of the project, the technical background of the development team, and the support of specific features of the platform.
Flutter is a cross-platform mobile app development framework with the following advantages and disadvantages:
Pros:
Cross-platform development: Flutter develops apps using a single** library that can run on multiple platforms such as iOS and Android, greatly reducing the effort of developing and maintaining multiple platforms.
Rapid development: Flutter provides a wealth of components and tools to quickly build a beautiful and smooth user interface, and provides a hot reload feature to instantly see the effect of modifications, speeding up development iterations.
High performance: Flutter uses its own rendering engine, SKIA, which can draw UI directly, regardless of the platform's UI components, with excellent performance, and can provide smooth animations and response speed.
Custom UI: Flutter provides a rich library of custom UI components and animations, allowing developers to freely customize and create unique user interfaces to meet the design needs of different applications.
Powerful development tool support: Flutter provides a wealth of development tools and plugins, such as Flutter DevTools, Flutter Inspector, etc., which can help developers debug, optimize performance and analyze.
Cons:
Relatively new: Compared to other mature cross-platform development frameworks such as React Native and Ionic, Flutter is relatively new, has a relatively small ecosystem, and may have some immature components and libraries.
Larger size: Since Flutter includes its own rendering engine and UI components, the installation package size of the application is relatively large, which can increase the cost of the user** and installation.
Need to learn Xi new programming language: Flutter uses the DART language for development, and for developers, it may be necessary to learn Xi new programming language and syntax, which increases the cost and difficulty of learning Xi.
Platform-specific feature support: Since Flutter is a cross-platform framework, some platform-specific features and APIs may not be directly available and need to be implemented through plugins or custom development.
To sum up, Flutter, as a cross-platform mobile app development framework, has the advantages of rapid development, high performance, custom UI, and strong development tool support, but it also has disadvantages such as being relatively new, large in size, requiring Xi to learn new programming languages, and platform-specific feature support. When choosing to use Flutter, developers need to consider the needs of the project and the technical background of the development team.
Flutter is widely used in China, and many well-known Chinese companies and developers are using Flutter to develop applications. Therefore, projects for Chinese can be developed using flutter.
Here are some of the well-known Chinese apps developed with Flutter:
WeChat: The WeChat team used Flutter to develop a tool called"Flutter version of WeChat"The app received a lot of attention during the closed beta test in China.
Meituan: The Meituan-Dianping team used Flutter to develop a merchant-side app for Meituan Takeaway, which received good user feedback after Flutter was launched.
Didi Chuxing: The DiDi team used Flutter to develop Didi Chuxing's driver-side app, which has achieved significant improvements in performance and user experience.
Tencent**: The Tencent team has developed some of Tencent's features using Flutter, which can achieve an efficient and user interface.
Zhihu: The Zhihu team used Flutter to develop some of Zhihu's features, through which a smooth user interface and animation effects can be achieved.
It can be seen that Flutter has a wide range of applications in China, whether it is social networking, e-commerce, travel or ** and other applications in various fields can be developed with flutter. Therefore, if you have a project for Chinese, you can definitely consider using flutter for development.
Here are some cross-platform development frameworks that are similar to Flutter's benchmarks or features:
react native:React Native is a cross-platform mobile app development framework developed by Facebook that uses J**Ascript to write applications and render them using native components. Similar to Flutter, React Native offers rapid development, hot reloading, and cross-platform capabilities.
xamarinXamarin is a cross-platform mobile app development framework developed by Microsoft that writes applications in C and provides access to native APIs for iOS and Android. Compared to Flutter, Xamarin offers performance and features that are closer to native.
uni-app:It is a Vue-based modelJS is a cross-platform application development framework that can be used to develop applications on multiple platforms such as iOS, Android, Web, and Mini Programs.
nativescript:NativeScript is a j**ascript-based, cross-platform mobile app development framework that builds applications using native UI components and APIs. Similar to Flutter, NativeScript offers the ability to develop across platforms and perform natively.
cordovaCordova is a cross-platform mobile app development framework developed by Apache that uses HTML, CSS, and JavaScript to build applications and plugins to access native device functionality. Compared to Flutter, Cordova focuses more on developing using web technologies.
ionic:Ionic is a cross-platform mobile app development framework based on web technologies that uses HTML, CSS, and J**Ascript to build applications and access native device functionality using Cordova or Capacitor. Similar to Flutter, Ionic offers the ability to develop quickly and cross-platform.
These frameworks all have certain similarities and cross-platform development capabilities, but they also have their own characteristics and application scenarios. Choosing the right framework depends on the needs of the project, the developer's tech stack, and personal preferences.
Conclusion: Any technology has its application scenarios and living soil, and there is no noble or low technology. There are people who use technology, especially some fake foreign devils, who ignore the facts and favor a certain technology.Technology selection is an empirical job, and I hope that the old iron will make a choice after considering it all.