对于没做前端的人来说, FLUTTER 简直就是救星..

2019-05-11 11:56:52 +08:00
 largecat
没做前端的, 去做 UI 的话各种不适应, 因为组建太多,属性太多,记不住啊.不能熟练应用. 需要以个事件属性, 不知道哪个组件有, 每次一个实现都要翻文档.

flutter 完全避免了这个问题, 任何东西都是小零件
你要显示以个圈, 那就丢个 container 设置成圈圈, 你想它响应触摸, 你就套个 Gesturedetector,
你根本不用去记哪个圆形组件有触摸,哪个圆形组件没有触摸,
因为一切都是零散的,
你可以随心所欲的根本不用特意去记某一些东西. 一些初步的了解就能随心的做出各种组合式的布局和事件响应机制,而且 material design 简直很美啊有没有,,

还有, 因为 IT 行业更新快, 人不可能一直有精力去学新的东西, 所以每有新东西出来,都会得到老玩家的排斥, 比如 flutter 的嵌套风格,
如果完全忘记老的 ui 做法, 这个新的嵌套风格可以所学习成本是非常低,非常顺手的.
但是老玩家可能会排斥, 希望一切做法还是自己原先的做法, 但是话说回来, flutter 一切都按老的做法,那就不是 flutter 了,

就好比 java 的人希望新的东西一切都要按 java 的规矩来, 那新的东西没必要出来了,出来了也是另外一个 java,
是不是,

可能利益的切换难免会受到旧事务的抱怨和抵制..

但是 flutter 的 UI 涉及风格的学习成本几乎比 html css js 的风格学习成本低 90%以上,,,以我自己学习和使用的感受,
曾经 html 页面布局折腾的我够呛....
后期扩展开发的话, 现在 flutter 也有自己 bloc 之类的状态管理机制, 前端和后端是完全独立开来的,
23850 次点击
所在节点    程序员
72 条回复
dog
2019-05-11 16:49:41 +08:00
@nguoidiqua 首先我说 MD / BS 不精致,和它是否开箱即用无关。我也阐述了我认为好看的 UI 应该如何、以及为什么我认为 MD 不好看。我觉得我这是非常友善的讨论。你问我 我认为的有什么更好的,我也给了你两个例子,以及理由,你觉得相去不远,那就继续用 MD 就好了。何必来杠?到底是谁在说废话呢?
nguoidiqua
2019-05-11 17:27:26 +08:00
@dog 你觉得友善就是友善,你觉得别人审美差就是审美差,你觉得好看就是好看,你觉得丑就是丑,对吧。

不讲那么多,我就问你,针对楼主的需求,你能提供更好看的选择吗?难不成你说这些只是为了表明你的审美比楼主高。

那我知道了。
dog
2019-05-11 17:30:10 +08:00
@nguoidiqua 傻逼
jin5354
2019-05-11 17:39:13 +08:00
?? 评论比主贴好看
okayz
2019-05-11 17:44:41 +08:00
嵌套太懵逼。。
nguoidiqua
2019-05-11 17:51:51 +08:00
@dog 你不是很友善吗?你不是见得多了吗?

喷别人的时候就举世无双,好像你比 BS/MD 的设计都强出一个世纪一样。这种东西本来就是个人喜好的问题,非要跳出来喷别人审美,还一喷一个群体。
dog
2019-05-11 18:06:20 +08:00
@nguoidiqua 遇到不会好好讨论的傻逼我当然也可以不友善,比如你这种
wly19960911
2019-05-11 18:17:52 +08:00
论嵌套,react 和 flutter 没什么区别啊,而且 react 的成本还比 flutter 大。换成 html 之后,后端就能接受嵌套语法?
janxin
2019-05-11 18:18:07 +08:00
首先虽然我也是非常喜欢 Flutter 的,不过确实有几点我觉得还是提一下比较好。

一个是对比 React,React 的 UI 库提供的功能也是非常方便和简单的,对后端同学也比较友好,相对来说 Vue 对后端可能不太友好一点。借助 TSX 则可以扩展更多的类型提示,也是非常强大的。推荐楼主可以了解一下。React 确实是一个很有意思的框架,非常值得学习。

另外一个是,嵌套确实是一个问题,一坨真的没有美感。在这一点上,同样是嵌套,对比上 React 是要好上一些(虽然有时候也很恶心)。不过现在好消息是,Flutter 1.5 + Dart 2.3 之后很多的情况是代码如果简单使用就不会像之前那么冗长了,这个情况要比之前好上不少。具体可以看一下 Dart 的官方博客:

https://medium.com/dartlang/announcing-dart-2-3-optimized-for-building-user-interfaces-e84919ca1dff

还有一个是关于界面组合,我觉得网页开发也好,原生 GUI 开发也好,Flutter 也好,都是概念非常多的拼接组合,本质上没有什么太大区别,就是写法有些区别罢了...
AndroidEngineer
2019-05-11 18:19:48 +08:00
嵌套是真的不喜欢好吗?怎么会有人认为方便!无语
reus
2019-05-11 18:35:31 +08:00
嵌套不喜欢?那 html 就没有嵌套了?
murmur
2019-05-11 18:37:13 +08:00
@wly19960911 xml 那是全程序员都学过的语法 html 也算 xml 的一种 jsx 当然也像 xml
然而 flutter 那是没有 jsx 裸写 render 方法
wly19960911
2019-05-11 18:40:04 +08:00
@janxin 我感觉抛弃 HTML 之后的声明式语法比 HTML 看起来舒服多了,而且 dart 没有 js 版本的兼容问题,源码想看就看,js 没有人提供 source map 的话,你就自己猜吧。

至少看了些 flutter 原生提供的组件思路,结合看看源码,对我个人还是很受益的。
murmur
2019-05-11 18:41:12 +08:00
@wly19960911 我们写 react 用的 es5 的语法 sourcemap 有是锦上添花 没有的话一样可以
qwertyyb
2019-05-11 18:45:27 +08:00
这一层层的嵌套,一层层的小括号,有种回调的即视感。相对来说还是 Xml 的嵌套更为直观一些,可读性也更好
wly19960911
2019-05-11 18:52:23 +08:00
@murmur 裸写 render ?

const myheader = (name) => <header>{name}</header>;

这样定义?(手机手打)如果这样的话,dart 也可以做。我只是感觉嵌套下,其实没什么区别。不过我不是争论 react 和 flutter 的优劣,从语法上 HTML js 混合的声明语法对我来说比声明 class 思考起来更麻烦。和你理解 flutter 类似。

这还是 react 好,换成 vue 和 angular 模板写法,创建组件麻烦的要死,不少人多创建一个组件都嫌麻烦
kuyuzhiqi
2019-05-11 19:00:49 +08:00
新的 Android studio3.4 界面优化了,更加友好了
abcbuzhiming
2019-05-11 19:35:22 +08:00
@wszgrcy 没错,但是 CSS 同时难学难用容易遗忘
ace12
2019-05-11 19:38:39 +08:00
flutter 那嵌套不比 html 难受?
tianyu94
2019-05-11 19:43:10 +08:00
@dog 什么是精致?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/563107

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX