您好,欢迎来到二三四教育网。
搜索
您的当前位置:首页苹果禁止JSPatch

苹果禁止JSPatch

来源:二三四教育网

最近几天,苹果禁止JSPatch的事件比较热,最近几天也做了一点思考。

双重标准

  • 禁止脚本下载代码,改变App的默认属性,从这个角度讲,JSPatch主要用来做“热修复”,解决线上bug,用到的情况比较少。比如我们就只用到了3~4次而已,每次的代码改动不超过50行。
  • React Native,weex等“热更新”,其主要功能就是用JS来替代Native,进行web式开发,是堂而皇之的用脚本改变App功能
  • JSPatch被禁止了,React Native,weex没事,这个就相当于小偷小摸被抓了,强盗没事一样。
  • WebKitJavaScriptCore可以作为例外,因为苹果提供了这些技术
  • runtime其实也是可以用的,因为苹果开放了它的API
  • JSPatch只是把JavaScriptCoreruntime结合起来,结果就不能用了

苹果的忧虑

  • 得开发者得天下,当年苹果能够迅速起来,苹果商店吸引了一大批开者是很重要的原因。比如,本人是传统行业用c写小应用的,也转过来了。现在的情况是,iOS开发者逐步转JS的前端开发者,国内的趋势特别明显。
  • 开放JavaScriptCore只是给JS开了小口子,不过现在JS逐渐成为移动开发的主流技术,苹果自己推的Swift,在JS面前显得软弱无力
  • Swift试图采用泛型替代runtime,不过效果很差,开发者对runtime形成了依赖。runtime和JS,原本是苹果漏了口子,准备小范围应用的技术,现在成了主流,并且危害到了自己的技术,不论是Obejct-C还是Swift,都有被再次边缘化的危险。

苹果的应对

  • 应用商店审核时最后的手段了
  • 通过安全性的接口,希望开发者减少JS的使用,增加Native的比例
  • 希望开发者转Swift,而不是JS
  • JSPatch不是腾讯的主流,先禁一下,看看反应
  • React Native,weex,微信小程序等应该是主要目标,只是顾忌背后的庞然大物,不敢贸然下手

苹果的期望

  • 加强应用商店审核,重新把控生态系统
  • 普及Swift,容忍Object-C,开发者重新回到Native
  • 用泛型替代runtime,隐藏runtime相关的API
  • 取消JavaScriptCore,降低JS的使用比例

作为iOS开发者,怎么办?

  • 如果有机会用Swift,那就安心用吧,这是苹果期望的方向
  • 如果坚持用Object-C,那也没问题,这是Native的,也是苹果希望的开发方式
  • JS学起来也没问题,多一项技术总是好的。并且现在JS如火如荼,连苹果都不敢贸然下手
  • 至于React Native,weex,根据需要吧,选一个就行。目前这两个各有特点,很难说一个比另外一个好。
  • 这次是苹果的危机,同样也是iOS开发者的危机。根据具体情况,灵活应变吧
  • 在最终结局出来之前,做预测意义不大,先照顾眼前再说。

对苹果有信心吗?

  • 如果还是乔布斯掌舵,对苹果可以有80%的信心(不说100%只是留个余地)
  • 苹果的特色是安全、快速、良好的体验,而不是功能、兼容性、跨平台
  • 目前JS已经危及iOS开发者的生存;当开发者都离开苹果,转投JS前端开发之后,苹果也差不多被边缘化了。当年PC平台微软发生的事在移动平台的苹果上将重演
  • 不禁止JS,Swift基本上起不来,至少国内是这样的
  • 苹果产品也越来越失去自己的特色,开始拼功能、拼配置、还有多种尺寸屏幕---渐渐地跟一个普通Android产商也差不多了。目前的状况,只是在硬件领域发生的事传导到软件开发领域
  • 目前,我对苹果只有50%的信心(不说20%只是自己乐观向上的心态)。作为iOS开发者,尽快开始转JS,毕竟还是要吃饭

关键因素

  • 苹果是否有决心禁止JavaScript?
  • 如果有这个决心,苹果还有生存的机会;
  • 如果没有这个决心,苹果将被边缘化,开发者由于生存压力,转JavaScript前端开发。微软在PC输给Java的事情在移动端将重演
  • 如果是乔布斯时代,苹果会这么做,体验和生态是他最看重的
  • 目前是库克时代,没有信心,从这几年苹果推出大屏,增加功能,学习Android等等来看,越来越没特色。

选择

  • 当然希望苹果坚定往swift的方向走,坚持自己特色,才有生存的空间。至于JavaScript等脚本,用在命令自动化方面就可以了,或者后台开发,这才是动态更新应该考虑得地方
  • 适应环境,现在学JavaScript,转前端。语法跟swift有点像,也不浪费。
  • Swift转业余时间或者延后,先解决眼前的问题最重要。
  • swift3的重点是API的学习和使用,写一些小工具。代码托管从GitHub转到码云,就像写东西从Gitbook转到简书一样
  • 继续当吃瓜群众看戏,看苹果到底有没有魄力维护自己的生态系统,保持自己的特色。
  • Mozilla有个开发者写了一篇关于Firefox OS的文章,其中有一条教训就是坚持自己的特色和做自己擅长的,不是拼功能,不迁就市场与合作伙伴。关于这一点,此时的苹果很有参考意义。苹果能吸取教训吗?苹果有这个决心吗?苹果会珍视自己的特色吗?

参考文章

Copyright © 2019- how234.cn 版权所有 赣ICP备2023008801号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务