解决问题bug的思路:解决一个问题—>一类问题—>未知问题—>发现问题

https://blog.csdn.net/hhx0626/article/details/83182023

https://blog.csdn.net/hhx0626/article/details/83506712

我没有分析问题的能力了

我学习编程以来,遇到很多bug,也解决很多bug。我会把这些bug记录下来,下次再遇到,我会有备无患。但久而久之,我发现,我变蠢了,我没有分析问题的能力,我遇到问题,直接百度,这让我剩下思考的时间,因为问题基本都出现过,也被解决过。但是,所有我遇到的问题,不会进入我的脑子,我不会思考,这个问题是怎么出现(复现)的,而是为了解决问题而百度答案,我觉得,如果一直这样,我会永远获得不了经验,我只会成为代码的搬运工,无法成为高级程序员。

我该如何调整遇到问题后的心态

首先,我们要确认产生问题可能的原因,然后把这些原因根据经验排列优先级,然后再去逐一解决

那如何确认问题产生的原因:首先确认一条线,问题会经过哪些环节,每个环节需要注意的地方是什么,一步步添加有可能出现的范围,然后再去根据优先级解决,看日志,亲自debug,最后不行就百度,问老大。

我没有经验,如何排序:没有经验,开始只能全部都试试,解决一个问题,这个问题解决方案就是经验,下次就优先级给他

当你解决完一个问题,你还要想,如何解决这一类问题,那我们需要一个方法论,比如下面这个:

遇到一个问题B,学习知识B,通过百度,博客,经验相传等方式,解决问题B。然后,会去找到知识B的官方文档,更多的学习,获得类B知识,以及B的细化内容

从解决问题的方式到学习新知识的方法

从我解决问题的思路来看, 我是更倾向于知道这个问题出现的总体原因到底有什么的,所以,我在学东西的时候,会更倾向于先掌握宏观体系,再优化细节内容。

具体的例子: 如果我要学习redis,我会怎么学?

前提是:我为什么要学redis,是我自己单纯好奇,就是想了解一下,还是我遇到了什么问题,需要深入学习redis去解决?     ——定义好这个问题, 会更容易的让我自己在钻牛角尖的时候,钻出来!

然后,当我决定,我就是要学redis的时候,我会怎么去学习呢?

  1. redis从哪里来,要到哪里去? redis的历史过程是什么,它是怎么诞生的,它的发展历程是什么......
  2. redis要找谁? redis究竟是要解决什么问题
  3. redis携带了什么?redis到底是什么,它的定义,功能特性,优缺点等等
  4. redis的最佳实践?别人都是怎么用redis的
  5. redis的可替代方案是什么?如果我不用redis,我还可以用什么?
  6. 细化分支4,我怎么去用redis,细化到某一行具体编码,细化到redis的源码实现,去具体的解决一个问题——这一点也很重要啊,要是漏了这一点,就特么成PPT程序员了,会死的比较难看!
  7. 总结分支6,常见的bug有什么,注意点有什么等等
    将redis塞到我自己的知识节点上

最后,我希望,自己能养成一套解决问题的方法论,逐步累积经验,走得更远。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值