没有注意软件架构的代码,就像一间100平的房子,进去之后,没有卫生间、厨房的隔离,就是一间大房子,这间大房子就类似于单进程,房子里每个功能分区,就类似于进程中的各个线程,虽然功能都有,但是难免相互打扰。
在进行合理的软件架构设计之后,就像一间100平的房子,增加了几堵墙,几个门,隔离出来了厨房、卫生间、主卧、次卧、阳台。原先放在一间大房子里的用品,都要放到各个对应的房子。这就类似于多进程,每个进程占有了独立的空间和资源,各个进程之间通过IPC通信,类似于各个房间通过房门进出。IPC通信难免有用通信成本,就像是到厕所难免要开个门,开下灯之类的。
软件架构变化,表现在静态层面,是代码目录及存放位置的重新组织,正如大房间增加了厨房之后,要把原先的锅碗瓢盆放到厨房里,放到卧室多少就有些不合适了。
这是迄今为止,我对软件架构比喻的很贴切的例子。
本文以生动的房屋比喻解释了软件架构的重要性,将单进程比作一间大房子,而多进程则如同经过合理隔断的多个功能区域。通过比喻阐述了进程间的通信成本,强调了代码目录结构的重组对于软件架构的影响。文章深入浅出地探讨了软件架构在静态层面的改变如何提升代码组织的合理性。
1748

被折叠的 条评论
为什么被折叠?



