Software Architecture List | 软件架构与设计资料索引


Case Study

  • 2019-复杂度应对之道,COLA 应用架构: 这种人为的复杂性导致系统越来越臃肿,越来越难维护,酱缸的老代码发出一阵阵恶臭,新来的同学,往往要捂着鼻子抠几天甚至几个月,才能理清系统和业务脉络,然后又一头扎进各种 bug fix,业务修补的恶性循环中,暗无天日!

  • 2021-业务逻辑拆分模式 #Series#: 为何随机选择了这三种问题并归纳为业务逻辑拆分问题呢? 因为我认为以上三种问题都是由同一个不易变化的本质约束所造成。这个本质约束就是人类的感知与沟通速度是很慢的。所谓业务架构,其实质就是想尽一切办法减少沟通。只有沟通少,效率才会高,质量才会好。就是这么简单的一件事情。



  • 2003-Martin Fowler-Patterns of Enterprise Application Architecture》📚: This book started after Dave Rice and I gave some talks on J2EE architecture and mulled over how the concepts we had learned in C++, Forte, CORBA, and Smalltalk had been crucial to us developing good designs in Java.

  • 500 Lines or Less: The Architecture of Open Source Applications》📚: 神书一套,介绍了很多开源软件的架构设计,In these two books, the authors of four dozen open source applications explain how their software is structured, and why. What are each program’s major components? How do they interact? And what did their builders learn during their development? In answering these questions, the contributors to these books provide unique insights into how they think.

  • 2013-Alexander-简约之美:软件设计之道》📚:本书将软件设计作为一门严谨的科学,阐述了开发出优雅简洁的代码所应该遵循的基本原则。作者从为什么以前软件设计没有像数学等学科一样成为一门科学开始入手,道出了软件以及优秀的软件设计的终极目标,并给出了具体的指导规则。这是一本软件思想著作,适合任何背景、使用任何语言的程序员。

  • 2013-Vaughn-Implementing Domain Driven Design》📚: Implementing Domain-Driven Design will impart a treasure trove of knowledge hard won within the DDD and enterprise application architecture communities over the last couple decades.

  • 2016-架构漫谈》📚: 专栏以 Kevin 的架构经验为基础,逐步讨论什么是架构、怎样做好架构、软件架构如何落地、如何写好代码等问题。

  • 2017-Source Making-Refactoring Series》📚: The book covers 89 code smells and the appropriate methods for refactoring. It consists of simple text slides, cute illustrations and interactive code examples.

  • 2018-Martin-Clean Architecture》📚: A Craftsman’s Guide to Software Structure and Design.

  • 2018-A Philosophy of Software Design | 软件设计的哲学》📚: 冠名为“艺术”,内容可能是记录一件优秀作品的设计过程和经验;而冠名为“哲学”,则是一些通用的原则和方法论,这些原则方法论串起来,能够形成一个体系。正如”知行合一”、“世界是由原子构成的”、“我思故我在”,这些耳熟能详的句子能够一定程度上代表背后的人物和思想。

Refactor & Clean Code

  • 2012-Clean Code》📚: Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.

  • 2019-Guru Refactoring》📚: Refactoring is a systematic process of improving code without creating new functionality that can transform a mess into clean code and simple design.


  • 2016-Vaughn-Domain Driven Design Distilled》📚: Vernon guides you through each core DDD technique for building better software. You’ll learn how to segregate domain models using the powerful Bounded Contexts pattern, to develop a Ubiquitous Language within an explicitly bounded context, and to help domain experts and developers work together to create that language.

Architect | 架构师

Middle Platform | 中台


Over-Engineering | 过度设计


  • C4-PlantUML : C4-PlantUML combines the benefits of PlantUML and the C4 model for providing a simple way of describing and communicate software architectures.