哈喽,我是老刘
我本人是带客户端团队的,带着团队切换到Flutter上也已经差不多6年了。
但也不是只写客户端App。基于Flutter来说,也写过桌面端、Web端程序。
但是坦白说,真没有一个Flutter项目是同时覆盖6个平台的。
为啥呢?
我觉得很多人理解的夸6个平台可能是个伪命题。
大多数项目不具备跨越6个平台的资格
来看看我们常用的软件
微信
最开始有个web端,后来被放弃了,现在只有手机端和桌面端
支付宝
好像主要就是手机端
爱优腾等
手机端、Web端倒是比较全,但是桌面端就不怎么全了。
其它的我就不一一列举了。
你看即使是那些国民级的应用,也没有横跨6个平台的。
我自己用的软件中,真正横跨六个平台的好像只有Obsidian。
但是Obsidian的内核是web技术,只不过在PC端基于Electron而移动端基于Capacitor。
所以某种程度上可以理解为在6个端,分别给web内核套了一个不同的壳。
为什么极少有软件横跨6个平台呢?
我觉得大致上有三类原因
1、应用场景不需要
比如像支付宝这样的软件,主要的应用场景就在手机上,开发pc端的价值不高。
2、Web端可以代替桌面端
目前PC上浏览器的性能和流畅性都已经非常好了。
所以除了少数交互非常重的软件外,大多数以信息展示为主的软件都可以在Web端流畅运行。
而且PWA和Webassemble两种技术又进一步提升了Web的覆盖范围。
如果用户不需要安装单独的软件就可以得到足够好的使用体验,而开发者也不需要发布新版本就可以更新功能,那是不是比单独开发一个PC端好得多呢?
3