crab

crab

The 'crabs in a barrel' mentality only exists if we view ourselves as a crab. The truth is on the map.

任何编程问题都可以通过加一层解决

David Wheeler: Any problem in computer science can be solved by another layer of indirection.

越来越发现这个非常有道理。为什么?

我自己现实的理解是:

  1. 一开始写的代码是解决特定问题的,所以只是针对特定情况的
  2. 慢慢这个特定情况种类越快越多了,如果改原有代码就越改越复杂,改不动了
  3. 为了把问题缩小,那就把最下层 (一开始的解决特定问题代码) 做一些抽象,暴露出接口定义让上层适配,上层适配就是把不同种类的特定问题适配到下层接口,这样就相当于加了一层
  4. 步骤 3 的好处是什么? 底层代码改动少,上层适配,只有适配逻辑,这样就起到了代码隔离,减少相互影响,如果适配这一层,由出现步骤 2 提到的问题,那么就继续步骤 3,这样就又多了一层,所以一层一层就解决了一个一个问题
  5. 现实和这个逻辑还是很像的,一开始代码写的比较死,越改越改不动,那就把参数,配置提出,可以更灵活的配置

一点小感悟,不过确实有道理,

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。