内容简介:GDD 2018 圆满结束,总结一下我在GDD之旅中两天的所见所闻。GDD 这次时间安排的相对紧凑。主会场和分会场不少时间段都同时开展演讲,因此有意识的安排好自己的行程,对参加演讲十分有帮助,另外也可以也会根据现场情况临时调整安排。会前我根据GDD 官方的日程表,选择了一些自己感兴趣的topic,从机器学习的TensorFlow、Flutter、Web,从技术性讲演和商业讲演,都有所涉及,突出一个广字。事实证明,这种选择并非正确,很多高大上的标题,不一定有实质性的干活。反而是分会场的一些场次,技术性内容比
GDD 2018 圆满结束,总结一下我在GDD之旅中两天的所见所闻。
行程安排
GDD 这次时间安排的相对紧凑。主会场和分会场不少时间段都同时开展演讲,因此有意识的安排好自己的行程,对参加演讲十分有帮助,另外也可以也会根据现场情况临时调整安排。会前我根据GDD 官方的日程表,选择了一些自己感兴趣的topic,从机器学习的TensorFlow、Flutter、Web,从技术性讲演和商业讲演,都有所涉及,突出一个广字。事实证明,这种选择并非正确,很多高大上的标题,不一定有实质性的干活。反而是分会场的一些场次,技术性内容比较强。
总体概要
GDD本次主要设计的主题如下,总体来说和Google IO保持一致。自从Google的重心从 『Mobile First』转移到『AI First』后,Android的日子可谓一天不如一天。从整个会议安排可以发现,TensorFlow的场次和重心都远大于Android,做为一个Android 开发者,可谓是唏嘘不已。
如果不考虑一些技术细节的探讨,整个GDD的感觉就像一位知乎老哥说所的:
- TensorFlow 很NB 你们快来用
- ARCore 很NB 你们快来用
- Firebase 很NB 你们用不了
- Flutter 很NB 你看这么多大厂都在用
TensorFlow Lite
相比于TensorFlow,我对TensorFlow Lite更为感兴趣。可能和从事客户端开发有关,对于AI在客户端的应用场景的探索,我认为非常的有价值。特别是现在客户端的计算能力越来越强,和AI的结合可谓是如虎添翼,实际上,2018年不少手机厂商都在新设备上搭载了智能技术,不管是AI调度、场景识别,或许还有AI跑分?
GDD上,关于TensorFlow Lite的部分,有阿里的闲鱼、网易的有道和腾讯的腾讯视频参与。总的来说,对闲鱼和网易有道印象比较深刻。
闲鱼在TensorFlow Lite在客户端的应用上,做了许多探索,特别是一些安全性和动态化方面,都比较具有实际的落地场景,比如利用AI识别的视频封面关键帧处理、租房中的只能标签处理。
视频封面帧的选取,闲鱼提到,一开始是使用规则打分的方式来评比。建立一套规则,比如帧图像是否模糊、是否花屏等等,规则的涵盖面很大程度上决定了最后选择的效果。如果利用AI来处理,相当于是图片识别和训练,理论上,只要有足够多的素材,可以做到最好的结果分类。另一方面,TensorFlow Lite有一个很棒的特性是,可以在服务端训练得到的TensorFlow模型来转化为TensorFlow Lite模型,闲鱼在动态化上已经有自己的一套方案,那么对线上出现的问题,就很容易通过收集问题素材--训练模型--动态更新模型来修复。
Flutter
Flutter做为Google的一套多端UI框架,感觉在这次GDD上也很热门。演讲者提到,Flutter已经成为Github上活跃排名前Top 50.
我仔细看了下这个表,vue超过了react,还有lantern,感觉故事很多。 Flutter在宣传时,就提到过,在低端设备上也能达到60fps的渲染效果。之前一直觉得不理解:Flutter代码最终还是要转化成native代码运行,怎么就能超过native本身的性能?
从演讲的稿子来看,大致是Flutter SDK中有自己的Skia绘图引擎,并持续对其进行优化迭代。旧设备在不能更新到最新的系统时,图形引擎是无法更新的,而Flutter此时的优势就很好的体现出来。另外,Flutter基于Dart来描述Ui,可能Dart语言对C/C++层的调用也会比 java 来的更为优秀,但想来比起OC来应该没有优势?会场时,有听到同学问Flutter和RN的比较,其实Flutter性能比RN好,但是目前不支持热更新,两者的优势路不在一起,但是个人感觉RN坑多,Flutter还没入坑(可能准备踩踩)。
PS: 现场和闲鱼Flutter大佬聊天了解到,在Android端,Flutter想做热更新很简单,可以通过替换Flutter编译的产物来实现,但是ios部分由于系统限制则不行。
另外一个让我觉得很惊艳的是Flutter的调试 工具 和方法:
上图可能看的不是很清楚,也不是动态的。现场演示的时候,调试工具是可以逐行运行底层代码,想象的效果是:你绘制的图形,是一点一点出现的,因此可以非常细致的去排查性能问题和UI渲染问题,很酷。
Web技术
Web技术应该有不少场次,不过一开始没有把这个主题做为重点,只听了一场关于『event loop in web』,但是效果出奇的好。甚至觉得这场次是两天GDD中综合性最好的,不仅仅是指技术性,还有通俗性。做为非前端开发,对于浏览器中的event loop知识了解的不多,所以听起来感觉很奇妙,可能对于前端同学来说,是比较基础的知识。 这部分内容用gif来展示是最好的,但是条件有限:
基本上围绕这个图来说,谈论了task、microtask、animation callback的内容,很形象易懂。即使是全英文演讲,也能听得懂。为此,我在twitter上联系了演讲者,他提供了之前在新加坡演讲时的视频,基本一致lol,有条件可以前往观看。
以上所述就是小编给大家介绍的《GDD 2018 上海 技术分享》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Practical Django Projects, Second Edition
James Bennett / Apress / 2009 / 44.99
Build a django content management system, blog, and social networking site with James Bennett as he introduces version 1.1 of the popular Django framework. You’ll work through the development of ea......一起来看看 《Practical Django Projects, Second Edition》 这本书的介绍吧!