对软件架构的理解和比喻

没有注意软件架构的代码,就像一间100平的房子,进去之后,没有卫生间、厨房的隔离,就是一间大房子,这间大房子就类似于单进程,房子里每个功能分区,就类似于进程中的各个线程,虽然功能都有,但是难免相互打扰。

在进行合理的软件架构设计之后,就像一间100平的房子,增加了几堵墙,几个门,隔离出来了厨房、卫生间、主卧、次卧、阳台。原先放在一间大房子里的用品,都要放到各个对应的房子。这就类似于多进程,每个进程占有了独立的空间和资源,各个进程之间通过IPC通信,类似于各个房间通过房门进出。IPC通信难免有用通信成本,就像是到厕所难免要开个门,开下灯之类的。

软件架构变化,表现在静态层面,是代码目录及存放位置的重新组织,正如大房间增加了厨房之后,要把原先的锅碗瓢盆放到厨房里,放到卧室多少就有些不合适了。

这是迄今为止,我对软件架构比喻的很贴切的例子。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值