总体收获
很多技术实践,大厂走的比较前,且较为成熟,比如说测试,持续集成,BFF 层,线上监控体系等。
话题
- Flutter
- Serverless
- 编程语言
- Node
- 小程序
Flutter
当之无愧的主角
分享主题名为 《Flutter:最新进展和未来展望》
不愧是 Google,博士在研究开发者体验。
侧面反映了文档,IDE对于开发者体验(效率)的重要程度。
很快就体验到 Flutter for Web,并且可以看到对嵌入式设备有支持,主打跨平台。
提到了一个相对新颖的观点:
IDE 对语言实现增强
Serverless
Serverless 需要后端提供高度抽象的模型
目前的态度:大厂还在探索,我们观望
编程语言
新一代前端编程语言趋同
语法
- 静态类型
- 泛型
- Null safe
- 语言特性
- 异步编程
稍微展开一下
- 强/弱 运行时能否强制类型转换
- 动态/静态 声明变量时(编译时)是否确定变量类型
开发体验
- Hot Reload
- Instant Run
TypeScript
大厂新项目选用 TS,老项目在迁移,一致好评
个人使用感受是对开发效率有明显提升,代码质量更高
Node
之前我常常会去思考 “我能用 Node 做些什么?”,看了这么多实践的分享,得出一个结论 “Node 什么都能做”,真正限制于我 Node 使用的其实是对 Node 以及服务端编程、运维等领域知识掌握与实践的经验
将 Java 等其他语言中成熟/经过验证的设计搬运到 Node 中
比如在 MidWay 框架的分享中多次提及 Ioc 的概念,严选的 Node 应用也是多次提到 Spring 中的设计思想如依赖注入
根本上解决的问题是模块间解耦
Node 应用的共性,采用 TypeScript 开发
狼叔的新书终于出版了,有兴趣的了解一下
小程序
腾讯在线教育小程序
同样的看看苏宁的矩阵
如果用了原生开发,脚手架其实是开发框架,还是有很多可以进步的地方
剩余提到了 分包加载 与 setData
的一些深入实践
京东购物小程序
早期通过大量的规范来人为约束
看看别人遇到的问题
可以借鉴过来的思路大概有三处
思考
关键词
- 核心理念
- 前端价值
- 格局
- 标准化
- 测试
- 持续集成
- 复用
- 备用方案
核心理念
核心理念 五个阶段
- 结构、样式、行为分离 前端岗位出现
- 90% 性能优化在前端,工程化开启
- 前后端分离 全栈的演进
- Mobile First 无线时代的来临
- Low/No Code 中后台的重塑
前端价值
- 技术能力
- 企业价值
如何去思考商业闭环,产品逻辑,通过数据看到问题推动体系变化
通过技术手段反推业务
看一个例子:
业务目标:流量进来转化提高
通过数据分析,UI 个性化,进行大量 A/B test 验证,将 UI 价值最大化,促进业务目标达成
这在另一场分享中也有所提及
格局
关注软件领域,站在整体的软件架构层面去看技术方案,不局限在前端领域
Node 让我们与后端更好的配合
标准化
唯有标准化才能大规模复制,实现量产
测试
就团队的现状,从单元测试开始补充测试代码
需要思考如何编写高质量的单元测试
持续集成
配合测试,尝试运用起来
复用
对于复用的理解不只是在单个项目的层面,上升到团队/公司层面。
在团队内可以做的是抽离更多的模块,以 npm 包的形式引入,项目级别的抽象则是使用脚手架。
备用/降级方案
推荐话题
可以到大会官网去下载PPT进行查看,或者关注“前端之巅”公众号,近期有非常多演讲总结的文章