架构:
架构是关于下面这些内容的 重要的决策集合:软件系统的组织、构件的选择及系统用于组装在一起的接口、这些构件之间相互协作的行为、把这些构件合成到日益变大的系统、指导这个组织的架构风格 -- 所有这些构件和它们的接口、它们的协作、它们的组合。( Kruchten 2000 )
模式:
每一个模式描述了一个在我们周围不断发生的问题及解决方案的核心。这样,你就能一次一次地使用该方案而不必做劳动。 ( Christopher Alexander )
重构:
所谓重构是这样的一个过程:在不改变代码外在行为的前提下,对代码做出修改,以改进程序的内部结构。
重构是一种有纪律,经过训练的、有条不紊的程序整理方法,可以将整理过程中不小心引入的错误几率降到最低。
本质上说重构就是[ 在代码写好之后改进他的设计 ] ( Martin Flower )
while true do
红-绿-重构 ;
end