软件架构基本技法——分治

是什么

分治是指将难以直接解决的大问题分割成多个小问题,然后逐个解决。

分割后的小问题要比最初的问题简单许多,比较容易解决,各个小问题被逐一解决之后,原来的大问题就不复存在了。

为什么

直接解决大问题,难度较大,花费的时间也比较多,闹不好到最后也解决不了。之所以会出现这样的现象,是因为规模过大的问题,其复杂度也比较高。

先将问题分割成容易控制的大小,再着手解决,这么做效率比较高。

怎么做

先对问题进行分割,然后再一个一个解决,比如下面几种做法:

  • 在设计整个软件时,先将软件分割成多个可以独立设计的部分,然后对这些部分一一进行设计
  • 在设计模块时,按照职责对模块进行分割
  • 在设计算法时,可以像归并排序一样,先自下而上地对问题进行分割,再探讨是否能解决问题
  • 在处理海量数据时,可以像MapReduce一样,先将计算分割成较小的单位,然后探讨能否把这些计算交给分布式环境并行处理
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值