本篇是内部培训交流会的摘要总结。angularjs
培训PPT和示例代码已托管至个人github仓库:github
https://github.com/dashnowords/blogs/tree/master/Demo/rebuild-angularjs-controller工具
小型项目学习
经过子路由实现拆分分层,父级控制器控制共享模块,提供公共能力,子级分管本身的模块,父子级之间经过消息机制进行通信。优化
中型项目ui
经过组合视图实现模块划分,组合视图共享同一个路由地址,分管不一样的模块,组合视图之间须要经过父级控制器(或组合视图的根控制器)来实现通信。code
大型项目blog
经过视图组件指令,业务模块指令来进行更细粒度的模块拆分,模块通讯依然建议经过消息机制来进行。路由
业务逻辑代码
封装Service,经过依赖注入在Controller中或指令中使用。
数据加工代码
建议使用表达性更强的通用工具库underscore.js
或lodash.js
提高效率,精简代码。
DOM操做
建议学习和习惯Angular数据驱动的主导思想,经过数据来启用或消除DOM操做,具体的执行须要经过自定义指令进行实现。