flutter 2023年了,吐槽下其可读性真的差

发布于 1周前 作者 yuanlaile 来自 Flutter

比如 web 开发里的 html 或 jsx ,都是能从代码看出结构的,但 flutter ,编辑器一格式化完,那完全没法看。再复杂点就要拆成组件来提高阅读性了。
另外 web 开发里 html ,js ,css 这三者是分开的,但 flutter 里这三者相当于合一起了,从这角度看 flutter 乱成了一锅粥。


flutter 2023年了,吐槽下其可读性真的差
17 回复

现代语言基本上开发者都是不喜欢一些老旧设计的,
比如“ html ,js ,css 这三者是分开的,”你觉得是优点,但现在可不止 flutter 在把这些混起来,

更多关于flutter 2023年了,吐槽下其可读性真的差的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


我感觉挺好的,要用好逗号

面向过程开发是这样的,所有功能揉成一坨,最后变成屎山。

哈哈 你说得好对 因为我就是这么想的
SwiftUI 那种也挺好、flutter 也比较能接受

我跟 OP 一样,作为一个主后端的,我更喜欢 MVVM 风格。像 WPF 、Angular 。有条理,有层次,有设计。

可怜的逻辑脚本就淹没在了布局与样式代码里,不过用了状态管理库,加上合理地提取通用代码 /关键代码,剩下的脚本好像就是为 ui 展现服务的,这样想混在一起也没什么了

有利有弊吧。

我学 web ,现在的痛苦了,我要学 react ,学 html ,学 css ,学 js 。
最少最少,要学 4 样东西,才能写 web 。

但学 flutter ,只要学一样东西。


会的人,当然会说,很简单的,不用会,了解一下就行。
但从 0 开始自学,我觉得差别很明显。


flutter 是我现在学过的,最傻瓜的东西。
远远比 Android 原生、iOS 原生、web 、java 后台,简单。而且简单了不是一点点。

请使用 vscode 和 jetbrain 的 split panel 功能

比代码简洁可能没有语言能和 python 比 比 html 简洁 估计就 pug haml 这种了 比 css 简洁就是 sass stylus 了

有个叫 flutter-view 的项目 混合了这 2 点 …

需要自己合理重构编写 ui 部分代码,抽成 Widget/ 或者是 method ,这样可读性就好了。而复杂的 widget 是一定有必要抽成多个子 widget 组合起来的。

逻辑代码本身就不应该和 widget 写在一起,而且抽到 viewModel 层,widget 层也就是 ui 层只 相应 viewModel 的数据的变化刷新 ui

修正一下错别字:逻辑代码不应该和 widget 写在一起,而是抽到 viewModel 层,widget 层( ui 层)只 响应 viewModel 的数据的变化重新绘制 widget

jsx 其实也基本上是合在一起的,但是要把握个度,flutter 不好的一点是它很多情况下是一个样式套一层,非常恶心,比如 Padding 这种,这在 web 中只是一个属性,但是在 flutter 里他直接是一个 widget ,这是非常恶心的事情,样式一多嵌套就非常非常多

感觉 11 楼说的对,做好 widget 抽象很重要

flutter 团队原来是做 web 优化的;你猜他们为什么不继续做优化,重启一套,而且还不遵守 标签 样式分开的设计思路?

关于Flutter在2023年的可读性问题,确实,这是一个值得深入探讨的话题。不过,在正式“吐槽”之前,我想先澄清一点:Flutter作为一个跨平台的移动UI框架,其设计初衷是为了提供一套高效、统一的开发体验,而这在一定程度上确实对代码的可读性产生了一定的影响。

Flutter使用Dart语言作为其开发语言,而Dart本身在语法上确实有其独特之处,这可能对一些习惯于其他编程语言的开发者来说,存在一定的学习曲线。此外,Flutter的组件化设计虽然提高了开发效率,但也使得代码结构相对复杂,对于初学者来说,可能会觉得难以快速上手。

然而,我们也不能忽视Flutter在提升可读性方面所做的努力。例如,Flutter提供了丰富的文档和示例代码,帮助开发者快速理解其组件和API的使用方法。同时,随着社区的不断壮大,越来越多的开源项目和教程涌现出来,为Flutter的学习和使用提供了丰富的资源。

总的来说,Flutter的可读性确实是一个需要持续改进的问题。但与此同时,我们也应该看到Flutter在提升开发效率、实现跨平台一致性等方面的优势。对于开发者来说,通过不断学习和实践,逐步掌握Flutter的开发技巧和最佳实践,是提高代码可读性的关键。因此,我建议大家在吐槽之余,不妨多尝试一些新的学习方法和工具,以更好地适应Flutter的开发环境。

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!