(一)设计与架构

<1>什么是设计?什么是架构?二者究竟有什么区别?

Martin的观点是:二者没有任何区别。一丁点都没有!软件设计的底层和高层架构是不可分割的。它们组合在一起,共同定义了整个软件系统,缺一不可。所谓的底层和高层本身就是一系列决策组成的连续体,并没有清晰的界线。

我的理解:高层的架构和细节的设计是相辅相成的,在一个完整的系统中二者是不可能单独存在的,缺少对任何一方的关注整个系统都是注定要失败的。架构和设计只是对一个完整系统的不同的视角,有点横看成岭侧成峰的感觉。

<2>架构和设计的目标

软件架构的终极目标是,用最小的人力成本来满足构建和维护该系统的需求。

我的理解:软件的目标其实和商业活动的本质是相同的,就是用最小的成本获得最大的收益。黑猫白猫能抓到耗子的才是好猫!一个好的系统架构设计,能够用最低的成本来满足用户需求的变更,并且可以兼顾未来的变更和扩展(注意避免过度的设计,用大炮打蚊子)。

<3>乱麻系统

这种系统一般都是没有经过设计匆匆忙忙被构建起来的。然后为了加快发布速度,拼命地往团队里加入新人,同时加上决策层对代码质量提升和设计结构优化存在着持续的、长久的忽视,久而久之就造就了乱麻系统。

我的理解:这种系统在国内来看是比比皆是的,也是经常被程序员们抱怨,系统是如何的乱,如何的low。可是,抱怨过后大多数人依然是继续为系统添加乱麻,继续的加班熬夜开发新功能。同时也为系统挖新的坑,欠新的技术债。如何避免乱麻系统那?答案是架构、设计无处不在。每一个人对系统的架构和设计都是有责任的,我们随时都是要维护系统的架构、设计的整洁性。美国童子军有一个军规:“当你离开一个露宿营地的时候,一定要让它比你来的时候更整洁干净一点“。一个好的系统,是需要每一个人持续不断的对其进行维护和改进的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值