
上QQ阅读APP看书,第一时间看更新
序
软件架构这个词,有些人听了觉得开心,有些人听了要皱眉头,而更多的人对它漠不关心,尤其是那些整天忙着敲代码,没时间思考设计问题的人。
我们知道,软件密集型的系统都是有架构的。有一些架构是刻意而为的,有一些架构是偶然浮现出来的,还有很多架构隐藏在成千上万个小的设计决策中,而这些设计决策,正源于我们敲出来的那些代码。
Tilak先生在本书中精彩地讲解了一些切实可行而且非常实用的方式与方法,以帮助我们架构出复杂的系统。作者是一位拥有实际经验的架构师,他通过一系列案例研究,解释了“架构是什么”以及“架构不是什么”这两个问题,同时还讲解了在软件密集型的系统中,如何使架构成为开发、交付及部署过程的一部分。如果大家了解我,那一定知道我对软件架构这个主题有一些强烈的个人观点,然而在我读过的关于这个主题的那么多本书和那么多篇文章中,我确实觉得Tilak所说的这套方法是建立在坚实的基础之上的,而且他的方法特别容易理解,也特别容易施行。
软件架构并不是一项纯粹的技术,其中还要考虑人的因素。本书正是抓住了这个重要的因素—Tilak把自己在架构工作中汲取的经验教训合理地穿插在本书中,我很欣赏这一点。
架构是个重要的过程,这个过程不仅不能妨碍系统的构建,而且还必须在恰当的时机以合适的资源和特别实用的方式构建出正确的系统。
Grady Booch
IBM院士及软件工程首席科学家