跨平台开发可能带来额外的不确定性, 如果要用, 一定要有个好靠山

2019 年 9 月 28 日
 iugo
跨平台一般宣传的优点在: 代码写一次, 运行在多处.

只是听上去挺好的, 但真正落地还是挺多问题.

我最近遇到的还不是这样的问题, 我只是想用我习惯的语言与框架开发, 都没想过运行在多处, 可是一样有问题.

包括 TypeScript 在内的各种语言编译为 JavaScript. 因为只涉及语言本身, 所以用起来没什么问题.

但涉及到 UI 结构的就不这么简单了.

- React Native.
- Flutter.
- 用 Python 语法开发小程序. (最近看到的)
- 以 React 语法开发小程序. (Taro, remaxjs)
- 以 Vue.js 语法开发小程序. (uni-app)

我喜欢 React 的抽象化思想, 目前团队也都是相关技术栈. 希望在开发微信小程序及钉钉小程序的时候也能用上 React. 目前计划在微信小程序上使用 Taro, 但是对于钉钉小程序, 在犹豫. 如果真考虑执行效率, 就直接写, 如果考虑开发效率, 为什么不 Next.js 呢?

在微信小程序上使用 Taro 很大一部分原因是因为京东商城微信小程序. 既然京东都可以在业务上使用 Taro, 我们这么小体量不会遇到比他们更多的问题. 我们把京东看作 Taro 靠山, 选择了信任.

但 Taro 并不原生支持钉钉小程序, 过往一些阿里系的东西最终的结果, 也都让我们不敢靠近. 以什么方式进行钉钉端应用的前端开发, 让我很犹豫. 目前我个人是倾向做网页的, 服务器端渲染可以用 Next.js.
3245 次点击
所在节点    程序员
9 条回复
blless
2019 年 9 月 28 日
你说的是客户端前端吧,服务端后端不带 gui 的程序基本就跟 cpu 架构相关了,这块也语言层面就支持了,加上 docker 之类的大杀器,跨平台已经是基本操作了
lidfather
2019 年 9 月 28 日
@blless docker 跟跨平台没关系
Raymon111111
2019 年 9 月 28 日
真正落地?

java?
geekdocs
2019 年 9 月 28 日
我们在用 Flutter~
imicksoft
2019 年 9 月 28 日
今天刚看到一个 ring-lang,支持多平台,UI 用的 QT
zhangdszq
2019 年 9 月 28 日
我们也在用 flutter 在线教育
luoway
2019 年 9 月 28 日
web 页面本身就是跨平台的,现在各种原生开发跨平台框架、小程序,都标榜着性能优、开发快,实际却事倍功半。
事实上,有些公司产品的小程序内容就是内嵌 web 页面。对于项目快速落地而言,这就是很好的解决方案。
zhuzhibin
2019 年 9 月 28 日
跨平台必须解决的问题就是兼容问题 毕竟不同的平台有自己的运行以及渲染机制 我目前也是使用 Taro 比较头疼的就是兼容多端带来的项目架构的问题 目前感觉有点乱 不知道有什么很好的方案能够支持这种跨平台的重构 或者说如果更好的管理跨平台开发的项目
iugo
2019 年 9 月 28 日
@zhuzhibin Taro 在组件套用渲染 JSX 的时候, 会有点问题, 比如 https://github.com/NervJS/taro/issues/4190 . 组件化的能力比 React 降低了很多.

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

https://v2ex.ih06.com/t/605020

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

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

© 2021 V2EX