gpt4 book ai didi

flutter - Flutter 有很多嵌套的小部件是不是很糟糕?

转载 作者:IT老高 更新时间:2023-10-28 12:34:07 26 4
gpt4 key购买 nike

我有很强的 Android 开发背景,现在我正在尝试使用 Flutter 开发我的第一个应用。

Android 社​​区的一个常识是嵌套 View 太多是不好的。这对性能不利。 (这也是 ConstraintLayout 存在的原因之一)

但是,在 Flutter 教程中,我看到人们嵌套了很多小部件。

有人可以确认用 Flutter 嵌套小部件不是问题吗?如果我这样做,我的应用是否会出现性能不佳的问题?

提前致谢

最佳答案

TL;DR:建议在 Flutter 中深度嵌套单一用途的小部件。


Android 和 Flutter 渲染 View 元素(也称为小部件或 View )的方式存在根本差异。

在 Android 中,相互继承的复杂 View 相对较少。每个 View 都提供了一个巨大的 API 界面,包括填充、边距、颜色等。

另一方面,Flutter 更倾向于组合而不是继承。大多数小部件仅出于单一目的而存在,并且非常轻量级。这意味着您需要更深入地嵌套小部件以实现相同的效果,但由于它们的布局和渲染逻辑更容易,渲染通常更快。

例如,有一个 Padding 小部件在其子部件周围留出一些空间。Padding 小部件的规则非常简单,渲染速度非常快。此外,每个其他小部件的规则也变得更简单,因为它们不再需要担心填充。

基本上,Flutter 推荐深度嵌套小部件。这与 Android 的模型完全相反:如果没有太多嵌套,您可能做错了什么,因为您有一个巨大的小部件,通常可以拆分成更简单、更快、更小的小部件。

这是 interesting Google Tech Talk about Flutter's rendering pipeline ,我推荐给任何对此主题感兴趣的人。

关于flutter - Flutter 有很多嵌套的小部件是不是很糟糕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54193724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com