时间 | 课程内容 |
第1 天 | 内容一:Node.js技术体系概览 1. Node.js简介 2. Node.js的特点 3. Node.js的应用场景 内容二:Node.js的模块机制 1. CommonJS的模块规范 2. Node的模块实现 l 优先从缓存加载 l 路径分析和文件定位 l 模块编译 3. 核心模块 l JavaScript核心模块的编译过程 l C/C++核心模块的编译过程 l 核心模块的引入流程 l 编写核心模块 4. C/C++扩展模块 5. 模块调用栈 6. 包与NPM 7. 前后端共用模块 内容三:缓冲区 1. 了解Buffer 2. 创建缓冲区 3. 切分缓冲区 4. 连接缓冲区 5. 比较缓冲区 6. 缓冲区编解码 内容四:Node.js的异步I/O 1. 为什么要异步I/O 2. 异步I/O实现现状 l 异步I/O与非阻塞I/O l 理想的非阻塞异步I/O l 现实的异步I/O 3. Node的异步I/O l 事件循环 l 观察者 l 请求对象 l 执行回调 4. 非I/O的异步API l 定时器 l process.nextTick() l setImmediate() 5. 事件驱动与高性能服务器 内容五:Node.js的异步编程 1. 函数式编程 2. 异步编程的优势与难点 3. 异步编程解决方案 l 事件发布/订阅模式 l Promise/Deferred模式 l 流程控制库 4. 异步并发控制 l bagpipe的解决方案 l async的解决方案 内容六:Node.js的内存控制 1. V8的垃圾回收机制与内存限制 2. 高效使用内存 l 内存指标 l 内存泄漏 3. 慎将内存当做缓存 4. 关注队列状态 5. 内存泄漏排查 l node-heapdump l node-memwatch 6. 大内存应用 内容七:Node.js的网络编程 1. 构建TCP服务 2. 构建UDP服务 3. 构建HTTP服务 4. 构建WebSocket服务 5. 网络服务与安全 l TLS/SSL l TLS服务 l HTTPS服务 内容八:基于Node.js构建Web应用 1. 基础功能 l 请求方法 l 路径解析 l 查询字符串 l Cookie l Session l 缓存 l Basic认证 2. 数据上传 l 表单数据 l 其他格式 l 附件上传 l 数据上传与安全 l 路由解析 l 文件路径型 l MVC l RESTful 3. 中间件 l 异常处理 l 中间件与性能 4. 页面渲染 l 内容响应 l 视图渲染 l 模板 l Bigpipe |
第2天 | 内容一:Lambda表达式 1. 理解Lambda表达式 2. Lambda表达式的语法 3. 函数式接口 4. 内置函数式接口 5. 方法引用 6. 构造方法引用 7. 数组引用 内容二:新增的日期/时间API 8. 新的日期/时间类 9. Lambda表达式的语法 10. 构造日期/时间对象 11. 格式化和解析日期/时间字符串 12. 计算时间间隔 13. 使用Instant计算某项操作花费的时间数组引用 14. 与Date和Calendar的相互转换 内容三:Optional类 5. 创建Optional类的实例 6. 判断Optional的值是否存在 7. 获取Optional的值 8. 过滤与映射 9. 为什么要使用Optional 内容四:接口新增的默认方法与静态方法 7. 默认方法 8. 静态方法 内容五:新增Stream 1. 什么是Stream 2. 创建流 3. 并行流与串行流 4. 有序流和无序流 5. 中间操作(筛选、切片、映射、排序) 6. 终端操作(遍历、查找与匹配、最大最小与计数、收集统计信息、reduce和collect) 7. 并行流的性能 内容六:注解相关的改变 1. 重复注解 2. 扩展注解的支持 |
课程背景
本课程分两部分内容,Node.js与Java 8新特性。Node部分介绍面向构建完整而复杂的Node.js应用案例的相关技术,Java 8新特性介绍Java 8引入的Java新特性。
课程对象
具有一定JavaScript和Java开发经验的软件开发工程师