(接上题)请举一个你进行远迁移的例子。为什么它是远迁移?
有近就有远,同一事物正反两面性。还是举例题,同样的举个极端的例子。
举个例子:去医院治病的方法,可以迁移到工作编程上来。因为底层共用了一个模式:预演逆境。
最近父亲检查出来肺癌,整个治疗过程中涉及三次转院选择。从村医院到县医院到到市医院。
去县医院治疗抽血、检查一遍,被怀疑是癌,想做进一步穿刺检查确认,家人们一起商量那直接去市医院就诊吧。理由是县医院的结果市医院不认的话,避免多次检查,一次到位直接去市医院。
后面挂号来到市医院,被医生给退回来了,理由是患者肺部还有炎症,无法确认病情是否紧急,请先消炎药后再过来,没办法好的三甲医院人比较多一些。
接着,在市里找了另外一家老人医院办理住院,输液消炎,又是抽血化验,继续检查,最后确认是癌症。
如果需要手术的话,得找一家好医院的专业大夫。于是,又办理出院到上次那家人满为患的三甲医院,办理住院。还是检查抽血化验再来一遍。本来想着确认后能手术赶紧手术,结果被确诊肺癌晚期。
于是治疗方案由手术改为化疗。同步做基因检测,碰运气看是否有靶向药。最后结果没有命中,等做完化疗后,有可能发生基因突变,再找专业机构做一次。
从这个例子出发,看病这件看似十稀松平常之事,想要干好也不太容易。在预演逆境过程中,针对哪些难点和卡点提前想好预案。
回到编程上,一个新需求来了,做完整体设计时,也需要利用已有知识来预演逆境,提前识别出那些极端场景,并给出预案并与业务、产品和技术达成共识。
这个设计方案,正常case能跑通,极端case能否兼容呢?
前者相对容易些,后者就需要大量的项目经验,以及用预演逆境的方法来识别风险。后者所需要不仅仅是技术能力,还有概念能力了。
一个好的程序员或架构师,概念能力强过技术能力。
始于疑问,学习过程,终于应用。
❓->疑问、自问、提问、请问、询问、探问、不耻下问、问一问、学一学、听一听、看一看、想一想、变一变、用一用。