摘要:《OO设计原则总结》一文中我提出了一个问题:如何更好的使用这些原则?怎样在实践中遵守这些原则,使用三种视角思考问题就是答案之一; 本文内容包括: 1.为什么我们过早的纠缠于细节?问题的本质是什么? 2.救命稻草--Martin Fowler的三层视角理论 3.三层视角--回头再说OO设计原则 为什么我们过早的纠缠于细节?问题的本质是什么? 做设计时过早的关注细节几乎是多数程序员的泥沼,也是我自己的...
阅读全文
随笔分类 - 系统架构
关于网站的系统架构
摘要:什么是设计原则?设计原则是基本的工具,应用这些规则可以使你的代码更加灵活、更容易维护,更容易扩展。基本原则 封装变化Encapsulate what varies. 面向接口变成而不是实现 Code to an interface rather than to an implementation. 优先使用组合而非继承 Favor Composition Over InheritanceSRP: ...
阅读全文
摘要:上次说的“分”是一个比较大的原则也是一个比较高层的原则,这次我想说一下其它两个原则:并与换。并为什么要分?是因为我们希望通过分来提高系统的承载能力,那并又是并什么呢?我想了一下有几个方面可以并:1. 合并用户请求,最基本的就是合并CSS/图片/脚本,还可以合并页面。不过合并就可能产生流量的浪费,需要有一个平衡点。2. 合并接口的粒度,如果做分布式应用的话,我们可能不会直接访...
阅读全文
摘要:我们知道,对于一个大型网站来说,可伸缩性是非常重要的,怎么样在纵向和横向有良好的可伸缩性,就需要在做架构设计的时候考虑到一个分的原则,我想在多个方面说一下怎么分:首先是横向的分:1.大的网站化解为多个小网站:当我们一个网站有多个功能的时候,可以考虑把这个网站拆分成几个小模块,每一个模块可以是一个网站,这样的话我们到时候就可以很灵活地去把这些网站部署到不同的服务器上。2.静态动态分离:静态文件和动态...
阅读全文

浙公网安备 33010602011771号