总体收获

很多技术实践,大厂走的比较前,且较为成熟,比如说测试,持续集成,BFF 层,线上监控体系等。

话题

  • Flutter
  • Serverless
  • 编程语言
  • Node
  • 小程序

Flutter

当之无愧的主角
分享主题名为 《Flutter:最新进展和未来展望》

GMTC 归来的思考 - 图1
GMTC 归来的思考 - 图2
不愧是 Google,博士在研究开发者体验。
侧面反映了文档,IDE对于开发者体验(效率)的重要程度。

GMTC 归来的思考 - 图3

很快就体验到 Flutter for Web,并且可以看到对嵌入式设备有支持,主打跨平台。

提到了一个相对新颖的观点:

IDE 对语言实现增强

Serverless

GMTC 归来的思考 - 图4

Serverless 需要后端提供高度抽象的模型

GMTC 归来的思考 - 图5

目前的态度:大厂还在探索,我们观望

编程语言

新一代前端编程语言趋同

语法

  • 静态类型
  • 泛型
  • Null safe
  • 语言特性
  • 异步编程
    稍微展开一下
    GMTC 归来的思考 - 图6
  • 强/弱 运行时能否强制类型转换
  • 动态/静态 声明变量时(编译时)是否确定变量类型

开发体验

  • Hot Reload
  • Instant Run

TypeScript

大厂新项目选用 TS,老项目在迁移,一致好评
个人使用感受是对开发效率有明显提升,代码质量更高

Node

之前我常常会去思考 “我能用 Node 做些什么?”,看了这么多实践的分享,得出一个结论 “Node 什么都能做”,真正限制于我 Node 使用的其实是对 Node 以及服务端编程、运维等领域知识掌握与实践的经验
将 Java 等其他语言中成熟/经过验证的设计搬运到 Node 中
比如在 MidWay 框架的分享中多次提及 Ioc 的概念,严选的 Node 应用也是多次提到 Spring 中的设计思想如依赖注入
根本上解决的问题是模块间解耦
Node 应用的共性,采用 TypeScript 开发
狼叔的新书终于出版了,有兴趣的了解一下

小程序

腾讯在线教育小程序

GMTC 归来的思考 - 图7

同样的看看苏宁的矩阵

GMTC 归来的思考 - 图8
GMTC 归来的思考 - 图9
GMTC 归来的思考 - 图10
GMTC 归来的思考 - 图11
GMTC 归来的思考 - 图12
GMTC 归来的思考 - 图13
GMTC 归来的思考 - 图14

如果用了原生开发,脚手架其实是开发框架,还是有很多可以进步的地方
剩余提到了 分包加载setData 的一些深入实践

京东购物小程序

早期通过大量的规范来人为约束

GMTC 归来的思考 - 图15

看看别人遇到的问题

GMTC 归来的思考 - 图16

可以借鉴过来的思路大概有三处

GMTC 归来的思考 - 图17
GMTC 归来的思考 - 图18
GMTC 归来的思考 - 图19
GMTC 归来的思考 - 图20
GMTC 归来的思考 - 图21
GMTC 归来的思考 - 图22
GMTC 归来的思考 - 图23
GMTC 归来的思考 - 图24

思考

关键词

  • 核心理念
  • 前端价值
  • 格局
  • 标准化
  • 测试
  • 持续集成
  • 复用
  • 备用方案

核心理念

核心理念 五个阶段

  • 结构、样式、行为分离 前端岗位出现
  • 90% 性能优化在前端,工程化开启
  • 前后端分离 全栈的演进
  • Mobile First 无线时代的来临
  • Low/No Code 中后台的重塑

前端价值

  • 技术能力
  • 企业价值

GMTC 归来的思考 - 图25
GMTC 归来的思考 - 图26
GMTC 归来的思考 - 图27

如何去思考商业闭环,产品逻辑,通过数据看到问题推动体系变化

通过技术手段反推业务

看一个例子:

GMTC 归来的思考 - 图28

业务目标:流量进来转化提高

通过数据分析,UI 个性化,进行大量 A/B test 验证,将 UI 价值最大化,促进业务目标达成

GMTC 归来的思考 - 图29

这在另一场分享中也有所提及

GMTC 归来的思考 - 图30

格局

关注软件领域,站在整体的软件架构层面去看技术方案,不局限在前端领域

Node 让我们与后端更好的配合

标准化

GMTC 归来的思考 - 图31

唯有标准化才能大规模复制,实现量产

测试

GMTC 归来的思考 - 图32
GMTC 归来的思考 - 图33
GMTC 归来的思考 - 图34
GMTC 归来的思考 - 图35

就团队的现状,从单元测试开始补充测试代码

需要思考如何编写高质量的单元测试

GMTC 归来的思考 - 图36

持续集成

配合测试,尝试运用起来

复用

对于复用的理解不只是在单个项目的层面,上升到团队/公司层面。

GMTC 归来的思考 - 图37

在团队内可以做的是抽离更多的模块,以 npm 包的形式引入,项目级别的抽象则是使用脚手架。

备用/降级方案

GMTC 归来的思考 - 图38

推荐话题

可以到大会官网去下载PPT进行查看,或者关注“前端之巅”公众号,近期有非常多演讲总结的文章