新的项目架构控制反转结构
项目旧的架构是action方法,就是依赖关系来决定。一个界面对应一个action,相应的代码要添加到GameApp的compontent上。这会造成挂上的代码原来越多。旧的方法使用协程加载UI界面,数据视图控制还有服务器收发和处理都写在一个action脚本里。这造成维护的难度,同时需求变更会造成大幅的改动。
这个架构是由项目客户端主程引进来,主程也是新入职,比我早3天入职的。主程之前一直是做页游,转unity半年,问过这个架构是as3的RobotLegs,unity的版本比较熟悉。
as的介绍 http://www.cnblogs.com/skynet/archive/2012/03/21/2410042.html
1.这个给新人不知道代码应该放在哪里,写在哪里的问题给解决了。
2.视图的代码动态挂载,serves 和model层数据持久化。
3.模块与模块之间的耦合就很清晰了。
4.模型需要注册,当一个模块出现重大的问题,可以远程修改服务器配置让其关闭。
5.其他的优势待补充
架构的中文介绍 http://www.manew.com/thread-38751-1-1.html
架构示意图
项目地址:https://github.com/strangeioc/strangeioc
文档地址:http://strangeioc.github.io/strangeioc/TheBigStrangeHowTo.html
一些术语:http://strangeioc.github.io/strangeioc/glossary.html