代码调试时,工具很重要,由于某种水平上,它能决议我们能否能够快速修复代码中的问题。以前,调试颇具应战。由于缺乏牢靠的调试器,开发人员不得不运用一些特殊技巧。
例如,在调试挪动应用和Web站点时,你需求在桌面电脑上重现问题,然后运用Chrome开发者工具或其他相似的工具集。但是,这些技巧并不是那么有效,你必需要在桌面阅读器和挪动设备间不时切换。而今天,我们有了一个强大的工具套件,它允许我们就像运转本地应用那样在不同的设备上调试有缺陷的代码。最重要的是,这些远程调试工具不只处理了调试方面所面临的应战,还增强了开发团队间的协作。
1.Rookout
Rookout是一个创新性的工具,它提升了调试过程的矫捷性。它能够调试serverless和容器化应用中的JVM、Node.JS和Python代码。
Rookout十分棒的一点在于它允许用户快速且平安地调试staging和消费环境的应用。它可以在几秒钟之内提供一切需求的数据,消弭了冗长和复杂的调试过程。
Rookout可以按需提供数据,确保了开发人员能够了解和调试代码中所存在的问题,不需求编码、重新部署和重新启动他们的应用。
借助Rookout,我们能够远程调试实时的Electron应用。Rookout的可共享接口允许开发者在棘手的Electron应用程序中设置不连续的断点(与常规端点相似,只不过这种端点不接触代码,可以让我们在不中止或中缀应用的状况下,获取代码中的数据)。
借助该工具,我们能够完好地看到应用的性能,这样就能够跟踪问题并开发对应的修复程序。Rookout可以让这一切变成理想,而且不需求在终端用户上装置任何额外的软件。
亮点
易于上手起步;与Git无缝集成;支持与一系列工具的集成,如Slack、Datadog、Sentry、Sumologic等;交互跟踪和屏幕共享功用;实时提供全面的调试数据。
2.VisualStudioCode
VisualStudioCode一直是每个运用.NET开发人员的首选。它有大量的特性来完成本地和远程调试。借助该工具,我们能够设置条件端点和日志点。
它还允许我们探查变量。关于远程调试,我们需求装置VScode远程开发扩展包。这个包有三个扩展,它们提供了启动、监控和加速远程调试循环的一切内容。
亮点
免费试用,跨平台;有微软支持的高度活泼的开发社区;集成了Git版本控制;用来完成工作流加强的大量扩展和定制选项;十分棒的自动化代码检查和代码颜色高亮。
3.RubyMine
RubyMine是一个强大的、智能的跨平台IDE,它允许我们调试RubyonRails、CoffeeScript、JavaScript、CSS、ERB和HAML等,其优秀的内置调试器允许我们轻松地设置断点和定义命中条件。
JetBrains的RubyMine提供了两种方式来调试在远程设备上运转的应用。首先,你能够添加远程Ruby解释器并配置本地和远程项目文件的映射,然后启动调试会话。
或者,你也能够在远程设备上运转应用,然后添加Ruby解释器。
完成之后,配置文件之间的映射并绑定到运转中的进程上。在调试无法在IDE直接启动的应用时,这一点尤为重要。
这个工具另外很棒的一点在于它允许我们同时启动多个调试进程。
亮点
RubyMine基于强大的intelliJIDEA平台;对Ruby相关的框架和技术提供了良好的支持;自动完成特性十分棒;与Git集成地十分好;支持多个插件;与Rails无缝集成。
4.PyCharm
PyCharm是JetBrains为Python开发的一个强健的IDE。这个智能的代码编辑器提供了远程开发的功用,包括在虚拟机和远程主机上运转、测试、调试和部署应用的才能。
调试器提供了多种断点、帧视图、监视、步进形式、远程解释器以及一个调试控制台。
PyCharm提供了很多令人惊叹的特性,包括复杂场景的自动完成、优秀的重构支持以及与其他工具的无缝集成,如Django、IPython、Docker、Vagrant和Pytest。
除此之外,PyCharm还是一个十分棒的跨平台开发工具。除了Python,它还支持JavaScript、Cython、CoffeeScript、TypeScript、SQL、HTML/CSS、Node.js、AngularJS等。
亮点
出色在IDE中衔接多数据库停止查询的功用;搜索和装置包十分容易;自动化的代码生成;Git可视化;动态展现代码错误,使其易于修复。
5.GDB
GDB能够高效地调试另外一台机器上的程序。为了停止远程调试,我们需求在宿主机上运转GDB工具。另外,需求在目的系统上运转gdbserver,这样两个工具就能够经过网络或者GDB远程序列化协议的serialline停止通讯。
GDB/gdbserver的远程调试有两个配置选项。首先,触及到运用远程GDB自动构建并上传应用代码到远程机器。
第二个选项是在应该运用可执行文件的中央,运用GDB的远程调试功用。
亮点
易于运用和跟踪代码中的错误;跨平台并提供了普遍的言语支持;高效的中心dump剖析。
6.Eclipse
Eclipse是一个适用于Java开发的知名IDE,同时还支持Python、Ruby、C#和PHP等言语。EclipseIDE具有开发和调试的高级特性,使其成为一个全面的工具。
Eclipse最令人印象深入的特性之一就是平台的调试视图,它可以展示细致的调试信息,如断点、变量、调用栈以及线程。
借助Eclipse,我们能够单步执行程序、挂起和恢复线程、计算表达式以及探查表达式的值。在Eclipse上管理远程调试配置十分简单直接,这使得该工具在开发者中更受欢送。
亮点
自动化的代码完成;对重构的良好支持;优秀的导航功用;有助于停止语法检查,完成整洁和高效的代码;Git集成。
7.ZendStudio调试器
ZendStudio是一个专业的IDE,支持PHP代码的编辑、测试、调试等功用。
它与ZendServer停止了严密的集成,因而创立了一个完好的PHP环境,能够更容易地剖析在staging和消费环境中探测到的问题。
Zend还提供了一个PHP扩展,用户能够将其装置到Web效劳器上以调试PHP脚本。运用Zend停止调试十分容易,你只需求翻开源码、在项目中设置断点并运转调试会话即可。
Zend上的远程调试能够经过三种方式完成。第一个计划是运用ZendStudio上的DebugURL功用。
其次,你能够运用www.nxmrx.comZendStudio中的DebugasWebPage功用。最后,还能够运用Firefox或Chrome上的Zend阅读器工具栏。
亮点
可以经过简单的几个按键挑选项目文件;高效、快速的平台;广阔的社区支持;十分合适构建和调试PHP应用;该框架十分灵敏。
8.WinPdb
WinPdb是一个十分棒的Python调试器,可以很好地在Windows、MacOS和Linux系统上运转。它同时兼容Python2.x和Python3.x。
这个调试工具支持智能断点、命名空间修正、多线程、嵌入式调试以及加密通讯。关于远程调试功用来讲,我们需求将rpdb2.py(Winpdb的命令行调试器)复制到远程机器上。
完成之后,运用调试器在远程机器启动Python脚本。在本地机器上,启动GUI并关联要调试的脚本。此时,我们能够运用远程设备脚本的根底称号或完好途径。关于运用WinPDB调试Python脚本的更多学问,能够参考该教程。
亮点
支持多线程调试;支持远程调试的加密通讯;比PDB更快;易于运用的GUI,支持断点、栈、变量探测等功用。