展开全部

主编推荐语

揭秘支撑百度三大业务的MVVM框架设计,领悟高性能跨端全栈设计思想。

内容简介

本书以San为例,结合具体的实现,从框架设计、工程链路、跨端开发和全栈实现等方面说明了如何优化前端框架的性能。

目录

  • 版权信息
  • 前言
  • 第1章 San,一个新的起点
  • 1.1 San的诞生
  • 1.2 San的特性
  • 1.3 框架对比
  • 1.3.1 抽象程度
  • 1.3.2 运行时和预编译
  • 1.3.3 同构与跨端
  • 1.3.4 生态
  • 1.4 为什么选择San
  • 1.5 小结
  • 第2章 组件,一切的起点
  • 2.1 从实际项目出发,实现一个简单的San
  • 2.1.1 实现一篇文章
  • 2.1.2 实现文章列表
  • 2.1.3 抽象出文章类
  • 2.1.4 数据驱动视图的逻辑
  • 2.2 编写第一个San组件
  • 2.2.1 安装San
  • 2.2.2 Hello San
  • 2.3 使用San实现文章项
  • 2.3.1 使用HTML语法描述结构
  • 2.3.2 使用CSS控制样式
  • 2.4 声明式的视图模板
  • 2.4.1 插值语法
  • 2.4.2 属性绑定
  • 2.4.3 表达式
  • 2.4.4 方法
  • 2.4.5 过滤器
  • 2.5 事件
  • 2.5.1 事件修饰符
  • 2.5.2 自定义事件
  • 2.6 指令
  • 2.6.1 条件
  • 2.6.2 循环
  • 2.6.3 源码解析
  • 2.7 San组件
  • 2.7.1 组件定义
  • 2.7.2 生命周期
  • 2.7.3 视图模板
  • 2.7.4 数据
  • 2.7.5 组件引用
  • 2.8 双向绑定
  • 2.9 工程搭建
  • 使用san-cli创建工程
  • 2.10 小结
  • 第3章 数据,组件的基石
  • 3.1 响应式原理
  • 3.1.1 如何追踪数据变化
  • 3.1.2 主动式数据变化追踪
  • 3.1.3 如何收集依赖
  • 3.1.4 如何触发视图更新
  • 3.2 视图更新
  • 3.2.1 视图更新过程
  • 3.2.2 ANode
  • 3.2.3 基于ANode的预处理
  • 3.2.4 节点遍历中断
  • 3.3 数据及其更新
  • 3.3.1 数据定义
  • 3.3.2 数据校验
  • 3.4 状态管理
  • 3.4.1 为什么要进行状态管理
  • 3.4.2 基础使用
  • 3.4.3 san-store的实现原理
  • 3.4.4 san-update库
  • 3.4.5 实例
  • 3.5 小结
  • 第4章 组件进阶,构造复杂的前端应用
  • 4.1 组件间通信
  • 4.1.1 父子组件通信
  • 4.1.2 更多组件通信方式
  • 4.2 插槽
  • 4.2.1 数据环境
  • 4.2.2 命名
  • 4.2.3 作用域插槽
  • 4.3 路由
  • san-router
  • 4.4 动画和过渡
  • 4.4.1 s-transition
  • 4.4.2 动画控制器
  • 4.5 APack
  • 4.6 小结
  • 第5章 服务端渲染
  • 5.1 服务端渲染的用途
  • 5.1.1 单页应用的问题
  • 5.1.2 引入服务端渲染
  • 5.1.3 应用场景评估
  • 5.2 如何做服务端渲染
  • 5.2.1 立即使用San SSR
  • 5.2.2 开发支持SSR的组件
  • 5.2.3 编译到其他语言和平台
  • 5.3 San SSR的工作原理
  • 5.3.1 San服务端渲染过程
  • 5.3.2 组件信息解析
  • 5.3.3 编译到render AST
  • 5.3.4 render的代码生成
  • 5.4 客户端反解
  • 5.4.1 组件反解的概念
  • 5.4.2 数据注释
  • 5.4.3 复合插值文本
  • 5.4.4 调用组件反解
  • 5.5 服务端渲染优化
  • 5.5.1 预渲染优化
  • 5.5.2 正确使用render
  • 5.5.3 编译到源码
  • 5.5.4 复用运行时工具库
  • 5.6 小结
  • 第6章 San命令行工具
  • 6.1 为什么需要San CLI
  • 6.2 命令行工具的实现
  • 6.2.1 解析命令行参数
  • 6.2.2 命令行工具的发布和调试
  • 6.2.3 基于yargs的命令行模块
  • 6.2.4 命令行插件化的实现
  • 6.3 打造San项目脚手架
  • 6.3.1 实现简单的项目脚手架
  • 6.3.2 实现可交互的项目脚手架
  • 6.3.3 脚手架的完整实现逻辑
  • 6.3.4 更好地组织代码
  • 6.4 San CLI的构建方案
  • 6.4.1 编译与构建
  • 6.4.2 构建方案的技术选型
  • 6.4.3 San CLI的构建方案
  • 6.5 San CLI的整体架构
  • 6.6 开箱即用的最佳实践
  • 6.6.1 语言层面的支持
  • 6.6.2 开发调试
  • 6.6.3 面向项目部署
  • 6.6.4 性能优化
  • 6.7 小结
  • 第7章 组件编译和HMR
  • 7.1 San单文件组件
  • 7.1.1 一个简单的San单文件组件
  • 7.1.2 单文件组件的特性
  • 7.2 单文件组件编译的配置
  • 7.2.1 加载器和插件
  • 7.2.2 San加载器简介
  • 7.3 单文件组件编译的原理
  • 7.3.1 提取San文件中的模板、脚本和样式
  • 7.3.2 从单文件组件到San组件
  • 7.3.3 San加载器的构建流程
  • 7.3.4 San加载器的整体运行流程
  • 7.4 实现组件的HMR
  • 7.4.1 webpack HMR简介
  • 7.4.2 HMR的工作原理
  • 7.4.3 san-hot-loader简介
  • 7.4.4 San组件的HMR的实现
  • 7.5 利用APack实现组件的传输优化
  • 7.5.1 从模板到ANode
  • 7.5.2 从ANode到APack
  • 7.5.3 APack的实现原理
  • 7.6 小结
  • 第8章 测试与调试
  • 8.1 San DevTools简介
  • 8.1.1 San DevTools的设计初衷
  • 8.1.2 技术选型
  • 8.2 San DevTools中的通信
  • 8.2.1 工作原理
  • 8.2.2 构建WebSocket服务
  • 8.2.3 构建Bridge与协议解耦
  • 8.2.4 构建调试页面与被调试页面之间的通信信道
  • 8.3 San DevTools中的数据收集和处理
  • 8.3.1 收集页面中的San数据
  • 8.3.2 构建Agent
  • 8.3.3 构建页面组件树
  • 8.3.4 实时修改组件数据
  • 8.3.5 组件性能数据的处理
  • 8.3.6 事件与消息
  • 8.3.7 san-store中的时间旅行
  • 8.4 单元测试
  • 8.4.1 DOM测试
  • 8.4.2 快照测试
  • 8.5 小结
  • 第9章 SanNative跨端融合
  • 9.1 跨平台开发
  • 9.1.1 JavaScript驱动的NA原生渲染
  • 9.1.2 跨端渲染方案的优缺点
  • 9.2 渲染引擎
  • 9.2.1 供JavaScript调用的渲染API
  • 9.2.2 宿主所使用的渲染引擎
  • 9.2.3 实现JavaScript代码
  • 9.3 高性能的跨端技术方案
  • 9.3.1 响应式驱动NA渲染
  • 9.3.2 适配跨端渲染
  • 9.3.3 视图设计
  • 9.3.4 事件系统
  • 9.3.5 样式选择器
  • 9.4 San Native的Web化
  • 9.4.1 Web化的背后原理
  • 9.4.2 Native渲染与Web渲染的差异
  • 9.5 共享机制和多bundle
  • 9.6 小结
  • 第10章 San的未来
  • 作者简介
展开全部

评分及书评

评分不足
1个评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。