结构设计的层次是否越多越好?
多人都会说,凡事不能走极端,走了极端就过犹不及。所以应该分层,但不能过分分层,应该视具体情况来定。这样的话听起来很有道理,却只是一句废话。当我们遇到问题时,还是摸不着头脑!
看看知名的架构师是怎么说的吧!来自蔡学镛
我做(开发)架构的几个原则,根据优先次序高低排列:1. (逻辑)拆分越细越好 2. 依赖关细越少越好 3. 交互越少越好 ... 相互矛盾时,如果没有特殊理由,以优先权高者胜出。
由此启发,我觉得设计架构应该拆的越细越好。这样做有如下几点好处:
- 对于大中型软件,层次越多,每一层就更单纯,更容易维护。
- 团队成员只需了解一小部分业务,就能顺利进行开发。
- 相对底层的模块,可以更好的重用。
- 层次分的越多,开发者对抽象的理解就更深入。
iOS说到分层,有几种常见的做法。
- 按功能分:有MVC,MVVM......
- 按层次分:有数据层、逻辑层、展现层......
这些分层看起来五花八门,但实质并不冲突。最近读了一篇文章,深受启发,在其模式的基