软件架构模式及应用场景

之前我曾经有一篇文章《从实践者的角度看软件架构的历史》,主要从宏观的角度、从工业界和学术界对软件架构研究课题的对比来阐述了25年来软件架构的历史变迁和未来趋势。

之后,我又在想,有没有总结软件应用架构发展方面的报告呢,最好是能阐述主流的应用架构及其适用场景,这样架构师们在做架构设计时,可以多多参考。你还别说,我真找到了《Software architecture patterns》,五十多页的PDF文档,阐述了主流应用架构及使用场景,对每种架构在敏捷性、易开发性、可测试性、易部署性、可扩展性、性能等方面进行了评估。网上也有几篇对这个报告进行过简单解读的文章,但我看了都觉得写得不太认真细致。本来我也想直接翻译那篇文档,但是考虑到五十多页,花的时间比较多,而最近我们产品要上线了,时间不够挤,于是我想将自己学习后的领悟并稍带一些翻译的意味写成文章,这样减少了篇幅,加深自己认识的同时或许还能够给做架构的朋友们一些启发。很明显,这是利人利己的事情,我还犹豫什么呢?于是在一天工作收尾之后,我静下心,将自己的领悟、所思所想码成文字,然后,你就看到了这篇文章。

可能有人会疑惑,就是我为什么总是倾向于关注相对宏大的命题。我只能说,也许这源自于对没有方向感的恐惧吧,而且确实也是有用的知识,当然如果你平时只是开发一些小官网,我承认你可能用不到,不懂也无妨。

虽然这呕心沥血的长文是免费的,但我还是放到了【技术人成长】知识铺,因为【技术人成长】社群那边也有不少读者,有很多可能都没有关注公众号或技术博客,放到那边方便他们阅读,而且文章比较长,这样我不用再费心编辑一次。

顺便给大家介绍下【技术人成长】知识铺吧,这是我开的一个知识商铺,里面有我自己出品的一些付费内容,还有我精选的其他一些技术大牛的付费作品,但大部分内容还是免费的,包括类似于知识星球的社群也都是免费的,主要是为了结识更多的同行朋友,也欢迎公众号的各位读者多多到社群里交流。

微信扫码阅读完整文章,还可以进入【技术人成长】社群逛逛。