20160921、20160928直播课 单页APP 学习笔记
WEB单页应用的重要语法基础
变量作用域
变量作用域链
闭包
变量提升
自执行函数
模块模式
单页应用架构
shell在架构中的作用
shell是单页应用的主控制器,是框架中必须的。
主要负责的内容:
- 部署单页应用整体形状和结构(不包含具体功能的样式,类似框架)
- 初始化所有功能模块。
- 管理应用的cookie或者URI处理
- 该模块被根文件调用
功能模块在架构中的作用
功能模块是单页应用中每个独立功能的集合。(不包含业务逻辑)
功能模块主要负责:
- 部署当前功能模块的html渲染和生成(css已经预选加载,不再此处处理)
- 为当前模块的元素添加事件,绑定事件处理方式
- 该模块被shell模块调用
Model模块在架构中的作用
Model是为当前单页应用所有数据提供模型和操作的代码集合。
主要负责的内容:
- 构建和设计所有功能模块使用的业务逻辑对象。例如:用户对象:添加用户,删除用户,修改用户等
- 调用Data实现Model中的业务逻辑操作
- 该模块功能被shell中的指定功能模块调用
Data模块在架构中的作用
Data是提供前端和后端进行数据通讯的必备模块
主要负责的内容:
- 获取和设置通讯使用的功能对象和方法
- 该模块功能被Model调用
服务器选择NodeJS
Node.js是一个平台,使用的是javascript语言,作为服务器语言使用
Node.js的优点
- 服务器就是应用。前台后台一块玩
- node.js使用和前端一样的javascript语法,非常方便,数据相同,处理方便
- node.js是事件驱动和非阻塞的,可以支持大并发数据操作。
- Node.js轻量高效,运行效率高
- node.js得到了广泛的支持,各种框架和驱动都非常丰富!
Node.js的缺点
- 可靠性低
- 单进程,单线程,只支持单核CPU,不能充分的利用多核CPU服务器。一旦这个进程崩掉,那么整个web服务就崩掉了。
不过以上缺点可以可以通过代码的健壮性来弥补。