1、前言
工作5年来,一直投身于 iOS 开发,而这5年来移动开发一直再追赶web前端和后端开发的技术栈和思想,近2年大家直接说:“大前端”,移动开发真正变成了“UI”前端的开发,而web前端借助 Node 开始转了后端开发?正是借着这些变化,我一直在思考,一直在疑问,直到看了一些 GMTC 课程,就像命悬一线的人一下子打通了任督二脉,练习武功不再于形式,需要提升认知的境界!这是一个神奇的世界,一个最好的时代!最“坏”的时代!
GMTC是什么?
GMTC全球大前端技术大会是由极客邦科技旗下InfoQ中国主办的技术盛会,关注前端、移动、AI应用等多个技术领域,促进全球技术交流,推动国内技术升级。GMTC为期4天,包括两天的会议和两天的培训课,主要面向各行业前端、移动开发、AI技术感兴趣的中高端技术人员,大会聚焦前沿技术及实践经验,旨在帮助参会者了解大前端&移动开发领域的技术趋势与实践案例。
2、正文
借知乎 果大 评价GMTC的一句话:
切身的一个体会就是「让多个人去做同一个项目,先不讨论项目的结果如何,最终项目组里每个人成长差别非常大」,所以大家要不断地去思考做一个项目解决一个问题参加一次会议如何能让自己有更多的收获,思考能力、执行力、沟通能力、竞品分析能力、沉淀分享能力等都是我们需要去关注的点。
做技术这些年,技术不在是技术,知识不在是知识,不要停留在自己的认知世界里,多看看别人的世界,看技术前沿,看程序圈子趋势。向上,思考问题的层次,向下,编程语言的底层。
目前的国内环境,最后的大前端分享,我想就是 GMTC 了,总体来讲邀请了国内技术公司大牛,分享他们过去和未来对于某个方向技术的实践与探索,每个专场都非常有代表性,最后,学习不止于知识,你的疑问?不可能通过别人有一个完美的回答,不能一鼓子copy到自己行业的业务中,应该是通过讲师的演讲,学习解决问题的思路和方法,了解未来的方向变化,有所启发,有所改进,有所触动,有所融会贯通!
所以,希望把看过的视频,都做一些记录和感想吧,不管懂与否,这都是学习步伐的记录~
3、GMTC 北京 2019
以下内容可在 GMTC全球大前端技术大会(北京站)2019 网站查看。另外,如果观看视频可以在极客时间App的每日一课中观看(需会员)。
前端工程化
前端工程化
前端工程化是前端业务以及技术架构复杂度提升导致的必行之路,然而工程化并不是普适的技术或者理论,业务类型、场景、技术架构甚至团队组织架构均是决定工程化具体形态的必要因素。换句话讲,工程化是与实践密不可分的。本专场我们通过分享业内一些经过实践检验的工程化方案,希望能够为大家在前端工程化的探索道路上提供借鉴和帮助。
《Using webpack to make Apps fast at Microsoft》
Sean Larkin / Microsoft Edge 研发经理 webpack 维护者
讲师简介:
Sean Larkin 【廖肖恩 】is a Program Manager at Microsoft working on Edge DevTools, expert on Web Performance, and maintainer of webpack. Outside of work, he works with Fortune 500 companies helping them change their culture for Web Performance practices, Open Source, and embracing emerging technologies. In his free time he loves spending time with his family, hiking, woodworking, cooking, gardening, Orchid cultivating, playing video games, hacking on IoT, and Streaming his open source work!
Sean Larkin【廖肖恩】是Microsoft的研发经理,负责Edge DevTools;他还是Web性能专家和webpack维护者。在工作之余,他与财富500强公司合作,帮助他们改变他们的文化,以实现Web性能实践、开源和采用新兴技术。在他的空闲时间里,他喜欢和家人共度时光,远足、木工、烹饪、园艺、兰花培养、玩视频游戏、黑客攻击物联网,以及打磨自己的开源作品!
演讲简介:
Did you know that the average website takes over 16 seconds to load on a mobile device? Did you know that on average the amount JavaScript and CSS that goes wasted is over 60%! If JavaScript and CSS are our most expensive resources to load, why are we hurting our load times by shipping stuff we don't ever use? How do we get rid of this unused code? How can we profile our web applications load times?
Join me as I teach you about the performance constrains of the modern Web, and how to write rich applications within these boundaries using household tools like webpack.
We’ll learn about how webpack solves these performance problems through a concept called code-splitting. We will walk through examples of code-splitting together, the many ways you can leverage it in your web application, and how webpack enhances this feature using magic comments, service workers, and prefetch and preload!
By the end of this talk you know:
- Where the most costly resources in your we application
- How to profile and analyze a web application load-times
- Understand what is "unused code" and how to get rid of it with code-splitting and webpack
- Learn the many types of code splitting in webpack, and other performance related features like service worker and how to integrate them with webpack
- Learn how frameworks adopt code-splitting and the route, component, and library level
- How to implement this in your own codebase
参考翻译:
你是否知道,网站在移动设备上的平均加载时间超过16秒?
你是否知道,加载的JavaScript和CSS资源平均浪费超过60%?
如果JavaScript和CSS是我们要加载的最昂贵的资源,那为什么要浪费时间去加载一些根本用不着的东西?
我们如何去掉未使用的代码?我们应该如何剖析Web应用的加载时间?
本次演讲将介绍现代Web的性能约束,并讲解如何使用像webpack这样的工具在约束之下编写内容丰富的应用。
我们将学习webpack如何通过一个叫代码分离(code-splitting)的概念来解决这些性能问题。我们将通过一些例子来学习,这里演示的方法都可以直接用在自己的Web应用中。我还将分享webpack如何使用魔法注释(magic comment)、service worker、预取(prefetch)和预加载(preload)等特性来增强代码分离。
你将学到:
1.如何定位Web应用中最昂贵的资源
2.如何分析Web应用的加载时间
3.理解哪些是未使用代码,以及如何通过代码分离与webpack去掉它们
4.学习webpack中不同类型的代码分离,了解像service worker等其他性能相关的特性,以及如何将其与webpack集成PPT链接:下载
《从一到无穷大:前端工程化中的实践与臆测》
王逸威 / 阿里巴巴 高级前端工程师
讲师简介:
毕业于南开大学,2015年加入去哪儿网,负责民宿客栈业务和Node.js工程化,2017年加入阿里巴巴,现任CBU技术部前端工程负责人。深耕于前端工程化领域,主导了在阿里巴巴B类事业群被多个BU广泛使用的Just工程体系的开发。
演讲简介:
前端从最开始作为一个职责单一、配合型、边缘化的工种,经历了PC时代的前后端分离,到移动时代的多端开发,直到Node.js时代,工具与框架百花齐放,JS似乎无所不能。而作为前端开发者手中的成长型武器–前端工程,也在一步步升级进化。作为阿里巴巴历史最为悠久的B类业务事业部门,我们完整经历了以上各个历史阶段,并在从工具链到平台化再到云+端的研发工具演进实践中,逐步探索着前端工程化的更多可能。
演讲提纲:
前端演进历史中前端职责与开发方式的转变
阿里巴巴B类事业群前端工程的演进
(1)工具链时代
(2)平台化时代
(3)云+端时代前端工程中的实践批判
(1)【稳定VS高效】版本管理设计&卡点设计CDN资源版本控制实践 代码检查卡点设计
(2)【标准VS定制】研发流程设计
基于BPMN的研发流程定制实践
(3)【多样VS易用】脚手架设计&构建服务设计
渐进式脚手架设计 云构建服务设计实践
- 工程未来的一些臆测
听众收益:
- 了解业界及阿里巴巴B类事业群的前端工程演进过程
- 了解前端工程设计的一些模式、思路、失败教训与最佳实践
- 围绕稳定/高效、标准/定制、多样/易用三个方向的具体案例,讲述我们的思考过程、利弊权衡与解决方案
PPT链接:下载
《京东购物小程序工程化之路》
刘慧敏 / 京东 高级前端工程师
讲师简介:
京东凹凸实验室前端工程师,京东购物小程序前端负责人。曾就职于腾讯,参与过QQ 空间相册、时光轴等核心产品的研发。2014 年加入京东,负责京东购物小程序项目的研发与管理,在前端工程化、小程序、效率提升及性能优化方面有较多的研究和积累。
演讲简介:
京东购物作为第一批上线的微信小程序之一,两年多以来在工程化上的探索从未间断过。从最初的 Gulp 构建,到现在的自研 CLI 工具、持续集成系统,需要手工进行的操作大大减少,使得团队成员能够更加专注于业务开发。与此同时,我们在性能提升、多端支持、团队协作、自动化测试、监控告警等方面也有不少的尝试和积累,本次演讲将为大家带来完整剖析。
演讲提纲:
- 项目初态
(1) 使用 Gulp、Gitflow、ESLint 搭建的工作流
(2) 制定开发规范
- 困难与挑战
(1) 手工操作过多
(2) 多个项目间的代码难以复用
- 模块化之路
(1) 公共模块 npm 包的统一管理
(2) 多端方案 Taro、Wqvue
(3) 自研 CLI 工具
(4) 基础流程插件化
- Node.js 数据层实践
(1) 精简小程序前端代码,性能优化
(2) Hawaii 数据聚合方案
- 持续集成系统
(1) Gitflow 工作流自动化
(2) 沙盒自动化测试
- 监控告警
(1) 高度可配置化的警告系统
(2) 监控和告警信息的有效送达
- 展望与思考
听众收益:
了解京东购物小程序工程化方面的探索
传统工程化在小程序上的结合实践
PPT链接:下载
注:由于讲师所在企业限制,不对外公布
《快手游戏直播Web站的工程进化之路》
俞天翔 / 快手 前端架构师
讲师简介:
快手前端架构师,游戏直播团队前端负责人。
演讲简介:
为了更好地服务游戏垂类用户,快手于2018年正式推出快手直播平台(即Web游戏直播站)以及电喵App等。在业务迭代的过程中,前端团队遇到了很多挑战,如架构设计是否能够保证高效地持续交付,如何保证可维护性,如何更好的利用工具解放生产力等。
本次演讲将剖析业务发展历程中所遇到的挑战,介绍技术选型和工程化设计,进而讲解直播团队前端如何通过各种工具、理念来迎接这部分挑战,以及在这个过程中前端团队是如何完成技术积累与传承的。
演讲提纲:Node.js的应用
(1)Vue SSR实践
(2)面向数据的接口 VS 面向页面的接口状态管理
(1)为什么我不选择Vuex
(2)GraphQL + Observable持续集成与工作流
(1)基于GitLab CI的持续集成与持续部署
(2)Git flow工作流的应用监控方案
(1)错误监控
(2)性能监控运维方案
展望未来,我们还能做什么
听众收益:
- 通过对快手游戏直播站的完整剖析,帮助与会者更好的理解前端工程化与前后端分离实践
- 在日常开发中,我们可以如何更高效的辅助业务开发
PPT链接:下载
性能优化与监控
对于端上的性能监控与优化,也一直是热门话题。移动互联网经过近10年的发展,各大APP随着时间和业务的累加变得越来越重,复杂度高的业务模块和数量巨大的第三方插件,导致APP越来越慢、越来越卡,严重影响了用户体验。
因此,对APP进行性能优化就变得尤为重要。性能优化有很多指标,比如Crash率、卡顿、CPU、内存、存储和网络等,建立完善的数据指标并进行有效采集是一项很复杂的任务。除了手动埋点以外,业界对自动化埋点和性能优化监控平台的探索也层出不穷,性能优化在一线大厂得到了高度的重视。
本专场将邀请不同业务场景的一线技术专家分享相关技术实践,希望能给大家带来更多的思考和落地参考。
《B站的视频体验进化之路》
谭兆歆 / bilibili 资深前端工程师
讲师简介:
在B站任职五年,现负责Web播放相关工作,即HTML5播放器及播放内核开发、弹幕支持和特效研究、用户体验优化方面。参与的项目有HTML5播放器开发及在B站的全面上线、DASH内核调研开发、蒙板弹幕、播放页改版与秒开等。
演讲简介:
近年来互联网的发展越来越快,技术水平、服务质量不断提升,用户体验的要求也越来越高。对于视频观看体验,用户往往会因为数秒的等待时间或频繁的卡顿而放弃观看内容。如何提高用户内容消费的能力和体验成为了我们亟待解决的问题。
B站于2018年进行了一次基于"video first"的年度性优化,针对用户体验的关键指标进行性能优化改造。包括交互设计改版、基于MPEG-DASH协议的视频体验优化、播放页秒开、弹幕体验优化等方面。希望为面对改善用户体验和性能的与会者提供参考。
- 播放页秒开优化
(1)播放资源前置:抽离核心播放器(无依赖)、非必须模块后置、减少解析时合并逻辑
(2)前端js避让策略:前端js下载、执行避让
(3)Node内网请求playurl:合并playurl到页面内容
(4)预取playurl:结束前预取推荐视频
(5)预取视频:热门视频内容预取,输出到页面
(6)其它渠道预载播放资源:首页、动态、空间、搜索等入口
(7)内核优化:DASH改造、FLV避免预检请求
(8)配置中心:资源长缓存,通过配置中心更改
(9)效果:50分位800ms,80分位1400ms
2.播放体验优化
(1)播放内核尝试DASH:自动切换、无缝切换、卡顿低
(2)自动切换策略: 根据用户网速及当前缓冲区大小自动切换
(3)无缝切换:支持多清晰度及多线路间无缝切换,用户对切换几乎无感
(4)效果:清晰度无缝切换、卡顿率下降60%
3. 弹幕体验优化
(1)弹幕引擎: 为什么使用两套渲染引擎
(2)弹幕优化: 复用弹幕节点,直播模式下丢弃屏幕外弹幕
(3)弹幕蒙板与监测: 不遮挡弹幕,更好的视频观看体验
(4)弹幕内核改造(todo): 使用字体渲染预计算宽高处理,减少重绘听众收益:
- 学习性能优化和用户体验结合的经验,特别是播放性能相关
- 获得弹幕及类似展示效果的处理方面的参考
- 对性能优化方面的工作提供一定的参考价值
- 播放页秒开优化
PPT链接:下载
《0.3秒完成渲染!信息流内容页“闪开”优化总结和思考》
庞锦贵 / 阿里巴巴 前端技术专家
讲师简介:
现就职于阿里巴巴移动事业部,UC国内信息流前端负责人。有丰富的性能优化、工程化、架构设计经验,UC移动技术核心决策成员。参与了Scrat3架构建设,主导并推动了UCWeex Rax和UCWeex Vue体系的标准化建设;开发并落地了UC新一代大前端工程框架——UFX,主导了UC离线缓存框架——U-cache的设计和开发。
演讲简介:
“闪开”,即用户一点即开,用Web技术来实现和Native一致的页面加载体验。本演讲将通过从浏览器内核到客户端外壳、从服务端到前端等多端协作下所实现的日均N亿级PV页面“闪开”体验所采用的优化策略,及其背后技术策略的思考和选择。
通过重新理解和定义前端页面的渲染处理,分析常见的前端性能优化方案(如PWA或SSR等)所存在不足,并通过信息流场景的内容消费页面的深度优化案例,讲解如何通过Web技术来实现100%消除页面白屏而实现“闪开”的。
演讲提纲:
1.“闪开”优化的场景及背景分析
2.“闪开”优化的难点分析及策略推导
3.“闪开”优化策略的落地及上线控制
4.极致的性能优化对技术架构的挑战
5.关于Web性能优化的总结和思考
听众收益:
了解一种全新的区别于SSR、CSR、PWA的页面渲染优化处理技术
了解浏览器离线缓存技术在前端页面性能优化中的应用价值
在极致的性能优化中,优化策略对于前端或移动架构设计带来的挑战,该如何对其进行演进
PPT链接:下载
《字节跳动线上性能监控体系的建设》
万里鹏 / 字节跳动 性能监控体系负责人
讲师简介:
万里鹏,就职于字节跳动客户端基础技术部门,负责Android端性能监控体系,主要包括:异常监控、性能监控、事件监控和日志系统等。主要服务于头条、抖音、西瓜视频、火山小视频、多闪等全公司级移动端产品,为业务开发、异常排查、性能优化和用户反馈提供整套监控体系。
演讲简介:
移动互联网发展这么多年,稳定性、性能一直是开发者面临的主要线上问题。字节跳动发布多款App,全球几亿用户量级,在追求用户体验上面,面临着巨大的挑战。用户会因为滑动信息流、播放视频流的卡顿,手机发烫、流量消耗过大等问题而卸载使用,如何优化性能手段提升留存率是我们需要解决的问题。
本次分享,以线上产品遇到的一些问题为背景,详细介绍性能监控体系中不同维度的性能监控,提供发现线上问题、定位具体问题原因的能力。包括App耗电问题、大内存归因、流量消耗过大问题的监控原理和问题排查。对于线上单点问题排查,日志检索和指令下发的闭环系统结构。希望能对线上性能问题精细监控提供一些借鉴和帮助。
演讲提纲:
- 研发流程和现状
(1) 研发流程中可能出现的问题
(2) 线上问题的主动发现
(3) 解决用户反馈问题的流程
- 性能监控体系的建立
(1) 性能监控概要
(2) 大内存和OOM的原因
(3) 卡顿指标的建立
(4) 排查空间占用的罪魁祸首
(5) 耗电操作的监控
(6) 流量消耗的来龙去脉
- 单点问题追查
(1) 日志中间件和日志库
(2) 日志流系统
听众收益:
了解监控体系的内容和具体作用
知道如何解决大用户量级的线上性能问题的方式手段
对于线上问题的监控,提高监控的能效性具有一定的参考作用
PPT链接:下载
《去哪儿网客户端无埋点监控与性能优化实践》
孟超 / 去哪儿网 公共产品部大前端负责人
讲师简介:
2014 年加入去哪儿网,主要负责客户端混合开发框架相关的工作,先后负责参与去哪儿网 Hybrid 框架、QRN 框架(基于 React Native)、热更新系统、客户端无埋点监控平台等的设计、开发、应用与实践工作,目前专注于 App 性能优化和无埋点监控方向的一体化解决方案。
演讲简介:
在移动互联网的下半场,React Native、Hybrid 等跨平台框架在 Qunar 的应用也越来越广泛,框架方面的进化带来的成本节省已经没有以前那么明显,接下来,性能和体验成为了重点关注的点,希望能为用户提供更加流畅的服务体验。监控系统作为 App 性能等指标的仪表盘,变得也相对重要,但是我们也不希望开发者把大量的时间花在埋点上,所以如何提供一个方便准确的无埋点监控报警系统,并且在性能优化等方面有一定的作为,将会变得的很有价值。在 Qunar 我们已经有了完善的一套系统,希望给大家分享一些经验和心得。
演讲提纲:
1、性能优化的必要性和遇到的痛点,需要一个方便的监控系统2、Qunar 的无埋点监控系统介绍
3、实现过程中遇到的挑战和解决思路,包括 React Native 、 Hybrid 等方面
4、监控系统在性能优化方面的实践
听众收益:
通过 Qunar 的实践经验,了解Native、RN 和Hybrid 等混合技术并存的大前端时代,如何做好监控告警系统
在性能优化方面,提升 App 性能和体验方面,监控系统发挥作用以及实践经验
无埋点的监控的实现思路
对性能优化、避免线上故障、灰度发现问题等过程有一个系统的认识和思考。
PPT链接:下载
《从重新认识前端渲染开始,小红书的前端性能监控及优化实践》
李季骏 / 小红书 社区前端工程师
讲师简介:
2016 年底加入小红书至今,目前任职于社区前端组,负责了包括小红书前端工程化、服务端同构、Hybrid 容器层建设(WebView、React Native)等方向。对于跨平台混合开发场景有丰富的实践,并在效率、性能等方向累积了一定的工程化解决方案经验。
演讲简介:
App WebView 的混合开发方式由于其高效的迭代效率一直在业界备受应用,也正因如此,其渲染性能也往往被拿来和 Native 应用去做横向比较,自然也对前端开发者提出了更高甚至跨 scope 的技能要求。
对此,我们的分享先会从拆解我们所关注的核心性能感官体验开始(First Paint, First Meaningful Paint, First Screen Paint),并且从工具侧和监控侧赋能工程师,找到影响各个关键渲染帧的症结,逐步渗透到包括在 Vue 等主流 MVVM 框架下一些实践对性能的影响。带着以上的思考和实践,分享会再聚焦“零白屏/首屏秒开”的目标,讲解小红书前端如何借助客户端缓存能力、服务端渲染能力,实现的工程化的前端渲染性能优化解决方案。
演讲提纲:
- App WebView 开发模式给前端开发者提出的挑战,传统前端性能评估方式的崩塌
- 核心性能体验指标的梳理和工程化的采集监控方案
- 基于关键渲染帧的过程拆解、工具,和多个场景下的 practice
- 小红书前端基于客户端缓存能力、服务端渲染能力的“零白屏/首屏秒开”方案
- 前端性能优化的工程化思考
听众收益:
- 理解在现代的 Web 开发模式下前端开发者了解前端渲染过程的必要性,并了解如何借助浏览器能力对其过程更加可控
- 了解一套基于用户侧、端上的前端性能监控工程化方案
- 了解借助客户端能力、服务端能力在前端渲染性能优化上的一些参考
- App WebView 开发模式给前端开发者提出的挑战,传统前端性能评估方式的崩塌
PPT链接:下载
《手Q iOS客户端性能监控和优化实践》
罗鑫 / 腾讯 手Q客户端基础平台团队高级工程师
讲师简介:
罗鑫(rosen),腾讯手Q客户端基础平台团队高级工程师。2015年加入腾讯,一直从事手Q iOS客户端性能相关的监控和优化工作,在卡顿、内存、发热耗电等移动终端性能优化方面有丰富的实践经验,目前负责手Q iOS客户端基础性能监控优化以及编译效率提升的工作。
演讲简介:
随着手Q iOS客户端App越来越庞大,手Q在性能方面面临的挑战也愈发严峻,诸如App越来越卡顿、内存占用越来越大、发热耗电等等这类问题都严重影响着用户体验。为了保证手Q的性能体验,我们针对这几类问题分别进行了深入优化,最终构建了一套比较完整的移动客户端性能监控组件( rainbow ),本次分享将重点介绍我们在实践过程中的干货技术内容。
演讲提纲:
- App性能-移动终端的兵家必争之地
(1)手Q在发展过程中遇到的性能挑战
(2)手Q APM性能监控体系简介
- 卡顿优化-为App流畅度保驾护航
(1) iOS卡顿监控原理和方案
(2)常见卡顿问题优化干货分享
(3)如何在快速的版本迭代中保证App性能体验?
- 内存优化-合理利用每一块内存
(1)iOS内存监控方案:让内存问题变得“有的放矢”
(2)常见内存问题原因总结
(3)手Q SIGKILL爆内存监控体系介绍
- 节能省电-移动终端的独有挑战
(1)iOS发热耗电监控方案
(2)多维度分析App性能问题案例
- 机器学习在性能监控的应用
(1)性能问题原因智能诊断定位
(2)机器学习在海量性能数据分析中的应用
听众收益:
了解iOS性能监控的方案原理(包括卡顿、内存和耗电)
了解手Q在保证App性能质量方面的流程和方案
了解iOS常见性能问题及优化方案
PPT链接:下载
跨平台技术
作为开发者,我们总是在追求效率和性能上不断探索和实践,这也是企业生存之道。效率和性能往往是一个矛盾点,为了效率我们探索的通用方案会带来冗余性能损耗、为了性能我们需要针对特定环境专项优化而失去通用性以至于效率折损。跨平台解决方案,以此寻求效率和性能的平衡。对于企业以及团队而言,选择合适的开发语言及框架、跨平台中UI复用、不同平台API高扩展性、基于效率之上性能最优等,都一直围绕着跨平台技术和解决方案展开探索。
相约GMTC 北京2019『跨平台技术』专场,和技术专家一起交流跨平台技术方案及应用实践。
《基于小程序技术栈的微信客户端跨平台实践》
张志坚 / 微信 高级工程师
讲师简介:
张志坚,微信高级工程师,2018年加入腾讯微信团队,主要从事跨平台方向,从参与基于C++的跨平台UI框架到基于Flutter的跨平台框架研发,持续推进跨平台方案落地。曾就职于阿里UC浏览器内核团队,主要从事多媒体、浏览器内核方向,经历了UC浏览器内核从U3到U4的过程,先后主导了浏览器内核网络流媒体方面的播放和下载架构设计,持续优化TCP/IP/HTTP2网络模块,帮助提升网页性能。
演讲简介:
小程序自诞生以来,经过两年多的发展,成为了微信开发者生态中最具有生命力的一环,为外部开发者开辟了全新的想象空间。然而,小程序带来的改变绝不仅限于微信之外,小程序技术栈的确立,又对微信客户端的研发产生了怎样的影响?本次分享将带来微信客户端中基于小程序技术栈的跨平台开发实践。
演讲提纲:
- 微信客户端的跨平台实践尝试
(1)微信客户端跨平台技术的应用历程
基础组件的跨平台 业务开发的跨平台
- 小程序与微信客户端
(1)客户端视角的小程序运行框架简介
(2)小程序技术栈如何为微信客户端业务服务
- 基于小程序技术栈的微信客户端跨平台实践
(1)运行效率和研发效率的平衡
(2)如何解决小程序用作客户端功能开发的体验问题
小程序的体验问题根源 类 RN 的原生渲染解决方案 跨平台的 LV-CPP 渲染方案 使用 Flutter 优化 LV-CPP 跨平台渲染方案
- 总结与展望
(1)Flutter 在微信中的其他应用
听众收益:
了解微信和小程序的技术架构
可以拓展 Flutter 在不同层面的应用价值
为跨平台方案提供新的思路,在开发效率和性能体验上提出更高的要求
PPT链接:下载
《闲鱼基于Flutter技术的架构演进与创新》
于佳(宗心) / 阿里巴巴 闲鱼客户端团队负责人
讲师简介:
于佳,花名宗心,闲鱼技术团队客户端负责人。2012年应届毕业加入阿里巴巴,经历集团无线化转型的重要时期,参与过集团多款重量级App以及移动中间件的设计与开发,多年客户端老兵。2014年参与了手机淘宝的iOS客户端的架构升级,该架构首次完成了对百人团队并行开发的支持,同年主导了手机天猫客户端基础架构以及交易链路向手淘架构的归一,为手机淘宝作为未来集团无线中台奠定了坚实的基础。2015年加入闲鱼客户端团队负责端架构和团队建设,工作期间完成了基于Flutter混合架构的闲鱼客户端的整体架构设计,在工程体系上完善了针对Flutter的持续集成以及高可用体系的支撑,同时推进了闲鱼主链路业务的Flutter化。未来将持续关注终端技术的演变及发展趋势。
演讲简介:
随着去年Flutter beta版本在端侧的可行性验证完成,今年团队进行了Flutter的架构全面升级和研发智能化的建设。在架构演进的过程中,产生了较多的技术创新和实践,本次talk将从以下几个方面进行重点分享:
演讲提纲:
1.Flutter的优势与挑战
回顾beta到release的一些变化,以及去年分享的简单回顾,推导出在大规模应用下我们遇到的新问题–研发效率/稳定性/用户体验。2.基于Flutter的架构体系演进
(1)架构的升级与完善核心分享去年不太完善的设计的一些改进,如重新设计构建的新混合栈体系,以及资源一体化项目的一些进展和效果。<br />
(2)业内首创,复杂业务克星fish redux
核心分享新开源框架fish redux的设计,以及实践效果。<br />
3.基于Flutter的工程体系建设
(1)Flutter与研发智能化
在闲鱼构建的研发智能化体系是怎样的,给Flutter带来了怎么样的效率提升。
(2)Flutter与高可用体系建设
基于Flutter的高可用性的度量标准以及设计方案是怎样的
4.总结与展望听众收益:
1.了解Flutter在中大型App场景下的问题与瓶颈,此类问题同样适用于其他规模App。
2.为业内提供已验证的新架构思路,提供业务架构设计的另一种可能性。
3.为业内提供基于Flutter的研发智能化的工程体系思路。PPT链接:下载
《基于跨平台框架 Flutter 的动态化平台建设》
刘志磊 / 美团 大前端技术专家
讲师简介:
刘志磊,美团大前端技术专家。2015 年加入美团,2016 年负责美团性能及 crash 监控相关工作,2017 年开始参与美团Hybrid工作,在终端动态化方向有较多研究和积累。2018年底开始尝试将 Flutter 与动态化相结合,进行 Flutter 平台化的建设。
演讲简介:
作为跨平台方案,2018年开始推出的 Flutter 可谓是跨平台的优异解决方案。随着 Release 1.0 的发布,美团积极跟进了 Flutter 技术。发现了 Flutter 在优异的跨平台方案上最大的不足在于其缺乏一定的动态性。所以美团技术团队基于 Flutter 开发了动态化的能力,使之形成了一个支持动态的 Flutter 开发平台。
演讲提纲:
- Flutter 前世今生
(1)简短的介绍下 Flutter,进而引出 Flutter 缺乏动态化而带来的不足。 - 跨平台与动态化
(1)跨平台
随着移动开发越发的追求开发效率与体验一致性,各大公司对跨平台的需求日益攀升。Flutter 为跨平台提供了很优异的解决方案。我们可以和曾经的跨平台方案进行一系列的对比。
(2)动态化
为了满足市场快速更新和迭代的需要,尤其是电商行业是非常需要动态化能力的。平台化 - 容器化 - 生态化是一个行之有效的发展路径。介绍下美团在这些方面的建设。 - Flutter 平台化的建设
(1)基于 Flutter 的平台架构
有了 Flutter,我们可以从双端架构向跨平台有了很好的迁移,也可以增加动态化方案以满足业务快速迭代的需要。
(2)逻辑层的动态化
介绍如何通过修改 Flutter Engine 使其满足 JavaScript 脚本的运行。
(3)渲染层的动态化
介绍从 XML + CSS 到本地映射结构,通过分析输出到 Widget 的过程。 - 总结与展望
听众收益:
- 了解 Flutter 的优势和不足,避免采坑
- 为行业跨平台 + 动态化提供一种新的架构思路
- 了解多语言嵌套能力的建设和动态化渲染能力的建设
- Flutter 前世今生
PPT链接:无
注:由于讲师所在企业限制,不对外公布
《基于 Electron 的跨平台桌面客户端开发实践》
王丰 / 字节跳动 Lark前端负责人
讲师简介:
Lark 前端负责人,负责 Lark 桌面客户端,Web 端,以及 Lark 其他相关 B 端、M 端产品的研发工作。曾就职于百度、网易、滴滴等公司,2018年加入字节跳动。参与过百度音乐、网易新闻客户端、小桔车服等大型项目的开发和前端技术体系建设。在前端工程化、大型 WebApp 架构设计、前端性能优化等领域有丰富的实践经验。
演讲简介:
Electron 是一款流行的跨平台桌面客户端开发框架,VSCode、Teams 等多款基于它开发的产品的成功,更是证实了它在大型跨平台桌面客户端开发方面的能力和优势。本次演讲将结合Lark桌面客户端的开发实践,分享基于 Electron 的跨平台桌面客户端开发在启动优化、内存管理、异常处理、安全加固、架构设计等多个维度面临的挑战和相关的实践经验。
本演讲最后将回顾总结基于 Electron 的跨平台桌面客户端在开发实践中的一些误区和注意事项。同时也会展望未来结合 WebAssembly、SharedArrayBuffer、Web Worker 等 Web 技术,如何对基于 Electron 的应用做到更自然且更极致的体验优化。
演讲提纲:
- 为什么选择 Electron
(1)Lark 的需求介绍
(2)WebApp 的可行性
(3)基于 Chromium 定制 WebApp Runtime
(4)基于 Electron 的 WebApp Runtime
(5)Electron 被证明是可行的
- Lark 的实践经验
(1)使用 Electron 的开发生态
(2)实践中的技术挑战
(3)快速启动
(4)内存管理
(5)CPU 异常处理
(6)容灾兜底
(7)安全加固
(8)业务治理
- Electron 的使用误区
(1)Render Process Node Intergration
(2)Remote 的性能问题
(3)Require 的性能问题
- 未来的尝试方向
(1)使用 SharedArrayBuffer 实现共享内存
(2)使用 Wasm 下沉基础模块
听众收益:
了解 Electron 的适用场景和基本原理。
了解大型 Electron 应用在工程实践方面的经验。
了解 Electron 的开发误区。
了解未来的 Web 技术如何与 Electron 融合 。
PPT链接:下载
注:由于讲师所在企业限制,不对外公布
前端框架
前端框架逐渐形成了React、Vue、Angular三足鼎立的形势,另外还有一些公司的自研框架,每一个框架都有着自己的拥趸,这些框架有哪些落地实践,让我们为你一一道来。
《蚂蚁金服前端框架和工程化实践》
陈成(云谦) / 蚂蚁金服 高级技术专家
讲师简介:
陈成,花名云谦,蚂蚁金服高级技术专家,入职阿里已有 10 年。之前在淘宝,负责过淘宝首页、宝贝详情、购物车、下单等很多重要业务的前端部分。然后转岗到支付宝,曾负责 [spm](https://github.com/spmjs/spm)、支付宝开发者工具的开发,以及创建了 [dva](https://github.com/dvajs/dva/),[roadhog](https://github.com/sorrycc/roadhog),[babel-plugin-import](https://github.com/ant-design/babel-plugin-import),[umi](https://github.com/umijs/umi/) 等。擅长的领域有工具、前端框架以及前端性能等,热衷于开源,大家可以在 https://github.com/sorrycc 找到我。
演讲简介:
蚂蚁金服自 2015 年就选择了自研框架之路,一路披荆斩棘,目前已支撑了蚂蚁成百上千个项目,但也仍存在一些不足。本次分享将为大家带来我们在前端框架和工程化方面的探索和思考。
演讲提纲:前端框架实践,关于研发提效和体验优化
(1)前端框架的开放和约束
业务框架和开源框架的相辅相成 插件体系
(2)本地开发提速
(3)体验优化(性能等)
(4)资产市场和组件打包
(5)2019是TypeScript年
(6)数据流思考
(7)SSR
(8)文档和培训体系
前端工程化实践,关于框架、流程和应用治理
(1)框架和流程打通
(2)研发场景支持的完备性—Serverless
3. 前端框架的未来(1)前端框架的商业化和上云 (2)可视化编程和辅助编程 (3)面向未来的前端打包方式
听众收益:
- 了解如何借助框架,通过语言、资产市场、SSR、数据流、本地 CLI 提速、性能优化等方式提升研发效率,以及提升产品体验
- 了解框架应该如何与流程结合,打造更顺畅的内部开发体验,以及蚂蚁在 e2e 测试、埋点、前端监控等方面做法
- 我们对于未来的思考
PPT链接:下载
《换个角度看 Vue 组件》
唐金州 / 校宝在线技术专家 Ant Design Vue 作者
讲师简介:
唐金州,校宝在线 技术专家,Ant Design Vue 作者,极客时间《Vue开发实战》视频课讲师。第二届 VueConf 演讲嘉宾,主导开发的 Ant Design Vue 在 GitHub 已有 6000+ Star,并且已经纳入 Ant Design 官方域名下,成为了蚂蚁金服 Ant Design 官方唯一指定的 Vue 版组件库。曾任职于搜狗、蚂蚁金服,并主导研发了多个 UI 框架和前端架构设计,在移动端和中后台都有丰富的开发经验。除了 Vue 之外,对 React 也有多年的开发经验。
演讲简介:
组件系统是 Vue 的核心概念,理解 Vue 组件的思想不难,但如何将组件思想有效的传达给后端人员或初级开发人员并不是一件简单的事情,在极客时间《Vue 实战课程》的录制中,对 Vue 组件有了更深一步的理解,当我换个角度看组件之后,发现了一些有趣的事情,并将这些“事情”在Ant Design Vue 中实践。本次 Talk 将从如下5个方面进行分享:
演讲提纲:
1、什么是组件
2、又爱又恨的函数式组件
3、当插槽碰上函数式组件
4、指令的另外一种用处
5、简约而不简单的 Vue
听众收益:
1、不同角度理解 Vue 组件的思想
2、重新认识 Vue 模板的能力
PPT链接:下载
《多端适配框架NFES在携程的实践》
魏晓军 / 携程 高级研发经理
讲师简介:
2011年加入携程,主要负责前端框架和基础设施的研发工作,目前重点关注Node.js和前端新技术的落地,以及前端性能优化。
演讲简介:
随着前端优秀技术的不断涌现以及携程业务的加速发展,陈旧的技术架构已经难以满足新的需求,本次分享展示了携程NFES框架在向新技术、新模式靠拢,统一前端技术栈,升级技术架构方面的探索和实践。相信,通过本次的分享,定会给需要的同学带来启发和思路,也欢迎更多的同学和我们一起探讨和交流前端框架方面的经验。
演讲提纲:
背景
(1) 现有技术架构的一些问题
(2) 来自业务团队内部开发模式的变化
(3) 新的前端解决方案NFES的提出(涉及浏览器端、服务端、App端以及配套的工具)NFES框架设计
(1) 整体架构
(2) 前后端分离的支持
(3) 多端适配NFES实现
(1) 浏览器端新技术的引入
(2) 提供统一的全新的应用层框架,便于开发人员更加关注业务
(3) 采用CSR+SSR的混合模式,带来更好的用户体验
(4) 支持插件化机制,便于开发人员灵活的扩展能力
(5) 服务端的支持
(6) 提供功能完备的的项目模版(涉及健康检查、多线程处理、配置中心处理等)
(7) 便于老技术项目的迁移,对老技术的基础设施模块,我们提供了对应的Node版本
(8) App端的优化
(9) 研发了类小程序架构的Hybrid容器
(10) 提供了类React Naitve架构的真机调试NFES开发体验优化
(1)集成调试环境,支持Web、Node
(2)简化发布流程,支持一键发布多平台
(3)解决生产环境代码调试的问题
(4)全链路线上数据监控
听众收益:
- 在历史债务方面的清理
- 在开发效率方面的提升
- 在应用性能方面的优化
PPT链接:下载
《深入剖析React Native下一代引擎框架重构》
熊文源 / 京东 架构师
讲师简介:
熊文源,京东架构师,2016年加入京东,目前是技术中台多端融合平台Android端架构师,主要负责京东多端融合框架、引擎的搭建和基础组件的研发和架构设计工作,多端融合Android端的技术架构负责人,对React Native、Flutter、小程序框架有很深入的了解。
演讲简介:
Facebook在2018年6月官方正式宣布了大规模重构React Native的计划及重构路线图,目的是为了让React Native更加轻量化、更适应混合开发,接近甚至达到原生的体验。
在近期的开发者大会上,Facebook也对此次重构取得的进展做了分析和介绍,本次分享将着重分享React Native框架目前碰到的瓶颈,以及Facebook及京东是如何优化的。
演讲提纲:
1.京东JDReact平台简介
(1)JDReact框架整体剖析
(2) JDReact框架在京东内的应用现状
2.React Native面临的问题分析
(1)启动性能问题分享
(2)React Native渲染的流程分享,及异步渲染产生性能问题原因分析
(3)与跨平台框架Flutter的数据对比分析
(4)京东JDReact是如何优化性能和体验的
3.React Native架构重构整体介绍
简单分析此次架构重构主要改造点,以及要解决的核心问题介绍
此次重构升级引入的新的框架介绍:
(1)Fabric UI架构原理分析
(2) JSI原理介绍,如何异步或者同步完成JS到Native到通讯
(3) TurboModule架构原理介绍
(4)组件社区化及对开发者的影响
4.京东JDReact如何应对此次架构升级
(1) 对现有的大量组件及API的影响评估,以及后续的调整方向
(2) 对现有JS业务的影响评估
听众收益:
1.了解现有的React Native的UI及API的设计的原理,以及瓶颈、缺陷,方便相关开发者在业务设计时提前避免
2.了解未来React Native的发展规划及前景,以及重构后的整体架构,提前做好技术规划和储备
3.了解现有的React Native架构下如何来优化性能、提升用户体验
PPT链接:下载
UI与图形渲染
从远古时代静态的Web Page,到如今动态的Web App,网站前端的核心竞争从视觉的表现力逐渐过渡为功能的丰富性,而功能的实现也同样需要借助视觉的反馈。所以不论前端技术生态如何演进,UI与图形始终是不变的核心。前端UI与图形渲染有丰富的技术选型:HTML+CSS足以应对大多数常规前端项目;SVG被广泛应用于二维可视化领域;地图、游戏、医学、建筑等涉及三维场景、矢量图形、大数据计算的领域对于WebGL的应用也臻至成熟。本专题邀请拥有多年经验积累的一线讲师与专家,分享各自在不同产业领域和应用场景下针对UI与图形的技术与实践经验。
《基于Flutter引擎的TypeScript UI框架在树莓派上的应用》
徐远同(二同) / 淘宝 前端渲染技术团队负责人
讲师简介:
徐远同,花名二同,淘宝前端渲染技术团队负责人。此前曾任职于华为、百度,参与过百度地图等重量级App的研发。2016年加入淘宝,负责高性能W3C标准化图形渲染引擎以及工具链的研发。主要研究方向为WebGL/WebGPU标准的自有实现,以及跨平台跨终端的UI渲染体系,以拓展前端边界为目标努力。
演讲简介:
5G时代即将来临,IoT是5G时代一个重要的场景之一。应该以什么姿态和角色去迎接新的技术变革,是每个端开发需要思考的问题。
淘宝技术是新零售的践行者之一。我们曾在线下零售,工厂制造中尝试过包括WebView、Hybrid、纯Native在内的多种技术方案,以求在渲染性能、动态性和开发效率中取得平衡,但效果差强人意。因此,淘宝渲染技术团队在Flutter的Native引擎基础上,建立了一套基于TypeScript的,拥有2D/WebGL/WebGPU能力的可编程自定义的UI渲染管线。
本次分享将会以渲染技术团队在IoT零售中的实践作为起点,详细介绍新的UI渲染管线的原理和实现,包括自定义渲染管线关键实施步骤、引擎中实现的核心技术、跨平台移植的一些细节等内容。希望对关注渲染技术的端侧与会者带来思路上的拓展和帮助。
演讲提纲:
IoT时代前端面临的问题
5G时代概述
嵌入式设备的开发现状,以及正在发生的变化
面临的问题
(1)开发成本和效率问题 (2)技术引发的动态性问题 (3)WebView方案因性能带来的成本和体验问题
炙手可热的Flutter
(1)简介
(2)原理简介
(3)生态问题
- "G"项目介绍
(1)目标定位:使用TypeScript,且拥有Canvas/WebGL/WebGPU能力,可高度定制渲染管线,拥有完整工具链的跨端跨平台高性能渲染解决方案
(2)技术特点:Flutter引擎+TypeScript+GCanvas
(3)框架简介
(4)渲染管线整体流程概述(TypeScript的部分是自定义渲染管线,其余部分归为引擎)
- 自定义渲染管线详解
(1)树的创建
(2)布局和测量运算
(3)绘制
(4)渲染
(5)视图缓存
(6)输入输出
(7)状态更新
- 引擎详解
(1)跨平台概述
(2)线程模型
(3)Skia能力概述
- 工具链简介
(1)如何实现全链路Debugger
GCanvas和2D/WebGL/WebGPU能力
展望和总结
(1)TypeScript Runtime
(2)CSS怎么支持
听众收益:
1.可以了解IoT时代端侧开发面临的具体问题
2.可以了解浏览器以及Flutter在内的类W3C渲染体系的完整工作链路和原理
3.为业内提供解决IoT渲染问题的新思路
PPT链接:下载
《基于GLES的三维地图渲染技术工程实践》
王前卫 / 高德 高级地图技术专家
讲师简介:
王前卫,高德高级地图技术专家,客户端地图渲染技术团队负责人。深耕AMAP地图渲染技术多年,深度参与高德AE8、大编译、SDK升级项目等几场硬仗,拥有丰富的一线实践经验。目前在高德负责地图渲染引擎及AR导航黑科技的研发,在这些技术领域有较深的研究和见解。
演讲简介:
高德地图已经成为国民APP,在这些年业务高速发展过程中,高德地图渲染技术团队在对产品不断的创新改进中积累了丰富的实践经验,将在本次活动上为大家分享。主要分享以下三个方面的内容:
1. 终端地图渲染的困难与挑战
介绍从手机硬件、车机硬件的发展,纯软件到硬件加速,在不同硬件平台上地图渲染所面临的困难与挑战
2. 三维地图渲染技术的优化与创新
(1)跨平台地图APP的架构设计与思路
(2)海量地图数据的处理、压缩与分层
(3)基于OPENGL的性能调优方法实践
3. 快速迭代的工程体系建设
(1)性能分析工具体系建设与实践
(2)调试工具实践
4. 总结与展望
未来Metal及Vulcan图形渲染技术的影响听众收益:
- 目前主流的渲染技术在国民级APP的技术应用和架构演进思路
- 渲染技术在产品的优化和性能调优实践
- 性能分析工具体系建设与实践等等
听懂我的演讲,需要具备这些知识储备:
对图形渲染有一定技术积累和实践经验
- 目前主流的渲染技术在国民级APP的技术应用和架构演进思路
PPT链接:下载
注:由于讲师所在企业限制,不对外公布
《结合React与D3进行数据可视化开发》
郭桦 / Twitter 数据科学家
讲师简介:
郭桦,Twitter数据科学家,负责Twitter内部在线互动数据可视化工具的设计与开发,主攻网络可视化与事件序列可视化。2017年获得布朗大学博士学位,就读期间主要研究以人为本的数据可视化设计在脑科学、决策等领域的应用。
演讲简介:
随着大数据的崛起以及数据可视化的普及,越来越多的公司开始注重应用数据可视化来辅助商业决策。D3.js作为前端可视化引擎的鼻祖之一,提供了丰富的可视化工具库以及极强的灵活性,是许多数据可视化工程师开发高度定制可视化产品时的首选。本次演讲将从Twitter的数据可视化工具开发团队的实践经验出发,分享结合React与D3进行数据可视化开发的方式与优势。
D3与数据可视化
(1)数据可视化的基本原则
(2)D3基础概念
(3)D3作为可视化工具的优势与缺陷
数据可视化在Twitter的应用
(1)应用场景
(2)基于网页的大数据可视化所面临的挑战结合React与D3进行可视化开发
(1) 使用React-d3kit实现D3代码复用
(2) 利用Redux与Epics协调D3组件与数据流
4. 前端科技之外的挑战
(1) 互动实时可视化与数据存储方案
(2) 可视化设计的敏捷开发
5. 展望与总结听众收益:
- 了解基于网页的数据可视化在Twitter商业决策上的应用
- 了解结合React与D3进行数据可视化开发的方法与优势
- 了解在线互动大数据可视化所面临的技术挑战
PPT链接:无
注:由于讲师所在企业限制,不对外公布
《基于DOM 的可协作幻灯片编辑器架构模式》
刘怡年 / 石墨文档 幻灯片技术负责人
讲师简介:
2017 年加入石墨文档担任前端开发工程师,于 2018 年参与石墨文档幻灯片项目从立项开始的工作,担任技术负责人。主要研究方向为编辑器技术方案设计与数据管理方案实现,在石墨幻灯片开发过程中积累了一定的编辑器相关技术管理和功能实现经验。
演讲简介:
编辑器实现是前端开发中场景比较特殊,且颇有难度的一个方向。而幻灯片作为集文本编辑与图形处理功能的编辑器,在技术思路和实现方法方面也会遇到很多独特的挑战。石墨幻灯片团队在开发中面临了包括文本编辑、处理图形渲染与操作和数据管理等一系列问题,并在寻求解决方案的过程中积累了一些有趣的经验教训,希望能给对编辑器方向感兴趣的前端开发者提供思路与灵感。
演讲提纲:
- 实现准备
(1)可协作编辑器的功能与技术挑战
定义编辑器的功能与目标 编辑器实现思路与常规前端实现思路的区别
(2)DOM 方案在幻灯片编辑器方向上的优势
SVG、Canvas 和 HTML DOM 架构的比较 DOM 架构方案在文本编辑与图形渲染操作方面的优缺点
2.实现过程
(1)文本渲染与编辑问题
文本渲染和编辑的挑战 浏览器方案 基于 SVG 或 Canvas 的渲染方案
(2)处理图形渲染与变幻
由面到点的图形渲染问题解决思路 从实例谈矩阵在图形渲染和变幻处理中的应用
(3)数据管理与可协作实现
(4)图形渲染变幻相关功能的测试方案
基于数据的测试方案 基于 DOM 的测试方案
3.展望总结
(1)从架构层面看图形渲染与操作功能的取舍与平衡
(2)编辑器可能的终点展望
浏览器标准层面的编辑器
听众收益:
1.了解编辑器 DOM、SVG 和 Canvas 架构的特点与优缺点
2.了解编辑器处理文本与图形问题的思路和算法
3.了解可协作编辑器从调研、实现到测试,不同于常规前端项目的思路和问题解决方案
PPT链接:下载
Node实战
Node.js在大前端布局里意义重大,除了基本构建和Web服务外,这里我还想讲2点。首先它打破了原有的前端边界,之前应用开发只分前端和API开发。但通过引入Node.js做BFF这样的API Proxy中间层,使得API开发也成了前端的工作范围,让后端同学专注于开发RPC服务,很明显这样明确的分工是极好的。其次,在前端开发过程中,有很多问题不依赖服务器端是做不到的,比如场景的性能优化,在使用React后,导致bundle过大,首屏渲染时间过长,而且存在SEO问题,这时候使用Node.js做SSR就是非常好的。
当然,前端开发使用Node.js还是存在一些成本,要了解运维等技能,会略微复杂一些,不过也有解决方案,比如Servlerless就可以降级运维成本,又能完成前端开发。直白点讲,在已有Node.js拓展的边界内,降级运维成本,提高开发的灵活性,这一定会是一个大趋势。
本次专场,依然专注于Node主要做的2件事儿:前端辅助 + API封装,会重点倾向于Serverless、TypeScript在Web开发框架里的相关实践、性能、SSR以及架构相关的主题进行组织分享。
《海量Node.js云服务的DevOps实践》
王伟嘉 / 腾讯云研发工程师 Node 源码核心贡献者
讲师简介:
王伟嘉,Starkwang,现腾讯云研发工程师,Node.js Core Collaborator,目前在腾讯云TCB团队负责小程序云开发相关的业务。对Serverless服务的设计与研发、Node.js工程运维开发有比较丰富的经验。
演讲简介:
Node.js近几年在服务端开发的比重越来越大,各大公司或多或少都选用它作为构建业务链路中不可缺少的一环。但Node.js本身极度灵活、轻量的特性,让它对DevOps上并不是那么的友好,一直被业界诟病为前端工程师的“玩具”。这些问题对于构建高可用服务非常重要。
腾讯云云开发团队从业务最初启动时,就选用了Node.js作为接入层的运行时环境,从业务上线到现在每天数亿级体量的云服务调用,在这个发展过程中,DevOps也从刀耕火种的原始阶段,逐渐构建了一套比较完善、严谨的流程。本次分享主要介绍Node.js在云开发团队业务架构中的定位,如何为Node.js设计一套稳定可靠的DevOps流程,在这个流程中会遇到哪些坑,如何在业务快速迭代的同时,保证服务的高度可用性。
演讲提纲:
- Node.js in CloudBase
(1)Node.js在云开发团队的发展历程
(2)Node.js在业务架构中的定位
- 渐进式迁移到静态语言
(1)TypeScript的语言优势
(2)TS在实际业务中的最佳实践
- 为项目编写高质量的测试
(1)测试的基础知识
(2)单元测试
(3)集成测试
(4)端到端测试
- 持续集成
(1)持续集成的基础知识
(2)Git Flow + Node.js最佳实践
(3)如何使用CI系统科学、自动地测试代码
(4)发布流程与发布策略
- 日志、监控与容灾
(1)日志规范与日志系统
(2)如何通过监控告警快速定位问题
(3)容灾:主备、异地多集群
听众收益:
了解为Node.js搭建DevOps流程中的技术选型、演化以及经验
了解业界DevOps的最新理念和规范
PPT链接:下载
《网易严选企业级Node及Serverless应用实践》
金炳 / 网易 资深前端开发工程师
讲师简介:
金炳,网易资深前端开发工程师,网易严选Node负责人。 2016年加入网易,负责过邮箱大师、网易严选等产品前端开发,做过前端、后端、产品设计,是一名全栈工程师。目前致力于Node应用框架研究开发与生态建设,实践Node应用在Serverless、Faas场景下的迁移和落地,探索Service Mesh在Node应用中的价值。
演讲简介:
网易严选作为原创生活类自营电商品牌,其供应链、采购、财务、数据等,具有业务变更频繁、流程复杂性高、跨系统协作多的现状,使得业务系统前端开发在开发和维护中变得越来越困难。因此,构建一个架构设计优良、功能全面、质量稳定的Node应用框架显得尤为重要。
我们基于TypeScript设计和开发了严选Node框架,抽象了应用生命周期管理,完成了Node生态建设,建立了与业务系统和技术中台的对接规范。在整个框架的开发和落地过程中,我们还实践了Serverless场景的应用,探索了Service Mesh在Node应用中的价值,希望能给大家带来一些思想的碰撞。
演讲提纲:
- 业务场景
(1)网易严选业务介绍
(2)业务中的难题
- Node如何解决业务难题
(1)点-面-立体三种角度
(2)角色转变
(3)权限拦截、参数校验
(4)单元测试之依赖注入
- Node的保障
(1)Node的基建保障
- Serverless实践介绍
(1)什么是Serverless
(2)方案选型
(3)Knative的原理和扩展
(4)构建严选的Serverless Framework
- Service Mesh在Node应用中的价值
(1)Service Mesh介绍
(2)Service Mesh的价值
听众收益:
了解如何使用Node去处理高复用的复杂业务,并了解Node框架的设计思想
了解Serverless在严选中的使用方案、了解Service Mesh对Node应用的价值
PPT链接:下载
《基于 TypeScript 的 Node.js 多场景框架设计方案》
陈仲寅(张挺) / 淘宝 前端技术专家
讲师简介:
长期耕耘于Node.js技术栈,为淘宝和阿里其他BU提供框架和中间件解决方案,负责淘宝整体的Node.js体系基础建设,解决全栈开发的各种维护和稳定性问题,也同时负责 MidwayJs系列内部和社区开源产品,包括Midway、Sandbox、Pandora、Injection等开源产品的开发、维护等工作。
演讲简介:
未来前端最大的问题是规模化编程和全栈带来的挑战,TypeScript能够很好的应对这2个问题。在传统的Web框架、FaaS框架或者其他微服务框架,基于JavaScript体系实施全栈模型的大型项目开发时往往造成代码复杂度过高,维护成本逐步增加的问题(没有类型系统)。同时在不同的场景下迁移代码、共享代码时也会碰到很多问题。我们通过引入TypeScript 和装饰器模型,通过在跨场景下引用相同的装饰器,但是不同实现逻辑,来解决不同场景下的各种需求。这种做法很好的做到架构解耦,并解决规模化编程问题,提高代码质量,对团队成长也有非常好的帮助。
淘宝从2017年之前就开始探索TypeScript的落地方式,随着时间的推移已经将新的模块和框架全部迁移到TypeScript体系,在2019年,TypeScript应用已经遍地开花,提前完成了非常不错的布局。
本次分享主要介绍淘宝最近开源的Midway框架在新的场景、新的体系下如何和现有的Egg体系保持良好的兼容性,同时又能在TypeScript的使用中有着独特的体验,通过针对不同场景的情况,我们引入相同的解决方案,为未来打下了夯实的基础。
演讲提纲:
- 使用TypeScript
(1)规模化编程和全栈带来的挑战
(2)面向接口编程
(3)新特性,装饰器的使用
- 基于Egg创造性Web框架Midway
(1) 从Egg开始
(2) 引入 IoC
(3) 和框架解耦
(4) 和目录结构解耦
(5) 引入自定义装饰器
(6) 实践讲解
- 多场景设计实践
(1) 跨场景的实现
(2) FaaS场景的设计和代码迁移
(3) 跨其他场景的解决方案
听众收益:
当前Node.js的场景越来越多,很多代码都需要跨不同场景进行共享和迁移,在这些过程中,如果代码能够尽可能少的变化,势必会减少很多工作量和重构量,也使得在业务迁移过程中能够更加专注业务本身,而不是新框架的使用方式。PPT链接:下载
《使用 Node.js 的 TypeScript 多场景框架和方案实践》
陈仲寅(张挺) / 淘宝 前端技术专家
讲师简介:
长期耕耘于Node.js技术栈,为淘宝和阿里其他BU提供框架和中间件解决方案,负责淘宝整体的Node.js体系基础建设,解决全栈开发的各种维护和稳定性问题,也同时负责 MidwayJs系列内部和社区开源产品,包括Midway、Sandbox、Pandora、Injection等开源产品的开发、维护等工作。
演讲简介:
未来前端最大的问题是规模化编程和全栈带来的挑战,TypeScript能够很好的应对这2个问题。在传统的Web框架、FaaS框架或者其他微服务框架,基于JavaScript体系实施全栈模型的大型项目开发时往往造成代码复杂度过高,维护成本逐步增加的问题(没有类型系统)。同时在不同的场景下迁移代码、共享代码时也会碰到很多问题。我们通过引入TypeScript 和装饰器模型,通过在跨场景下引用相同的装饰器,但是不同实现逻辑,来解决不同场景下的各种需求。这种做法很好的做到架构解耦,并解决规模化编程问题,提高代码质量,对团队成长也有非常好的帮助。
淘宝从2017年之前就开始探索TypeScript的落地方式,随着时间的推移已经将新的模块和框架全部迁移到TypeScript体系,在2019年,TypeScript应用已经遍地开花,提前完成了非常不错的布局。
本次分享主要介绍淘宝最近开源的Midway框架在新的场景、新的体系下如何和现有的Egg体系保持良好的兼容性,同时又能在TypeScript的使用中有着独特的体验,通过针对不同场景的情况,我们引入相同的解决方案,为未来打下了夯实的基础。
演讲提纲:
- 使用TypeScript
(1)规模化编程和全栈带来的挑战
(2)面向接口编程
(3)新特性,装饰器的使用
- 基于Egg创造性Web框架Midway
(1) 从Egg开始
(2) 引入 IoC
(3) 和框架解耦
(4) 和目录结构解耦
(5) 引入自定义装饰器
(6) 实践讲解
- 多场景设计实践
(1) 跨场景的实现
(2) FaaS场景的设计和代码迁移
(3) 跨其他场景的解决方案
听众收益:
当前Node.js的场景越来越多,很多代码都需要跨不同场景进行共享和迁移,在这些过程中,如果代码能够尽可能少的变化,势必会减少很多工作量和重构量,也使得在业务迁移过程中能够更加专注业务本身,而不是新框架的使用方式。PPT链接:无
未来移动技术
移动开发中都有哪些技术,如何将新技术在工作中实际使用?本专场包含现在的技术的新的方案和实践,以及未来技术的探索,希望通过一线工程师的技术实践分享,给大家带来更多的思考和经验参考。
《基于Android App Bundles的动态化方案探索 》
陈家伟 / 爱奇艺 资深工程师
讲师简介:
2014年南昌大学毕业,硕士学历,五年移动端开发经验。曾就职于步步高、平安,目前就职于爱奇艺移动架构组,主攻Android动态化相关项目。包括React Native Android端架构设计、Android热修复、Android组件化等,近一年来作为Qigsaw项目负责人开展新一代Android组件化工作。Qigsaw基于Android App Bundle实现,具有维护简单、开发方式灵活、无缝切换至国际版等优点。
演讲简介:
Google于2018年Google IO大会推出Android App Bundles,然而它需要依托Play Service实现,在国内无法使用。AAB的开发体验非常棒,且由Google维护,如果能将AAB的开发工具也能用于我们日常的开发过程中岂不妙哉。
Qigsaw基于AAB实现,同时完全仿照AAB提供的play core library接口加载插件,开发查阅官方文档即可开始开发。如果有国际化需求的公司可以在国内版和国际版上无缝切换。同时Qigsaw实现0 hook,仅有少量私有API访问,保证其兼容性和稳定性。
演讲提纲:
- 介绍Android App Bundle发布流程
- 介绍Android Multiple APK相关知识
- 介绍国内插件化发展历史和简要介绍插件化主要原理知识
- 介绍Android Split APKs的原理
- 介绍Qigsaw工作原理及核心优势
听众收益:
- 了解Android App Bundles具体流程及实现
- 了解国内插件化发展历程及原理
- 了解Android Split Apk工具原理及其相应限制
- 了解Qigsaw核心优势及主要工作原理
- 介绍Android App Bundle发布流程
PPT链接:下载
《JavaScript in IoT》
刘亚中 / Rokid 研发工程师
讲师简介:
开源爱好者,Node.js Collaborator、ShadowNode 作者,目前主攻:Node.js 在 AIoT 领域的应用, 并负责 YodaOS 的社区推广工作。五年 JavaScript 开发经验,曾就职于:SeedMail、Pixbi、阿里巴巴,目前就职于 Rokid 基础平台研发中心,主要工作方向为基于 JavaScript 的物联网操作系统。近年来参与并负责 YodaOS 项目,将 IoT 和 AI 能力开放给 Node.js 社区,并实现了 Node.js 在 IoT 场景的产品级落地。同时也是 Node.js Collaborator、ShadowNode 和 TensorFlow-Node.js 作者,开源发烧友,目前给60个开源项目贡献过代码。
演讲简介:
JavaScript 作为 Web 浏览器的脚本语言而诞生,又经 Ryan 之手,得以运行在服务端。然而对于日渐丰富的 IoT 场景需求,JavaScript 回归到终端,将会以什么方式与大家见面呢?本次分享将以智能音响和 Rokid IoT 的业务场景为例,讲述 Rokid 通过 Node.js 如何演进迭代,又如何让 Node.js 一步步走入 ARM 的世界。
演讲提纲:
什么是物联网(IoT)
为什么选择 JavaScript?
物联网设备端 JS 引擎
(1)ShadowNode 背景介绍
(2)ShadowNode 发展史
(3)ShadowNode 与 Node.js 的关系
(4)ShadowNode 路径图为 Node.js 开发者做一个操作系统
(1)Node.js 工程师 OS 领域必知必会
(2)如何设计操作系统 API
(3)如何界定语言边界
(4)我眼中的 IoT 操作系统
听众收益:
- 可以了解到物联网和语音交互领域相关的知识
- 为业内在中低端设备 Node.js 运行时提供解决方案——ShadowNode
- 面向大前端人员的 OS 制作指南
PPT链接:下载
《移动 Web 上玩转原生游戏 》
杨轶 / 上海木鸡网络科技有限公司 联合创始人
讲师简介:
杨轶是上海木鸡网络科技有限公司的联合创始人,目前负责公司技术产品化和开发者技术合作方面的工作,是木鸡科技 WEBIR 技术的布道者。在联合创建木鸡科技之前,杨轶就职于 Intel 软件和服务集团,负责 x86 Android 游戏生态在中国区的技术普及工作,专注于 x86 编译器、游戏底层代码优化、引擎和图形渲染技术。在 Intel 之前,杨轶作为 BSP 高级工程师服务于 Freescale 网络多媒体事业部,专注于解决网络处理器性能优化问题。
演讲简介:
时至今日,Web 技术已经有了翻天覆地的变化,新的特性层出不穷,执行性能屡屡提升,WebAssembly 的出现更是一个革命性的改变,在这样一种大环境下,Web 游戏,尤其是移动 Web 游戏发展更是方兴未艾,如果能把大量优质的移动原生游戏迁移到移动 Web 上将是一件极其有价值的工作,这对移动 Web 生态会有巨大帮助,但同时各种技术挑战也是我们面临的一个个新课题,本讨论将结合现有各类技术和环境,同时引入 WEB-IR 这一新兴技术形式,尝试来解决这些问题,我们抛砖引玉,期望能给大家以启发,引领大家探索这一新兴领域。
演讲提纲:
当今移动端浏览器为游戏开发准备了啥
Web 上的游戏开发之现状
(1)Web 游戏引擎
(2)原生游戏引擎
- 移动 Web 上能玩原生游戏吗
(1)原生游戏引擎在移动 Web 上面临的挑战
(2)用 WEB-IR 来解决问题
- 案例分析
(1)一款贪吃蛇向的在线游戏
(2)一款 MMO 向的 3D 游戏
(3)一款动作游戏
(4)一款解谜游戏
- WEB-IR 需要解决的关键问题
(1)动态代码生成
(2)渐进资源加载
(3)虚拟上下文切换
(4)虚拟协程
- WEB-IR 工作流
听众收益:
了解主流商业游戏引擎在移动 Web 开发的利与弊
拓展移动 Web 游戏开发新思路
拓展我们思维——利用“前人的轮子”来解决问题
听懂我的演讲,需要具备这些知识储备:
- 有前端技术基础,譬如 JavaScript 、HTML5、WebAPI 等;
- 对编译原理基本了解;
- 最好对游戏引擎有所了解;
PPT链接:下载
《Hippy 前终端一体化框架的发展与未来探索》
罗梦砚 / 腾讯 iOS开发高级工程师
讲师简介:
iOS开发高级工程师,2014年加入腾讯,主要从事QQ浏览器iOS版开发工作。2017年11月开始从事Hippy sdk工作。
演讲简介:
移动互联网时代,用户导向的需求已经使快速开发成为各 APP 追求的目标。因此一款能够满足高开发效率、多平台支持、动态发布功能的框架成为各个团队重点研究的对象。React Native 自 2015 年发布以来一直是其中的佼佼者,但是随着研究的深入,其不足也已显现,如安装包大、性能与双端未对齐等问题困扰着开发者。因此腾讯 QQ 浏览器团队萌生了一个开发自己的框架的想法。一个诞生于 QQ 浏览器,服务于公共业务的框架。本次talk将重点从以下几个方面分享:
演讲提纲:
1.Hippy 的起源
1)现有解决方案的优劣,回顾我们遇到的问题
2)再造一个更高效率的轮子
2. Hippy 的发展
1)ListViewCell 的复用,减少内存消耗,提高性能
2)将动画功能由前端改为终端执行
3)手势判断交由终端处理
4)JS-native 通信层的优化
3.Hippy 的架构升级
1)介绍 Hippy-Core 产生的背景以及实现的功能
2)新架构的优化点
4. Hippy 的未来
1)W3C 标准化
2)合力共建听众收益:
- 了解 Hippy 的发展历程
- 了解 Hippy 的各项优化
- 了解 Hippy-Core 的新架构设计
- 了解 Hippy 的发展历程
PPT链接:无
注:由于讲师所在企业限制,不对外公布
小程序
小程序开发如火如荼,业界都有哪些实战经验?本专场将邀请来自一线的技术专家分享他们的实践和思考。
《腾讯在线教育小程序开发实践之路》
陈超 / 腾讯 高级Web前端工程师
讲师简介:
陈超,腾讯前端高级工程师,IMWeb团队成员,QCon明星讲师。负责腾讯课堂前端To B、小程序等业务的开发以及在线教育Web音视频的整体架构。对Web前端架构、直播技术等有深入的见解和丰富的实践经验。
演讲简介:
小程序是一种新的开放能力, 开发者可以快速地开发一个小程序,便可以在微信内被便捷得获取和传播,同时具有出色的使用体验。随着近一年小程序风口的爆发,越来越多的开发者、企业开始接入小程序,那么在在线教育领域,我们可以通过小程序玩出什么花样呢?
本次主要介绍腾讯在线教育在微信小程序,QQ小程序上面的平台类、工具类、内容类小程序的开发实践之路以及优化方案。针对大型平台型小程序的架构设计、OCR拍照识别、语音识别场景的小程序架构方案以及如何在小程序开发上提高效率、兼顾性能、踩坑的实践经验。另外还会有近期推出的QQ小程序,以及如何从微信迁移到QQ小程序的实践经验。希望参会者能够通过本次分享,了解到在线教育领域小程序的选型、架构设计方案,以及实践踩坑总结,性能优化之道。另外还将了解到QQ小程序与微信小程序的差异,如何快速接入,抢占第一风口。
演讲提纲:
1、腾讯在线教育小程序生态介绍
1.1 小程序项目总览
企鹅辅导(工具型)小程序
腾讯课堂平台型小程序矩阵
2、小程序基础架构设计
2.1 基础框架选型
2.2 目录结构规范
2.3 编码规范
2.4 基础开发脚手架
3、小程序开发实践
3.1 基于OCR的速算识别系统设计
3.2 腾讯课堂开发实践
3.2.1 腾讯课堂小程序音视频能力
3.2.2 - 状态管理
3.2.3 - 自动化发布
3.2.4 - 机构小程序
3.3 性能优化总结
3.4 小程序公共基础库
基础工具库- imwxutil
基础UI库 - imwxUI
4、QQ小程序
4.1 QQ小程序介绍
4.2 QQ小程序迁移实践
听众收益:
大型站点微信小程序开发过程中的选型、架构以及踩坑经验。另外还有准备上线的QQ小程序,如何无缝对接微信小程序。
PPT链接:下载
注:由于讲师所在企业限制,不对外公布
《用 React Hooks 重构你的小程序》
余澈 / 京东 高级前端工程师
讲师简介:
京东凹凸实验室前端工程师,主要负责基础设施建设和前端性能优化。热爱开源事业,先后作为主要开发者参与了 Vue.js 第一个大型 UI 库 vue-strap、高性能类 React 框架 Nerv、多端统一开发框架 Taro 的开发和维护。
演讲简介:
随着小程序业务复杂度的不断增加,前端软件工程的复杂度也在不断向小程序端转移。同时在传统前端开发领域,React Team 对复杂度这一问题给出的答案是 Hooks,Vue 也在 3.0 的 RFC 中规划了类似的 API。那我们是否可以将 Hooks 带到小程序开发里呢?
本次分享会讲解 Taro 对 Hooks 的探索。通过 Hooks API,我们可以摒弃 ES6 Class 或其它框架例如高阶组件、依赖注入、Behaviors、Traits 等等高大上的名词和概念,将小程序开发的复杂业务逻辑化简为一个个可预测的、可测试的普通函数。
演讲提纲:
背景
(1)小程序业务开发日趋复杂
(2)React 和 Vue 对框架复杂度的探索
(3)Taro x Hooks什么是 Hooks
(1)state/data vs useState
(2)Redux vs useReducer
(3)生命周期 vs useEffectHooks 在 Taro 的实现
(1)小程序端实现
(2)H5 端实现
(3)移动端实现Hooks 在小程序中实战
(1)自定义 Hooks
(2)大规模状态管理
(3)性能优化
(4)测试总结与展望
听众收益:
- 了解新旧 React 开发/设计模式
- 如何在小程序开发中使用 Taro 和 Hooks
- 在小程序开发中写高可用、高性能、可预测、可测试的代码
PPT链接:下载
《苏宁易购小程序同构实践》
禹立彬 / 苏宁 消费者平台研发中心前端技术总监
讲师简介:
禹立彬,十年Web前端开发经历,中国最早一批前端开发者,历任西祠胡同前端负责人、途牛旅游网前端架构师等职务。现任苏宁消费者平台研发中心前端技术总监,负责苏宁易购网站前端领域的技术管理工作。在基于Node.js的前后端分离,ReactNative/Weex开发有丰富的技术实践经历。
演讲简介:
小程序变化日新月异,各大厂商都推出了自己的小程序。 除了微信小程序以外,苏宁也同步开发了百度小程序、头条小程序等。同时小程序作为合适的载体,也特别适合放置于自有APP下。多端开发也带来了开发成本的增加,使得小程序同构方案迫在眉睫,在技术领域也已经出现了Taro、uni-app等解决方案。苏宁易购在小程序开发中,使用了另一条路,选择使用微信小程序原生代码作为开发语言,同步将小程序转换为多平台部署,积累了一些经验。本次演讲将从以下几个方面重点分享:
演讲提纲:
- 苏宁小程序开发现状与小程序同构
(1)苏宁多平台开发小程序带来的资源问题
(2)为什么使用微信小程序原生作为开发语言
- 主要技术方案简介
(1)技术思路—将微信小程序代码转换为其他平台代码
- 将微信小程序代码转换为百度小程序代码
(1)技术思路及痛点—-不同平台带来的业务逻辑不同
- 将微信小程序转换为ReactNative,运行在苏宁APP上
(1)微信小程序代码如何转换为React代码
(2)微信小程序组件如何转换为对应的ReactNative组件
将微信小程序代码平移到头条小程序
小程序平台化方案带来的技术限制
性能优化实践
听众收益:
对广大的小程序开发者,研发小程序同构方案的同道都有借鉴意义
PPT链接:下载
编程语言
编程语言专场会关注 JavaScript、Dart、Swift等这些语言的特性和应用,这些是目前大前端领域在用或者趋势性的语言。
《在分歧中发展——2019,我们能用 Swift 做什么》
王巍(喵神) / LINE 高级软件工程师
讲师简介:
王巍,LINE高级软件工程师,现在是一名专注于 iOS 的职业开发者。他拥有对于 Swift、Objective-C 以及网络程序设计方面的深厚知识及多年实践经验。他将这些技术运用于创建应用程序和通用框架等解决方案,其中包括 Kingfisher 等框架很多都被用户喜爱,并被开发者社区广泛使用来构建其他软件。同时,他是 ObjC 中国组织的发起人和领导者,为将最佳 iOS 实践和进阶技术引入中国而不断努力。
演讲简介:
Swift 是 Apple 于 2014 年公开的专属编程语言,并且于 2015 年底开源。在公布初期,Swift 就因为其新鲜和强大的语法和易于上手的特性,备受期待。经过五年的发展和持续进化,Swift 5 终于迎来了 ABI 稳定,这也预示着 Swift 的“语言革命”暂告一个段落,这门语言也将有机会被运用在更广阔的领域。除了传统的 iOS 和 macOS App,Swift 近一年来也逐渐在其他领域和方向发力。依托于现有的大前端的一员的移动开发者们,相对于 Microsoft,Facebook 和 Google 的对等语言的解决方案,Apple 和 Swift 正在尝试一条与其他前端语言完全不同的全新的道路。
本次分享将会以 App 开发中的 Swift 为起点,向听众介绍这一年来 Swift 的几个大变化,包括 Swift 性能方面的改进以及 ABI 稳定为 Apple 平台未来的开发带来的影响等。之后着重对 Swift 以此为基础的分支发展做详细介绍,包括 Server、脚本以及 AI 等方面的变革。通过本次分享,希望能帮助对 Swift 有兴趣的开发者了解这门语言的最新情况,并鼓励听众在合适的情景下尝试使用 Swift 进行开发,以提高工作效率并获得更稳定的效果。
听众受益:
- 理解 Swift 在 App 开发中相对于传统 Objective-C 解决方案以及对于其他选择 (Flutter、RN 等) 的优劣。
- 理解当前 Swift 发展现状和 Swift 社区及核心维护者对未来的展望。
- 知晓除了 App 开发之外 Swift 也非常适合使用在其他某些领域,以及对于对应领域现有方案的比较。
听懂我的演讲,需要具备这些知识储备:
- 熟练使用一到两门任意编程语言 (不需要是 Swift),以及一定的任意端的工作经验。
- 如果使用过 Swift/Flutter/RN/NodeJS/Python 等会更利于理解,但并不是必要。
- 理解 Swift 在 App 开发中相对于传统 Objective-C 解决方案以及对于其他选择 (Flutter、RN 等) 的优劣。
PPT链接:下载
《WebAssembly — 技术变革,未来已来》
于航 / 饿了么 资深前端工程师
讲师简介:
目前在 阿里巴巴/本地生活 做前端技术工作;FCC 上海社区负责人;2016 年开始研究 WebAssembly 技术,由于当时网络上信息较少,只能通过官方博客和网站发布的信息再结合自己的实践进行研究。2017 年加入 WebAssembly 中国社区,主要负责维护 WebAssembly 相关的实践资源和技术资讯分享。同年注册成为官方 CG 成员,定期参与 CG 组织的各种在线视频研讨会议,在跟进 WebAssembly 最新发展情况的同时也为 WebAssembly 的标准化提出自己的建议和意见。2018 年深入参与到 Emscripten 编译器工具链的项目研发中,同年出版名为《深入浅出 WebAssembly》的国内第一本 Wasm 技术书籍,为推动国内 Wasm 技术的发展和落地实践做出了微小的贡献。研究方向主要为前端技术、 Wasm、编译器以及 LLVM 等相关方向。
演讲简介:
WebAssembly 技术自 2015 年出现后便一直受到开发者们的关注。相较于 Chrome 早期推出的 PNaCL 等技术,WebAssembly 技术则更加开放和统一。WebAssembly 作为一种新的二进制格式,它可以方便地将 C/C++/Rust 等其他静态语言代码快速的“运行”在浏览器中,这一特性为前端密集计算场景提供了无限的可能。不仅如此,基于 WebAssembly 技术,我们可以快速的将基于 Unity 游戏引擎开发的大型游戏快速的移植到 Web 端,这一切都要归功于 WebAssembly 技术带来的前端运算性能的大幅度提升。WebAssembly 技术现在已经成为 W3C 的标准,众多浏览器厂商已经提供了对其 MVP 版本特性的支持。在 Google IO 2017/18/19 连续三届大会上,谷歌也将 WebAssembly 技术作为重点进行了公开的演讲介绍和推广。Post-MVP 版本标准更是会对诸如复杂类型引用(如 DOM 对象)、多线程和 GC 等特性提供支持。WebAssembly 技术所带来的、不仅仅局限于 Web 层面的技术变革在未来将变得势不可挡。
演讲提纲:1、什么是 WebAssembly?
(1)JavaScript 的历史痛点;
(2)曾经失败的尝试:asm.js 与 PNaCL;
(3)Wasm 的基本用法:基于 Emscripten 的简单介绍;
2、Roadmap & Milestone
(1)Pre/Post-MVP 技术迭代:多个技术提案对 Wasm 发展带来的变化,如 Tail Call 支持、Reference Type、SIMD、GC、基于栈的多返回值、BigInt 等;
3、百花齐放、百家争鸣
(1)各个业务领域的 Wasm 尝试:边缘计算 - 终端人脸识别、直播/短视频解码、安全 - 基于 VM 的前端代码加密、游戏 - 基于 WebGL 的高帧率游戏等;
(2)各个技术领域的 Wasm 尝试:Wasm 领域近两年出现的技术产品和尝试,如各类语言编译器和工具、运行时领域的 Wasmer、区块链领域 Ethereum 核心、前端领域的 Sharpen、Ammo.js 等;
(3)支持编译到 Wasm 的语言:C / C++ / Lua / Rust / Go …
4、未来可期
(1)诞生于 Web,基于 Web 平台的更多可能;
(2)WASI:平台独立与 Runtime;
(3)构建生态:宏观层面的 Wasm 技术布局和潜在生态赋能,如 JS 框架、区块链、CDNs、Serverless、IOT、Portable CLI 等;
(4)真相和弱点:介绍现阶段的发展和可落地情况;
听众收益:
- 了解 WebAssembly 技术的基本核心原理
- 了解 WebAssembly 技术现阶段的发展情况
- 了解 WebAssembly 技术所带来的实际业务改进和提升(优势)
- 以及 WebAssembly 技术在未来的发展方向
听懂我的演讲,需要具备这些知识储备:
基本的 C/C++ 编程经验、前端 JavaScript 基本语法;
- 了解 WebAssembly 技术的基本核心原理
PPT链接:下载
《Event Loop、Future与Isolate - 单线程模型下的Dart异步编程模式》
陈航 / 美团点评 高级技术专家
讲师简介:
陈航,专注于大前端开发领域9年。曾就职于雅虎北研和新浪微博,2015年加入美团,经历了外卖用户端和商家端发展的多个阶段,推动了外卖移动端架构演进、线上运维及终端技术栈融合等相关工作。现任美团外卖商家业务终端团队技术负责人,致力于提升终端团队研发效率与交付质量。
演讲简介:
在前端开发领域被JavaScript一统天下的今天,Dart语言的出现无疑是一股清流。作为后来者,Dart集百家之长,拥有其他优秀编程语言的诸多特性和影子。凭借着Flutter火热的势头,作为构建Flutter的关键技术,越来越多的开发者开始慢慢了解、学习这门语言,并共同完善它的生态。
单线程模式下的Dart是如何从语言设计层面和代码运行机制上保证Flutter UI流畅性的,关于异步和并发编程,作为开发者的我们又该了解Dart的哪些知识呢?本次分享将带领听众从几个小例子出发,由浅至深循序渐进的了解Dart语言的Event Loop处理机制、异步处理和并发编程的原理,从语言设计和实践层面理解Dart单线程模型下的代码运行本质,从而懂得后续如何在工作中使用Future与Isolate,优化Flutter项目。
演讲提纲:
1. Dart单线程模型Event Loop - Dart代码运行模式本质
(1)Dart事件处理机制
(2)Event Queue介绍
(3)MicroTask Queue介绍Future - 单线程模型下的Dart代码是如何异步执行的?
(1)Future运行机制分析
(2)异步执行与同步等待
(3)异常处理
(4)案例分析Isolate - Dart中的“多线程”机制
(1)Isolate原理介绍
(2)Isolate的创建与销毁
(3)Isolate消息机制
(4)Isolate实战Future与Isolate适用场景
听众收益:
- 理解Dart单线程模型下代码运行本质
- 懂得Dart异步处理和并发编程的原理和各自适用的场景
- 懂得如何在项目中使用Future与Isolate优化现有代码
听懂我的演讲,需要具备这些知识储备:
有基本的Dart编程经验或一定的JavaScript经验,看得懂基本的Dart语法
PPT链接:下载
质量保证
多变的用户场景、复杂的兼容性需求以及开发技术的迅速更迭都给质量保障和产品安全带来了重大挑战。本专场将重点关注前端测试和安全方向,我们将邀请知名互联网公司的技术专家分享他们独到的解决方案,希望通过本次专场分享给大家在质量保障方向带来更多的借鉴和思考。
《基于精准测试及AI技术的前端质量保证实践》
刘道伟 / 百度 资深测试工程师
讲师简介:
百度搜索质量部资深测试工程师(T7),2014年加入百度,成为搜索展现架构测试技术负责人,建设了搜索展现架构移动端质量保证体系。2018年开始作为搜索前端测试技术负责人,主要负责搜索前端的测试技术创新及质量保证工作,针对前端迭代快、回归量大、展现效果难以验证等难点,在测试前、中、后等不同阶段引入精准测试、图像技术、AI技术,实现单纯的UI-自动化向全环节的自动化转变,形成整个测试的闭环。
演讲简介:
百度搜索前端是整个搜索中迭代最快的产品线,日均上线需求20多个,但是依赖手工测试、展现样式难以自动验证等问题是困扰前端质量保证的难题。
百度搜索前端测试技术方向将整个测试分为测试前、中、后环节,通过基于大数据的测试分析解决手工测试的低效,覆盖粗犷的问题;通过页面对比、效果case、真机自动化解决大规模模板的自动化回归问题;引入机器学习、图像技术解决前端自动化异常结果判断的问题;同时建设测试的数据沉淀的机制,将测试中产出的图像、人工标记、bug、case等数据沉淀下来用于提高测试分析的准确率,形成测试的闭环。本次talk将重点从以下几个方面进行分享:
演讲提纲
- 项目背景
(1) 百度搜索前端简介
(2) 前端测试难点及解决方案
- 精准测试实践
(1) 为什么需要精准测试
(2) 精准测试离线方案
(3) 精准测试在线方案
- AI及图像技术实践
(1) 前端UI自动化现状
(2) AI识别乱码及展现异常
(3) 基于元素相对位置的前端异常识别方案
- 搜索前端质量保证实践
(1) 如何从零打造前端质量保证体系
(2) 前端工程能力地图
- 小结
听众受益
在前端测试中如何有效利用不同维度的海量数据提升测试效率及测试覆盖度
AI技术及图像技术在前端质量保证中的应用实践
如何从零开始建设前端的质量保证体系
PPT链接:下载
《从代码保护出发详谈业务安全前端对抗》
刘忠正 / 腾讯 防水墙团队前端负责人
讲师简介:
毕业于华南师范大学,2017年加入腾讯安全平台部防水墙团队,现任腾讯防水墙团队前端负责人,负责腾讯防水墙产品的前端技术架构及产品研发。研究的方向包括前端数据保护、前端代码混淆、前端执行环境检测等。参与指导过腾讯视频、腾讯文档、微信小程序等项目的代码保护工作,为业务提供Web前端代码保护能力,如今腾讯防水墙每天为腾讯及生态内公司提供上亿次的业务安全安全防护。此前曾任职于阿里巴巴安全部,负责基础安全平台产品的研发工作。而后在51信用卡前端架构团队,负责51信用卡的前端规范制定和基础产品研发。
演讲简介:
前端是一个非常透明的领域,所有代码均被下载到用户本地并执行,所有逻辑一览无余,这也为恶意刷量提供了可乘之机。了解前端的所有交互逻辑,意味着可以用脚本直接模拟完成所有操作,就像买火车票,最终正常用户败给了黄牛和工具。
腾讯防水墙在数十年的黑产对抗中积累了大量数据和技术经验,结合大数据、黑产情报和验证码对恶意流量进行多维度打击。本次分享将从验证码产品的对抗方案出发,讲述业务安全前端会面临哪些问题,以及相应的解决方案和实践经验。其中包括前端数据保护、代码保护、模拟器检测等,希望为面临业务安全问题的与会者提供参考。
演讲提纲:
- 业务安全对抗背景
(1) 业务安全背景
(2)恶意分类
(3)图像对抗的脆弱性
- 前端解决方案
(1)前端数据保护
(2)前端代码保护
- 字面量混淆
- 流程混淆
- 调试检测
(3)执行环境检测
- Node.js 环境检测
- 模拟器环境检测
(4)动态混淆技术
- 小结及效果
听众受益:
了解神秘的业务安全领域前端需要做哪些事
了解代码混淆可以从何入手
了解腾讯在前端恶意对抗上的实践经验
PPT链接:下载
注:由于讲师所在企业限制,不对外公布
《搜狗精准化测试的设计与实践详解》
王鹏 / 搜狗 资深高级测试开发工程师
讲师简介:
王鹏,北京搜狗科技发展有限公司,资深高级测试开发工程师。2008年加入测试行业,2009-2013年在腾讯北京负责搜搜发薪、搜搜工具栏等项目的质量工作,2013年至今担任搜狗社区类项目测试负责人,主要工作内容包括测试工具平台的建设,前端测试体系的建立,精准化测试的探索与落地推广等工作。
演讲简介:
搜狗百科和搜狗问问都是5年以上的项目,期间经历过多次重构,新旧功能之间的各种关联给黑盒测试带来了巨大的挑战。新兴项目依赖于原有底层服务,项目快速迭代,经常带来莫名其妙的线上问题,对老项目造成影响超出黑盒测试能力范围。
本次分享将会从实际问题出发,详细介绍测试闭环中,哪些节点适合应用精准化测试;在不同的测试场景中,如何选择和开发工具来完成精准化测试;由浅入深的介绍精准化测试在搜狗社区项目中的前世今生。通过本次分享,您将会对精准化测试思想有一个实在的理解,您能够收获一些关于js覆盖率、java覆盖率、代码diff、函数依赖关系计算等工具开发的小心得,您也可以了解到这些思想和工具的一些实际应用场景。
演讲提纲:
- 精准化测试思想
(1)让测试尴尬的那些事
(2)黑盒测试的弊端
(3)白盒测试的局限性
(4)自动化不是万能的
(5)精准化思想的精髓
- 精准化测试设计
(1)必须面对的问题
(2)最初的需求
(3)函数依赖关系计算
(4)代码diff解析
(5)用例的自动筛选
(6)应用精准化测试的环节
- 精准化测试实践
(1)精准化测试平台介绍
(2)功能演示
(3)问题的答案
(4)更多思考
听众收益:
1.可以对精准化思想有一个比较直观的理解
2.对想马上在项目中引入精准化测试的同学,提供一些便捷的方法和思路
3.可以了解到实际应用中的一套完整的精准化测试解决方案
PPT链接:下载
深度培训
想更深入地学习热点技术吗?GMTC特设为期2天(6月22-23日)的会后深度培训,邀请业内资深专家围绕Flutter、客户端和端内H5的性能问题优化、Android应用深度优化等热门技术,展开从入门到实践的落地分享。
《Flutter 技术进阶与实战》
李会超 / 美团点评 技术专家
讲师简介:
李会超,美团点评技术专家。专注于大前端开发领域多年,曾就职于新浪微博,现任美团外卖商家业务iOS负责人,致力于提升研发效率与研发质量,为商家提供稳定可靠的生产力工具。在美团的四年时间,推进了商家业务移动端架构升级和基础设施建设,探索并大规模落地了多端复用的多重可行性方案,对React Native和Flutter拥有深刻的理解及丰富的项目实践经验,是美团点评最早落地Flutter线上大规模应用的实践者和推动者。
演讲简介:
一、课程概述
Flutter应用是如何运行起来的?Flutter开发体验是怎样的?Flutter框架有哪些新思路来提升开发效率?如何将Flutter集成到企业应用中?用一套代码实现在iOS、Android平台上体验优良的应用,Flutter值得我们学习。
本课程结合具体工程实例讲解,总结了企业应用落地实践过程和经验、应用底层技术,帮助团队快速了解Flutter开发核心技能,在低成本前提下实现业务的快速迭代。
二、课程大纲
Flutter基本框架及原理讲解
开发调试与热重载
App集成方案
仓库管理及项目结构组织
页面/数据框架使用
企业级落地整体方案
Flutter未来发展
三、听众收益
了解Flutter开发框架及基本原理
了解Flutter开发调试方法
了解Flutter集成方案
了解Flutter企业应用落地方案
四、目标听众
中小型移动开发团队
需要快速迭代的团队
独立开发者
PPT链接:无
《客户端性能优化、用跨端突破端内H5的性能瓶颈》
马华 / 滴滴 司机端iOS团队负责人
讲师简介:
马华,从事移动端开发9年,前端、客户端、后端技术全栈,先后供职于人人、新浪、百度、滴滴,在iOS安全、iOS操作系统、动态化、跨端、技术架构、Web性能优化方面有深入研究和探索,目前在滴滴负责司机端iOS团队和跨端项目Thanos团队。
演讲简介:
一、课程简介
从客户端遇到的性能问题出发,一步步分析并解决相关难题,但端内H5的性能瓶颈是真实存在的,并最终采取跨端方案来彻底突破性能瓶颈,实现泛前端大融合。本课程会围绕客户端和端内H5的性能问题,以及跨端方案落地的具体细节,周边生态建设,以及自研跨端方案的长期规划,探讨如何实现业内领先的自研跨端方案,帮助大家在性能优化和泛前端的路上能够有更清晰的认知,弯道超车,快速成长。
二、课程大纲
1.客户端Native的性能问题和解决方案
2.客户端Native性能监控、包大小优化
3.端内H5遇到的性能瓶颈及跨端方案如何突破瓶颈
4.对于泛前端和全栈的思考
5.市面跨端框架的对比和思考
6.跨端方案如何落地到业务,实现性能优化
7.自研跨端框架的探索和实践
8.未来展望
三、听众收益
1.了解客户端Native的性能问题和解决方案
2.了解Native性能监控
3.了解端内H5的性能瓶颈及跨端方案落地的具体细节
4.了解泛前端和全栈能力必要性的思考
5.了解自研跨端框架的思路和跨端方案未来的方向
四、目标听众
1.移动开发团队
2.独立开发者
3.业务快速迭代的团队
PPT链接:无
《Android应用深度优化》
何定旭 / 美团点评 Android技术专家
讲师简介:
何定旭,美团点评Android技术专家,Android基础设施组负责人,Android热更新Robust作者
演讲简介:
随着互联网进入下半场,Android系统从诞生到现在也经历了10余年了,随着业务发展得越来越壮大,我们的代码和逻辑也越来越复杂,随之而来的难题就是我们如何在保证业务高速稳定发展的情况下对我们的应用进行深度优化。本次演讲分享了从应用的编译期到运行时的全生命周期的深度优化实践,重点探讨了如何优化打包时间与包大小、运行时java层与native层的深度优化等。
演讲主要内容包括:
1、背景
2、编译期深度优化
(1)包大小
(2)打包时间
(3)差量升级
3、运行时深度优化
(1)java层优化(内存优化、卡顿优化、电量优化等)
(2)native层优化
4、难点
(1)字节码优化
(2)ProGuard优化
(3)内存优化
5、成果与总结
听众收益:
提供了可借鉴的Android应用深度优化的体系化思路与方案,听众可结合自己的应用代码,进行应用的深度优化工作,支撑并驱动业务高速稳定发展。
目标听众:
1、移动开发团队
2、独立开发者
3、业务快速迭代的团队
PPT链接:无
移动AI
AI技术通过各种智能终端离我们的用户更近了,它除了满足用户各种各样的需求,如智能翻译、语音指令等,还能不断提高我们的研发质量,如UI自动化测试框架、图像/视频的智能识别等。在本专题下,我们将看到各个顶尖技术团队是如何结合终端+AI技术,带来更好的用户体验的。
《百度小游戏中AR的探索和实践》
沈毅 / 百度 资深研发工程师
讲师简介:
2012年浙大毕业加入百度从事前端开发至今,目前担任百度资深研发工程师。主要研究Web图形方向(WebGL、Canvas、SVG)和数据可视化方向,游戏开发民科。是Apache ECharts的核心开发,参与过多次关于WebGL,ECharts和数据可视化的分享,现在主要负责百度的小程序小游戏项目。
演讲简介:
虚拟现实和增强现实是现在非常火的两个话题。特别是增强现实,在苹果的ARKit和Google的ARCore发布后,让大家一下子看到了在实践中应用的可能性。在游戏行业,增强现实也给手机游戏带来了更多的可玩性。因此我们在百度小游戏中也吃了一次螃蟹,借助WebXR标准,把AR能够集成到小游戏中,让小游戏的开发者也能够利用AR的能力。这次分享主要就介绍我们如何在小游戏集成AR,集成过程中碰到的问题及方案。
演讲提纲:
- 背景
(1)百度小游戏的介绍以及引入AR能够给百度小游戏带来什么
(2)现在已有的一些AR方案的介绍
(3)WebXR与AR
- 百度小游戏中对AR的应用
(1)ARCore和ARKit的集成,特征点检测、平面检测、环境光照检测,锚点的应用
(2)平台的性能,兼容性问题及降级方案
(3)人脸等AR能力的扩展
(4)AR中的多人联机
- 小游戏的AR case举例,通过case介绍
(1)AR应用于普通应用交互上的不同
(2)在应用中发挥出AR的优势
听众收益:
了解一些AR的基础概念和发展现状
能够对如何应用AR带来一些启发
了解在自己的场景里应用AR的一些最佳实践
PPT链接:下载
《WebNN - 将硬件加速的深度学习带入开放式Web平台》
张敏 / 英特尔亚太研发有限公司 软件技术经理
讲师简介:
2013-至今,目前担任英特尔亚太研发有限公司 Web Platform Engineering Team 软件技术经理,深度参与到 W3C Web Platform Test 的贡献,参与 Intel 的开源 Crosswalk Web Runtime 的完整生命周期,目前负责的团队参与到 Intel 的 Web Neural Network API, PWA 以及 WebGraphics 等项目。
2007-2013,担任Opera Software 软件经理及产品经理,负责 Opera 浏览器以及欧朋浏览器的软件质量及产品 (客户端运营和关键数据)团队,负责浏览器在 Android、iOS、PC 等所有平台的质量,以及在中国市场的网站兼容性。同时负责浏览器产品的新特性定义和原型,包括 Opera 欧朋 Lite 浏览器 4.x 以及 Opera 欧朋浏览器 7、8 的产品工作。
演讲简介:
近年来,机器学习技术,特别是深度学习子领域已经成功地用于高级模式识别应用,例如图像识别、语音识别和自然语言处理。包括英特尔在内的硬件供应商正在积极优化深度学习工作负载的性能,不仅要扩展 CPU 和 GPU 的功能,还要引入新的专用加速器。但是,在 Web 平台上运行的程序仍然缺乏和原生程序类似的性能。为了解决这种情况,我们提出了 Web 神经网络(WebNN)API,用于访问 Web 浏览器中的深度学习硬件加速。我们在 Chromium 中构建了 WebNN API 原型,我们的原型运行在 Windows、Linux、macOS 和 Android 等平台上。我们在 TensorFlow 和 ONNX 的深度学习模型上尝试了我们的 WebNN 原型,在 GPU 上观察到 3-13 倍的加速,并且在CPU 上加速超过 10 倍。
本次分享将以目前 Web 平台深度学习框架的性能分析为起点,详细介绍 Intel Web 团队对 WebNN 的原理和实现,以及带来的真实的性能提高等内容。希望能够对关注深度学习框架,尤其是在 Web 端应用以及 Web 端深度学习框架的与会者带来新的技术和帮助。
演讲提纲:- 背景
(1)AI 技术在 Web 端的演进和发展
(2)现有 Web 端 AI 框架的性能问题
- 提案
(1)WebNN API 的提案
(2)WebNN API 的分层架构
(3)WebNN API 的实现
API 及代码示例
结果数据
(1)基准测试
(2)性能数据
- 现场体验(Demo)
(1)现有示例及 Demo 体验
(2)性能展示
在 W3C 社区组的最新进展
WebNN API 对前端开发者的帮助
WebNN API 对 AI 框架和浏览器内核的助力
听众收益:
- WebNN API 会使 Web 前端开发者了解在深度学习领域的性能提升新方案
- 有助于 Tensorflow.js、ONNX.js等框架使用者了解适配 WebNN API 后的性能改进结果
- 帮助国内其他厂商应用 WebNN API,显著助力自己深度学习框架的性能提高
听懂我的演讲,需要具备这些知识:
Web 前端、JavaScript,以及初步的 AI 知识
PPT链接:下载
《MNN - 端侧推理引擎面临的挑战与应对》
陈以鎏(离青) / 淘宝 无线开发专家
讲师简介:
2015年加入淘宝,从事无线开发至今,目前担任无线开发专家一职。是阿里巴巴开源的首款端侧推理引擎 MNN (Mobile Neural Network) 的核心开发。
演讲简介:
随着深度学习的快速发展和端侧设备算力的不断提升,原本在云端执行的推理预测工作正在部分迁移到端侧。相较云端智能,端侧智能具有低延时、兼顾数据隐私、节省云端资源等优势。MNN作为手机淘宝、手机天猫、优酷等App中的轻量级的深度学习端侧推理引擎,支撑了直播、短视频、搜索推荐、图像搜索、互动营销、权益发放、安全风控等场景下的端侧智能,每天稳定运行上亿次。近日,MNN已经在Github上开源。这次分享就为大家带来MNN开发、开源中的思考与总结。
演讲提纲:
- 背景
(1)移动AI的发展现状
(2)端侧智能面对的挑战
- 应对之道
(1)模型转换与优化
(2)调度管线与抽象计算设备
(3)预处理与内存复用
(4)性能优化
(5)取舍
(6)性能比较
(7)流程优化
基于编译器优化方案的比较
移动AI应用场景
开源与规划
听众收益:
- 了解移动AI的发展状况和应用场景
- 通过端侧推理引擎了解移动/IoT深度优化策略
PPT链接:下载
架构演进
本专场关注架构重构、移动中台等方向,将邀请一线技术专家分享相关技术实践,给大家带来更多的思考和经验参考。
《如何使超大型⼯程矩阵高速运转及⾃下而上的技术演进揭秘》
吴思振 / 字节跳动 资深工程师
讲师简介:
毕业于北京邮电大学,先后供职于百度、蘑菇街。2017年加入字节跳动,负责字节跳动无线研发平台,从零主导建设了字节跳动无线技术中台,向公司范围内所有业务线提供组件化通用技术支撑、CI/CD、分布式编译优化方案。现技术中台服务于公司各主要业务线,其自研的分布式编译方案为各业务线提供0成本的编译优化方案,以头条APP为例,以0成本接入方式,实现1500%的编译效率提升。
演讲简介:
在2017年年末,字节跳动iOS基础技术组将开发环节中的各个阶段进⾏抽象,开始建立起一个具有标准化开发、接入维护流程和辅助工具,实现一键集成、持续反馈和迭代的中台服务。提供了从线下开发到CI测试再到线上管理的闭环、一站式研发平台。同时针对各个抽象研发阶段都产出了独立的技术成果,其中针对业内常⻅的超⼤型工程编译效率产出了核心的专利技术。本次talk将重点阐述超⼤型产品矩阵的背后的协作原理以及如何自下⽽上的进行技术推进。
演讲提纲:
字节跳动⽆线研发中台概述
(1)平台的项⽬背景
(2)平台定位以及技术组件管理平台
(1)为什么要建设组件管理平台
(2)组件管理平台的技术以及产出
(3)平台的收益APP⾼速开发的安全保障
(1)过去CI-CD的背景
(2)自纠错系统在CI构建中的实践
(3)核⼼技术-分布式编译在字节跳动APP中的实践基于组件化开发的应⽤管理平台
(1)平台背景
(2)平台如何在项⽬中落地
(3)平台收益小结
(1)实施效果说明:目前接入了公司內各主流业务线,服务覆盖主流业务线客户端研发同学,最高构建提升1500%,平均提升500%
(2)技术亮点:零成本接入的编译优化方案;多业务线及超大型工程如何有条不紊的高速运转
听众收益:
- 了解超大型产品矩阵的背后的协作原理
- 如何⾃下而上进行技术推进
- 移动端除了UI和跨平台还有什么可以做的
PPT链接:下载
《基于 Serverless 的淘宝前端研发模式升级》
吴敏琦(七念) / 淘宝 高级技术专家
讲师简介:
七念,2012年从 IBM 加入淘宝,曾负责淘宝前端数据产品和创新技术产品团队,后负责 Node.js 基础架构团队,并担任阿里巴巴前端委员会 Node.js 方向负责人。推动 Node.js 应用的稳定性治理,推动 Serverless 技术落地前端场景。同时也是 Node 地下铁线下沙龙创始人。
演讲简介:
淘宝导购业务Serverless化是对业务前端研发模式的一次巨大升级。云端一体的轻量级函数研发范式和故障排查体验使得前端可以进行更高效的业务交付。而如果没有系统化的高可用保障,这样的升级同样无法实现。本次分享向你还原这次升级的前世今生台前幕后。
演讲提纲:
- 背景
(1)必要性: 新零售业务的变化
(2)可能性: Serverless技术演进,中间件服务云化成为基础设施,轻量化服务端研发成为可能
- 挑战
(1)研发模式的瓶颈
(2)前端能力的边界
(3)Serverless技术的成熟度
- 结果数据
(1)淘宝导购业务Serverless实践数据
(2)线上承载千万级别流量
(3)性能数据
- 现场体验(Demo)
(1)研发体验
(2)线上问题排查体验
- 设计思考
(1)开发模型和运行模型的分离
(2)面向函数的研发范式
(3)云+端的融合
- 对前端技术演进带来的收益和挑战
(1)淘宝前端独立支撑导购业务
(2)云端一体的研发排查效率
(3)对前端从业者的能力挑战
听众收益:
Serverless技术支撑在线型业务的实践
Serverless技术对前端研发模式升级的启示
云端一体的研发模式和高可用保障的整体设计思考
PPT链接:下载
《滴滴乘客端Android架构演进解密》
何斌斌 / 滴滴 高级技术专家
讲师简介:
何斌斌,至今工作已有10年,一直专注于移动互联网领域研发,2014年加入滴滴,现任高级技术专家,负责滴滴乘客端Android版本、Android公共基础支撑等工作,多次主导并设计了滴滴乘客端架构的演进。
演讲简介:
滴滴出行为用户提供了多种出行方式及运输等服务,乘客端作为满足用户出行需求的第一入口,天然具备多业务品类、多端以及国际化等维度属性,需要满足多业务的快速发展和产品的高频高效迭代,基于此,衍生出了现在的滴滴乘客端架构,通过本次分享,我们将带您一起对其进行解密。
演讲提纲:
- 乘客端的特点
(1)多业务品类
(2)多端
(3)国际化
- 乘客端架构
(1)架构解析
(2)工程构建
- 基础模块化-Nimble
(1)Nimble组成
(2)Nimble原理解析
- 通信框架
(1)DRouter
(2)IMC
- 业务配置化
(1)配置化粒度
(2)配置化方案
听众收益:
大型APP工程架构的设计思路
深入理解模块化的本质
多维度业务模型定制化研发方案的实践
PPT链接:下载
《腾讯课堂大前端架构演进历程解析》
晏家红 / 腾讯 客户端高级工程师
讲师简介:
晏家红,腾讯客户端高级工程师,2016年加入腾讯,负责腾讯课堂iOS整体架构设计、跨平台方向以及音视频建设的工作,参与了从React Native、自研跨端框架Plato到基于Flutter的跨平台框架研发,同时从零主导建设了教育自研播放器ARMPlayer。对跨平台、音视频等有丰富的经验。
演讲简介:
腾讯课堂是老师在线上课教学、学生及时互动学习的平台,近年来互联网的发展越来越快,技术水平、服务质量不断提升,用户对视频播放技术的可靠性、性能、播放体验等要求越来越高,如何提升用户体验成为了我们亟待解决的问题,针对用户体验的关键指标进行优化改造,从直播和录播架构重构到自研播放器、再到首帧、成功率、播放体验等进行优化。同时伴随着课堂的快速迭代,移动开发越发的追求开发效率与体验一致性,跨平台与动态化的需求日益攀升,课堂从RN到自研跨端框架Plato、再到Flutter,对跨端技术进行了深度实践和优化。本次分享将带您了解课堂插件化工程、跨平台设计、音视频优化。
演讲提纲
- 背景
(1)腾讯课堂产品形态
(2)架构演进必要性
- 跨平台
(1)Native模版
(2)JS+Native的Hybrid
(3)React Native
(4)自研跨端框架Plato
(5)Flutter
- 音视频
(1)直播和录播整体架构演进
(2)自研播放器ARMPlayer
(3)直播和录播首帧、成功率、播放体验等优化
- 工程插件化
(1)工程整体架构
(2)插件化设计
- 总结与展望
(1)音视频和跨平台技术结合
(2)新型上课模式和场景
(3)VR、AI延伸
听众收益:
Hybrid、React Native、Flutter等大前端技术的原理和实践
音视频相关技术及其首帧、成功率、播放体验等优化
可插拔的插件化工程设计思路
PPT链接:下载
前端团队管理和个人成长
作为新手管理者,如何平衡业务和管理?前端框架怎么选?如何做好Code Review?个人职业规划上,如何一步步升级打怪,不断晋升?本专场着眼团队管理和个人成长两个方面,将邀请一线技术专家分享其心路成长历程,听听他们的前端职业生涯故事,给大家一些参考和经验。
《技术驱动型团队的组织建设经验谈》
吴亮(月影) / 奇虎360 奇舞团技术总监
讲师简介:
吴亮(月影),奇虎360奇舞团团长,360技术委员会委员,JavaScript程序员,可视化UI框架SpriteJS作者,知名前端技术专家,w3ctech顾问。
演讲简介:
奇舞团是一个典型的技术团队,除了支持公司业务和产品之外,还承担着大前端技术平台的建设,推动新的技术落地于产品,为公司培养优秀的前端人才。作为技术团队的管理者,以什么样的管理风格来推动技术团队成长,这其中会遇到什么样的问题,有哪些思考,这些是我想要自我总结和分享给大家的点。
在中国的管理哲学中,有一个观点叫做“无为而治”。这个观点在现在遭到很多人的批判,认为这是一种管理上的逃避,然而这种批判又是否正确呢?这种管理哲学有没有什么可取和可行之处?在这个演讲中,我想围绕这个争议的管理哲学说一说我自己的认知和心得。演讲提纲:
- 技术驱动型团队的核心价值
(1)什么是技术驱动型团队
(2)业务与中后台的划分
(3)技术团队的核心价值
- 管理四象限
(1)对上与对下
(2)对人与对事
- 建立有效组织
(1)定义“有效组织”
(2)组织的创建
(3)组织的发展过程
(4)组织与团队管理
(5)组织OKR与激励
- 组织建设背后的管理哲学
(1)“无为而治”?
(2)组织、管理者与人心
(3)思考:“管理边界”
- 总结
听众收益:
对新手管理者、从技术转管理工程师、中层管理者应当都有借鉴意义。
PPT链接:下载
《打造通用型高效前端团队》
吴子房 / 网易 前端开发专家
讲师简介:
网易前端开发专家,网易严选ToB前端开发负责人。2005年毕业于浙江大学,2010年加入网易,负责过网易邮箱、邮箱大师、网易严选等产品前端。全栈开发,开发过前端框架、Node应用框架,TypeScript坚定拥护者,目前业务中前后端全面基于TypeScript开发。热衷于新技术的研究与应用,擅长发现与解决前后端开发痛点。
演讲简介:
网易严选前端开发组是一个ToB前端开发团队,支撑严选的所有数据业务与ToB业务前端,同时承担着技术中台的建设,推动技术平台的产品化。作为技术团队管理者,我将会从如何进行团队规划、团队组建、打造高效团队,以及对管理的思考这些方面与大家进行分享和交流。管理的核心价值是什么?我们不要把管理当作手段、当做职位,我们是在成就团队、成就他人、成就自我。在这个演讲中,我将分享自己的一些心得和体会。
演讲提纲:
一、通用型高效前端团队
业务背景
团队职责
能力图谱
二、打造通用型高效前端团队
团队起步
架构调整
制度建设
人员培养
三、管理者的思考
成为优秀的领导者
听众收益:
对新手管理者、技术团队Leader、中层管理者应当都有直接帮助
PPT链接:下载
《工作10年,我在前端专业成长路上的探索(一)》
张鑫旭 / 《CSS世界》作者 前端开发工程师
讲师简介:
张鑫旭,前端开发工程师,国内知名前端博客“鑫空间-鑫生活”博主。先后就职于腾讯社交用户体验设计(ISUX)、阅文集团体验设计部(YUX)。工作已有10年,一直专注于前端开发,在与交互体验关系密切的领域花了大量时间学习与研究,如HTML/CSS/SVG/Canvas等。热衷于知识分享,400+高质量原创技术文章,翻译撰写众多文档,如Snap.svg、Stylus、Canvas API等,因此在行业有一定的影响力,同时是畅销前端书籍《CSS世界》作者。多年来一直在一线开发,在纯前端专业领域的发展上持续探索。
演讲简介:
程序员30岁之后做不上管理就没有出路了吗?这是一个很多人会困惑的问题。我算是国内第二代前端开发,算是个前端老人,我所认识的前辈、平辈无一例外很多年前就开始管理前端team了。而我工作10年了,一直在专业一线,没有管理任何人,但过得还不错,至少不要担心以后会被淘汰的问题。程序员是个天生不喜欢和人打交道的群体,让他们去做组织管理,对于大多数人是吃力的,也不喜欢,就想写一辈子代码,行吗?其实是可以的!希望我的一些成长经历可以对不擅长与人打交道的同行的个人发展有所启发与思考。
演讲提纲:
我的过去与现在
(1)做技术是有前途的必然成功的捷径
(1)成功的诀窍其实很简单专业价值与团队
(1)技术攻坚与技术指导
(2)基础建设与效率工具
(3)知识传播与人才培养专业推动与人
(1)绕不开的人和事
听众收益:
- 如何用技术成就人生
- 专业之路原来还可以这么走
- 对于组织管理者也会有启示,有一类人原来是可以这样培养的
PPT链接:下载
注:由于讲师所在企业限制,不对外公布
《工作10年,我在前端专业成长路上的探索(二)》
张鑫旭 / 《CSS世界》作者 前端开发工程师
讲师简介:
张鑫旭,前端开发工程师,国内知名前端博客“鑫空间-鑫生活”博主。先后就职于腾讯社交用户体验设计(ISUX)、阅文集团体验设计部(YUX)。工作已有10年,一直专注于前端开发,在与交互体验关系密切的领域花了大量时间学习与研究,如HTML/CSS/SVG/Canvas等。热衷于知识分享,400+高质量原创技术文章,翻译撰写众多文档,如Snap.svg、Stylus、Canvas API等,因此在行业有一定的影响力,同时是畅销前端书籍《CSS世界》作者。多年来一直在一线开发,在纯前端专业领域的发展上持续探索。
演讲简介:
程序员30岁之后做不上管理就没有出路了吗?这是一个很多人会困惑的问题。我算是国内第二代前端开发,算是个前端老人,我所认识的前辈、平辈无一例外很多年前就开始管理前端team了。而我工作10年了,一直在专业一线,没有管理任何人,但过得还不错,至少不要担心以后会被淘汰的问题。程序员是个天生不喜欢和人打交道的群体,让他们去做组织管理,对于大多数人是吃力的,也不喜欢,就想写一辈子代码,行吗?其实是可以的!希望我的一些成长经历可以对不擅长与人打交道的同行的个人发展有所启发与思考。
演讲提纲:
我的过去与现在
(1)做技术是有前途的必然成功的捷径
(1)成功的诀窍其实很简单专业价值与团队
(1)技术攻坚与技术指导
(2)基础建设与效率工具
(3)知识传播与人才培养专业推动与人
(1)绕不开的人和事
听众收益:
- 如何用技术成就人生
- 专业之路原来还可以这么走
- 对于组织管理者也会有启示,有一类人原来是可以这样培养的
PPT链接:无
注:由于讲师所在企业限制,不对外公布
多端提效与质量优化实践 (贝壳找房技术专场)
在泛前端飞速发展的今天,端上承载业务越来越重,业务在质量、性能、稳定性等方面要求也越来越高。同时,为了响应业务的高速发展,技术的迭代速度和效率需要大大加快。
本专场将重点介绍贝壳找房在To B、To C业务的前端开发中,采取了哪些极限性能优化技术来提升业务体验,在Node服务稳定性方面有哪些实践经验;讲述在Native、Flutter、JS等多场景下的质量监控预警以及快速定位问题方法;同时分享贝壳找房在Flutter跨平台技术的架构设计、自动化集成、多业务解耦协作提效等方面的积累探索。
《极致前端性能优化探索》
陈辰 / 贝壳找房 基础平台中心资深工程师
讲师简介:
陈辰,先后供职联想研究院、百度、阿里巴巴等公司。现任贝壳找房前端架构负责人,负责贝壳前端横向技术建设、标准规范指定、监控稳定性、效能提成等工作。开源项目灯塔负责人;慕课网认证前端性能讲师,著有多门前端性能优化课程;加州格林咨询公司特聘前端讲师;博才世杰咨询公司特聘前端讲师,贝壳前端知乎专栏《前端成长那些事儿》创始人。
演讲简介:
移动互联网时代,应用性能作为影响用户体验最重要的因素,在开发过程中显得尤为重要。本次演讲将介绍贝壳找房使用的性能优化工具,对比传统性能优化与极限性能的优化差异,并通过真实案例了解性能优化的价值与收益,提升开发者在性能优化技术上更深一步的进阶。
听众收益:
1.了解性能优化对于项目、公司的影响
2.了解性能优化几大阶段必做的事情
3.对比传统性能和感官性能的优化差异
4.通过真实的性能优化案例,讲述性能优化在平时工作所展示出的风采
5.介绍贝壳当前性能监控现状,以及发展时遇到的困难
PPT链接:下载
《贝壳找房的Node服务稳定性建设实践》
徐辛承 / 贝壳找房 人店平台中心资深工程师
讲师简介:
贝壳找房资深工程师,现负责贝壳C端前端团队,2012年毕业于北航,曾就职于:人人网、百度、阿里,著有《Vue移动端实战技巧》一书。有丰富的用户体验优化、架构设计相关经验,近一年专注 Node 全栈方向。
演讲简介:
Node.JS 采用事件驱动、异步编程,为网络服务而设计。其非阻塞模式的 I/O 处理可带来在相对低系统资源耗用下的高性能与出众的负载能力,适合用作依赖其它 I/O 资源的中间层服务。
做为公司内第一个在C端场景下应用Node作为BFF的团队,我们做了很多的探索,而服务稳定性一直是我们最重视的。本次分享将介绍贝壳找房在进行服务稳定性相关建设,分享 Node 实战过程中的积累和经验。
听众收益:
1、了解稳定性建设需要注意哪些方面
2、了解贝壳找房在Node服务稳定性方面的探索及实践经验
3、了解未来贝壳找房在Node服务稳定性方面的计划
PPT链接:下载
《贝壳找房移动端监控体系建设实践》
孙旭东 / 贝壳找房 移动端架构负责人,B端APP开发负责人
讲师简介:
吉大计算机硕士毕业后,一直从事移动端开发,先后做过MTK、iOS、Android等平台,已经11年有余,2011年加入阿里巴巴担任技术专家,在阿里一干就是7年,积攒了大量的移动端架构和开发经验,2018年加入贝壳,担任移动端架构负责人,B端APP开发负责人。
演讲简介:
移动端上的Crash、自定义事件/错误、网络等多维度监控和报警功能,实现了线上问题主动发现、主动预警、聚合统计、全方位还原现场等,对于质量优化帮助很大。本次演讲将详细介绍如何构建一个完整的监控体系,如何进行异常上报、分析、处理及报警,分享Native、Flutter和JS等不同场景数据收集方案。
听众收益:
1.介绍一个完整的监控体系构建需要做到哪些点
2.如何进行异常上报、分析、处理及报警
3.Native、Flutter和JS等不同场景数据收集方案
4.如何聚合异常上下文支持快速定位和解决问题
PPT链接:下载
《Flutter在贝壳的接入实践》
张华峰 / 贝壳找房 移动端资深工程师
讲师简介:
2018年加入贝壳,入职主要负责贝壳 Android 插件化和持续集成相关工作,2019年在 Flutter发布正式版后开始调研将 Flutter 接入到当前的贝壳 APP 中,进行 Flutter 在贝壳的接入方案和平台化工作。
演讲简介:
贝壳找房是互联网品质居住服务平台,大前端部门主要为贝壳用户提供了移动端居住创新服务。贝壳 Flutter 接入方案主要针对贝壳 APP 的快速迭代、业务分离的工程结构的现状来进行实践,保证接入过程的平稳和无感知。本次分享主要介绍贝壳 Flutter 接入在业务解耦、研发效率和集成自动化方面的探索。
听众收益:
1、了解 Flutter 构建流程,我们能在其中做些什么
2、了解在多业务分离的场景下,如何实现 Flutter 的多业务解耦、保持工程效率
3、为 Flutter 在原生 APP 接入提供一种参考
PPT链接:下载
主题演讲
《大前端的下一站》
臧秀涛 / 极客邦科技 技术会议负责人
讲师简介:
臧秀涛,极客邦科技技术会议负责人。曾作为 QCon 全球软件开发大会主编策划了多届大会。2010 年毕业于中国科学院计算技术研究所。曾先后在完美世界等公司从事软件开发工作。2014 年加入InfoQ。业余喜爱读书和翻译,曾翻译出版过《C++ API 设计》、《Groovy 程序设计》和《Java 性能权威指南》等技术图书。业余也维护了一个微信公众号“开发资讯(dev-news)”,欢迎关注。
演讲简介:
PPT链接:下载
《GMTC的正确参会姿势》
孟夕 / 极客邦科技 会议主编
讲师简介:
孟夕,极客邦科技的会议主编,主要负责公司垂直会议的内容策划和讲师邀请。2016 年加入 InfoQ,关注大前端、人工智能、云计算、运维、架构等多个技术领域,致力于为推动技术社区的发展贡献自己的力量。
演讲简介:
PPT链接:无
《前端路上的思考》
郑叶飞(圆心) / 阿里巴巴集团 前端委员会主席
讲师简介:
2007年加入淘宝,曾参与天猫、快乐淘宝、聚划算等创业团队。现负责淘宝终端技术团队与淘宝基础链路团队,推进了淘宝前端工程化、无线化、全栈化、智能化的快速演进。现任阿里巴巴集团前端委员会主席,致力于推进阿里前端的健康发展与价值体现,坚信可用端技术为体验创造无限可能。作为D2前端技术论坛发起人之一,一直乐于推进国内前端技术的交流与发展。
演讲简介:
伴随着云+端、Serverless、小程序等的发展,必然会给前端带来更大的场景与机会,前端也即将进入一个黄金时代。本次talk将重点从以下几个方面进行分享:
1、简单回顾下前端发展史:回顾里程碑,每一次的核心思想或技术变化,促进了前端每次的飞跃。
2、当下面临的挑战与机会:今天的环境,对于前端来说存在着大量的机会,很多体系值得我们勇往直前。
3、引领未来的技术:引领难也不难,来自于思考,来自于定义,来自于推动,国内氛围有待改变。
4、价值对前端人的要求:当我们都在追求前端价值的同时,其实更需要提升前端本身的很多能力。
听众收益:
可以了解今天前端面临的机会,以及未来我们需要的改变,对于大家的发展会带来一定的思考。
PPT链接:下载
《Flutter:最新进展和未来展望》
董韬 / Google Flutter 团队 高级研究员
讲师简介:
董韬,高级研究员,Google Flutter 团队。董韬博士在 Google 总部负责 Flutter 及相关开发工具和编程语言的使用者体验研究。在该岗位上,他致力于实施以用户为中心的迭代设计方法,深入研究开发者需求和使用习惯,帮助改善开发工具的UI设计,提高API和编程语言的可用性。除在 Google 的工作外,他还经常担任国际计算机学会(ACM)顶尖会议和期刊的论文审稿人。董韬拥有密歇根大学安娜堡分校的人机交互博士学位。他还拥有复旦大学信息系统学士学位。
演讲简介:
Flutter 是 Google 帮助开发者在移动、Web 和桌面多个平台实现高质量原生应用程序的开源UI工具包。本次演讲会介绍 Flutter 项目的最新进展,包括 Flutter for Web、iOS 设计语言、基于 Material Design 的定制UI、状态管理解决方案、 Dart语言新特性、开发工具、以及中国社区的发展状况。本次演讲在最后会对 Flutter 和 Dart 团队在2019下半年的工作重点作一些展望。
听众收益:
- 了解 Flutter 在中国和全球的发展状况
- 了解 Flutter 最新推出的 Web 端技术预览
- 了解 Flutter 的最新特性和近期发展方向
听懂我的演讲,需要具备这些知识储备:
这个演讲主要面向前端和移动开发者,部分内容需要对 Flutter 有一些基本了解。
- 了解 Flutter 在中国和全球的发展状况
PPT链接:下载
《前端开发编程语言的过去、现在和未来》
贺师俊(Hax) / 百姓网 技术顾问
讲师简介:
贺师俊(网名Hax),百姓网技术顾问,十多年来一直活跃在前端和JavaScript社区。对多项Web标准有微小贡献,对Groovy语言并间接对Swift语言有微小贡献,近年来参与了诸多ECMAScript新草案的讨论。曾设计和实现Jedi语言并用于生产环境,对自研编程语言略有一点实践经验。三次担任QCon出品人并获得「优秀出品人」荣誉,也经常在其他众多技术活动中担任讲师、嘉宾和主持人。
演讲简介:
最近几年以来,伴随着各个端平台的迅猛发展,以TypeScript、Swift、Kotlin和Dart为代表的新一代应用编程语言纷纷浮现,不仅有取代各平台既有语言之势,还不断开疆扩土,竞逐跨端和全栈领域。本次演讲将尝试梳理前端和移动开发领域编程语言的变革过程,探讨传统编程语言面临的问题,分析新一代编程语言的特点,比较其共性和不同取向,并对未来发展作一些展望。
听众收益:
了解前端和移动开发领域编程语言的历史和现状
了解新一代编程语言发展的大体方向
更好地决策编程语言和技术栈选型的难题
对如何通过编程语言维度解决问题建立认识和思考
PPT链接:下载
4、思考
正如上述,观看演讲和PPT时,至少要看懂题目,如果没有看懂,就提前准备相关知识,否则有一些技术或专场可能完全听不懂!渐渐的学习未知的世界~
2019-12-29 更新
经过在微信公众号与池老师私信后,关于《GMTC》的内容虽然是公开,但是并不授权引用内容,所以可能导致侵权的行为,所以,后续不在分享相关内容,大家如果感兴趣,可以自行在 Infoq 关注。
参考
- GMTC全球大前端技术大会(北京站)2019
- GMTC北京2019PPT下载合集
- GMTC 2019 全球前端技术大会 | MySlide - 专注PPT分享,追随SlideShare和SpeakerDeck的脚步
- 参加 GMTC 2019 全球大前端技术大会你有什么收获? - 知乎
- 如有疑问,欢迎在评论区一起讨论!
- 如有不正确的地方,欢迎指导!
> 注:本文首发于 [iHTCboy's blog](https://iHTCboy.com),如若转载,请注来源