项目遇到Bug如何解决(思路)

在我们项目开发中,总是遇到各种各样的 Bug,对于我来说能够快速的 找到Bug、分析Bug、解决Bug就是自我能力最大的挑战。

所以,先要明确在项目开发中经常会遇到错误类型有哪些呢?

错误类型三大类:

一、语法错误

从它错误的表现形式来去明确我们的语法错误应该通过什么样的方式进行修复,所谓语法错误就是在我们的 id 开发工具使用的时候就出现的一种错误类型,比如说:

在我们变量定义的时候,假设const、在进行const书写的时候,单词如果出现了拼写的错误,那我们就可以称之为语法错误 ,将这种错误类型,在 VSCode 内置的开发工具使用的时候就会出现一个明显的红色波浪线,去告诉你我们已经出现了代码错误,当然,我们在进行代码书写的时候可能还会使用其他的工具进行更好的语法错误的纠正。比如说利用:

  • ESLint:我们实现的是代码的规则约束的检测操作,利用它可以更好的帮助我们避免一些语法的错误。解析我们的括号是否匹配。
  • Prettier: 代码工具进行我们语法错误的一个纠正,那么 Prettier 代码格式化工具,为什么能够进行语法错误的纠正呢?是因为我们出现语法错误后,代码格式化处理就失效了,那么我们就明确,在进行代码书写的时候,在不同的位置出现相应的错误信息
  • Code Spell Checker:也就是代码的拼写检测插件,去明确我们在书写代码的时候,有还有没有出现过代码的一个错误书写
  • Error Lens:是一个实时显示我们语法错误的工具
  • GitLens:可以帮助我们在进行处理语法错误的时候,通过版本的回退管理去确定我们到底出现在那个位置

总而言之,我们的语法错误,是在开发环境的下面出现的错误类型,利用各种各样的工具以及我们的开发习惯可以很好去找到,避免以及解决我们的 Bug

二、编译错误

什么是编译错误呢?编译错误是在我们程序运行的时候出现的一种错误类型

  • 查看控制台错误信息
  • 异常捕获(try-catch)
  • 日志记录

通过控制台查看可以看到报错的提示,这个时候就会出现我们能力的提升要求,那控制台的信息我们能不能看得懂呢,如果我们不能看得懂控制台的错误信息,就没有办法分析出来当前的问题是什么,如果看得懂我们控制台的错误信息,那么我们就可以在程序当中,尝试try-catch或者说可以通过日志记录去明确,什么样的情况下会出现我们的编译错误,所以编程错误的出现其能力主要在于现有问题的查看、分析的一个能力。

三、逻辑错误

什么是逻辑错误呢?既不会出现语法错误,也不会出现编译错误。

那么怎么解决呢?

  • console 打印:console的功能的非常强大的,比如说console打印处理,不仅仅是 console.log、还有 console.debuger、console.error...进行打印来确认我们的问题究竟出现在那个位置
  • 程序 debuger:在我们指定的程序位置利用 debuger 设置断点,我们可以设置条件断点:在满足条件的时候进行一个暂停,只有在特定条件下,调试特定的逻辑。那么,这个时候,我们利用程序 debuger 是非常有用的
  • 工具断点调试

使用TypeScript减少Bug:

  • 静态类型检查
  • 类型注解和推断
  • 提前发现错误
  • 智能代码补全
  • 代码可读性和可维护性

bug处理不仅仅是一个技术,它更是一个流程,甚至是我们团队协作和个人成长更好的机遇!

相关推荐
m0_748239832 天前
前端bug调试
前端·bug
沙尘暴炒饭3 天前
关于uni-forms组件的bug【提交的字段[‘*‘]在数据库中并不存在】
bug
Kisorge4 天前
【C语言】代码BUG排查方式
c语言·开发语言·bug
安卓机器4 天前
探索 Python编程 调试案例:配置日志记录器查看程序运行bug
bug
树懒_Zz6 天前
记录 io.springfox 3.0.0 整合 spring boot 2.6.x 由于 springfox bug 引发问题
windows·spring boot·bug
每天进步一大步6 天前
webSokect安卓和web适配的Bug 适用实时语音场景
android·前端·bug·web
JWASX6 天前
【BUG记录】Apifox 参数传入 + 号变成空格的 BUG
java·bug·urlencoder·urldecoder
初遇你时动了情7 天前
解决react 路由切换,页面闪屏的bug
javascript·react.js·bug
老赵的博客7 天前
QString转const char* bug
bug
andlbds7 天前
解决PCL库中pcl::VoxelGrid降采样Bug
c++·bug