03 | 深入理解跨平台方案的历史发展逻辑
03 | 深入理解跨平台方案的历史发展逻辑
讲述:陈航
时长13:22大小10.72M
浅述跨平台开发的背景
跨平台开发方案的三个时代
Web 容器时代
泛 Web 容器时代
自绘引擎时代
我该选择哪一类跨平台开发方案?
小结
思考题
赞 9
提建议
精选留言(54)
- VHJM2019-07-08方案对比表格中的页面级支持和区块级支持是什么意思啊?
作者回复: 页面级和区块级支持表示,跨平台框架中的View和原生的View混用程度。比如Webview我们通常是打开一个新的页面,而RN和Flutter不仅可以支持打开新的页面,还可以在原生的页面中内嵌区块
21 - 月光疾风2019-07-04我就不喜欢web那一套,web有今天的生态是历史进程导致的,很多东西用web开发完全就是强扭的瓜的感觉,但是架不住他们人多非要这样搞。但是在移动平台web一直不算成功,甚至都不如桌面成功,桌面还有VScode这样的应用,但是桌面大多数生产力软件还不是web那一套搞的。
作者回复: Web最大的优势是标准化和生态。我认为判断一个技术是否能成为未来大前端主流技术发展的趋势,主要看这个技术是否能减少对底层宿主环境的依赖,隔离各终端系统差异,能否从原理和运行机制及生态有领先同类产品的表现,向开发者提供统一而标准化的能力。
共 2 条评论18 - Frank2019-07-04老师,小白问句,动态化是指什么?
作者回复: 指代码逻辑放到云端,以下发的方式更新应用程序原本功能的方式。可以理解成玩手机游戏下载新的关卡一样
共 3 条评论13 - !!!2019-07-09作者您好,请问下flutter如果遇到紧急需求,类似活动之类的,如何不发版就上线需求呢?
作者回复: 建议你们把一些常见的活动封装成模板,让后端配置不同的模板就可以实现动态化了
共 2 条评论5 - 咖啡凉了2019-07-08大家觉得如果Flutter 流行起来,Apple 会对其进行限制吗?
作者回复: 从内部看,Flutter的实现原理和运行机制是满足Apple政策的;从外部看,除了禁止热修复这种动态修改App功能的方案之外,苹果还没有限制过任何一个跨平台框架。 Google和Apple都是顶尖的科技巨头,相信他们之间会对跨平台技术的边界有过沟通,也相信Apple的胸怀。
共 4 条评论5 - zhaosc2019-07-04再不拥抱就晚啦。 我能说以上的跨平台框架都经历过吗?😂
作者回复: 厉害了
共 2 条评论4 - Geek_45a2f12019-07-04老师,咱们到后面是视频讲解,还是一直都是这样的图文讲解
作者回复: 图文和音频是没问题的哈。如果有讲不清楚的地方我们会用视频。
共 3 条评论4 - 陈启年2020-02-29记得苹果将封杀动态化,那么是不是只有一个选择了?2
- 花有缺2019-07-22在跨平台领域,Qt和cocos都做的还不错,但是Qt用的c++语言开发,社区一直没咋起来,cocos2dx是游戏引擎,最初也是C++,后来转向lua和js,它自己封装了OpenGL ES的接口进行渲染,自己开发了一套UI框架,虽然这套UI框架并不完善,我觉得flutter和cocos有很多相似的地方,都是自己独立搞了一套渲染机制,一套UI框架,开发使用较为轻量的语言,而不是直接使用c++。
作者回复: 赞
2 - 信仰年轻2019-11-21老师,flutter现在android支持热修复了,图表没有修改
作者回复: 首先,出于应用市场合规、性能和安全考虑,Flutter官方不会支持热修复能力; 其次目前市面上的热修复方案指的是产物替换(vm_snapshot_data、vm_snapshot_instr、isolate_snapshot_data、isolate_snapshot_instr),这个方案是一个单端方案,只支持Android,并且只支持纯Flutter应用,基本上就把使用场景锁死了。
1 - Android~小强2019-10-15动态化 老师 我觉得还是很重要的 dart可以动态化吗
作者回复: Dart是否可以动态化取决于容器。现状是还不支持,从规划上看也受限于应用市场的政策,不属于后续重点发展方向。 如果你的业务动态化需求很强,可以考虑在应用内部内置一些模块,快速搞一些简单的可配置能力;另一个方向是借助于符合审核标准的JS虚拟机去做一些事情:https://github.com/TGIF-iMatrix/MXFlutter
1 - 衣知世 与 计知白2019-10-14老师,Flutter在播放视频时是如何操作呢?比如android和ios两端都有,这样是不是还得要求开发人员分别会两个平台的原生需要呢?
作者回复: 需要使用插件支持
1 - 早起不吃虫2019-09-22动态化能力是什么?
作者回复: 指的是不依赖于程序安装包的更新,就能进行动态实时更新页面的技术。
1 - Geek_b20f6f2019-09-17web容器不支持“区块”怎么说,实践上有一些场景在原生页面中嵌入一块H5片断。应该算支持吧?
作者回复: 严格意义上可以算,但以区块的方式最大的问题在于需要原生能够感知webview的渲染高度,目前有一些hack的方法,比如lod完成时候执行一段js代码获取主文档高度,界面会有比较明显的抖动,所以实际一般很少用
1 - 工匠若水2019-07-18Skia1
- 陌上花开12019-07-12用过Xamarin,感觉也不错1
- Norman2019-07-10老师好,请问维护成本的高低是怎么计算出来的?是该语言的学习难度以及复杂程度吗?
作者回复: 是指多端/多系统绝对一致性,开发者的适配成本越高,维护成本越高。比如操作系统升级,换不同的手机Rom
1 - 、、cryAllen2019-07-05搭建过一个Hybrid开发框架,引擎以cordova为主,看中的就是它的成熟解决方案和丰富的插件生态社区,之前也对比过RN/weex,那时候坑比较多,还是有待观察就没入手了。现在转而关注Flutter
作者回复: Welcome to Flutter
1 - liyuan2019-07-05React Native 虽然能让前端快速上手,但是有填不完的坑。不考虑flutter的话,目前还是原生+web最稳妥
作者回复: 我认为判断一个技术是否能成为未来大前端主流技术发展的趋势,主要看这个技术是否能减少对底层环境的依赖,隔离各终端系统差异;能否在效率、质量和性能三大维度上,从原理和运行机制层面有领先同类产品的表现,向开发者提供统一而标准化的能力。 按这个标准Flutter和Web都站在了大趋势上。
1 - 🐳冉🌊2022-07-04这些跨平台语言的通病就是做不到完全统一的平台适配 总会有差异性兼容代码加入,不少开发者共享的三方库 也只能支持其中一部分热门平台(安卓,iOS),不过长远看还是这值得学习的毕竟是个趋势!