没有任何一名程序员能够一鼓作气、天衣无缝的在不用调试的状况下完成一个功能或模块。调试实际分不少种状况。本篇文章我分享下本身在实际开发工做中的经验,我我的理解,调试分三种,注意我所讲的是调试并不是测试php
功能调试是指在完成一个功能或者正在完成功能的过程当中进行的错误、逻辑、结果的测试git
组件调试是指将一个正在开发测试的插件、类进行错误、逻辑和结果的测试程序员
片断调试是指将一段代码片断、函数、变量的预期和结果的测试github
接下来咱们看下本章列出的一些调试方法算法
这种方式简单粗暴,通常PHP程序员都会用,那就是浏览器调试,在编辑器内写完代码后随后打开万能的浏览器输入地址开始调试代码。浏览器
说实在的,这种方式若是仅仅是看看输出结果,彻底不必,看似高大上实际浪费时间经历,通常我都会在代码块写好以后跑一遍debug,检查一下流程和结果是否在个人预期内或者遇到了某些逻辑问题没法察觉,仍是选择断点调试比较靠谱,省时省力。最厉害的程序员也有懵逼的一刻不是吗?编辑器
若是你在官网或者github上下载了一段代码片断,急于调试但还不肯意将代码片断放入项目中或者新开辟一个目录,彻底可使用php命令去执行这个代码块函数
php -f filename.php
若是代码片断较短,你可使用工具
php -r "code ..."
执行运行PHP代码测试
当你忽然想起一个方法或者算法急于去验证它,但又不肯意打开编辑器或者执行php自带的命令行的话。你能够选择使用psysh
工具去执行验证你的想法,这个工具安装十分简单
Psy Shell v0.8.17 (PHP 7.1.14 — cli) by Justin Hileman New version is available (current: v0.8.17, latest: v0.9.6) >>> date('Y-m-d H:i:s',time()) => "2018-08-09 14:18:10" >>>
下载地址 : https://psysh.org/
这是一个严肃的调试方法,不少程序员都认为功能模块、组件开发完就结束的任务,随后交给测试人员去测试就行了。其实并否则,有些隐藏的bug或者致命错误、逻辑错误、系统错误(例如开启了无用的线程,未使用的变量、方法、类等等)是没法被测试出来的。实际做为一名程序员,开发功能的流程是这样的。
理解需求 -> 分解需求 -> 整理逻辑 -> 设计代码 -> 敲代码 -> 调试 -> 测试
若是最后一步你历来没有作过,那你只能是半个程序员。 测试我推荐使用PHPunit,更好的去理解本身的代码,才是一个合格的程序员。
感受讲这个有点废话了,若是你感受打开命令行而后输入 php xxxx
特别费劲的话,你也能够选择使用编辑器自带的调试,通常像sublime,visual Studio Code , PHPStrom 都会自带的调试工具,其原理依旧是调用 php -r
但总比打开命令行输入命令要快的多。
这并非一篇酝酿了好久的文章,是在我平常的开发中常用的几种调试方法。感谢你看到这里,但愿本篇文章能够帮助到你,有什么问题能够在评论区留言。谢谢