2020计算机*大会_2020年*远程调试工具

2020计算机*大会

When it comes to debugging, the tool you use is extremely important and can determine how easy is is to fix problems within your code.

在调试方面,您使用的工具非常重要,它可以确定在代码中修复问题的难易程度。

In the early days, the debugging process was quite a challenge. With the distinct lack of reliable debuggers, developers turned to several hacks.

在早期,调试过程是一个很大的挑战。 由于明显缺乏可靠的调试器,因此开发人员转向了一些黑客。

For instance, when debugging a mobile app or website, you would recreate issues on your desktop and then use Chrome developer tools and similar toolkits. Unfortunately, these hacks were not as effective — you had to constantly shift back and forth from your desktop browser and mobile device.

例如,在调试移动应用或网站时,您将在桌面上重新创建问题,然后使用Chrome开发者工具和类似的工具包。 不幸的是,这些黑客没有那么有效-您必须不断地从台式机浏览器和移动设备上来回移动。

Fast forward to today, and we have a powerful suite of tools that allow you to debug defective code running on a different device as if it were local code. Best of all, these remote debugging tools not only address the debugging challenges but also enhance collaboration across development teams.

快进到今天,我们拥有一套功能强大的工具,可让您调试在其他设备上运行的有缺陷的代码,就像本地代码一样。 最重要的是,这些远程调试工具不仅可以解决调试难题,而且可以增强开发团队之间的协作。

In this post, I have put together the top ten remote debugging tools which can be reliably used to debug your code remotely.

在本文中,我汇总了十大远程调试工具,这些工具可以可靠地用于远程调试代码。

转出 (Rookout)

2020计算机*大会_2020年*远程调试工具

Rookout is an innovative tool that brings agility to the debugging process. It can be used to debug JVM, Node.JS, and Python code in both serverless and containerized applications. The beauty of Rookout lies in its ability to allow users to debug both staging and production applications quickly and securely. It eliminates the lengthy and complicated debugging processes by providing all the data needed in a matter of seconds. The on-demand data provided by Rookout ensures developers can understand and debug issues lying within their code without coding, redeploying or restarting their applications.

淘汰工作是一种创新工具,可为调试过程带来敏捷性。 它可用于在无服务器和容器化应用程序中调试JVM,Node.JS和Python代码。 Rookout的优点在于它具有允许用户快速安全地调试暂存和生产应用程序的功能。 通过在几秒钟内提供所需的所有数据,它消除了冗长而复杂的调试过程。 Rookout提供的按需数据可确保开发人员无需编码,重新部署或重新启动应用程序即可理解和调试其代码中的问题。

With Rookout, you can remotely debug live Electron apps. Rookout’s shareable interface allows developers to set non-breaking breakpoints in troublesome Electron apps. The tool gives you complete visibility into your app's performance, so you can trace issues and develop appropriate fixes. Rookout makes all this possible without the need to install another software on the end-user

借助Rookout,您可以远程调试实时Electron应用程序。 Rookout的共享界面允许开发人员在麻烦的Electron应用程序中设置不间断的断点。 该工具使您可以完全了解应用程序的性能,因此您可以跟踪问题并开发适当的修复程序。 无需再在最终用户上安装其他软件,通过淘汰就可以实现所有这些操作

强调 (Highlights)

  • Easy to get started

    易于上手
  • Seamless Git integration

    无缝的Git集成
  • Integrates with a range of tools including Slack, Datadog, Sentry, Sumologic, and more

    与各种工具集成,包括Slack,Datadog,Sentry,Sumologic等
  • Interaction tracking and screen sharing capabilities

    互动跟踪和屏幕共享功能
  • Provides comprehensive debugging data in real-time

    实时提供全面的调试数据

Visual Studio程式码 (Visual Studio Code)

2020计算机*大会_2020年*远程调试工具

Visual Studio Code is always a top pick for every developer working with .NET. It has a ton of features to facilitate both local and remote debugging. With this tool, you can set conditional breakpoints and log points.It also allows you to inspect variables. For remote debugging, you will need to install the VS code remote development extension pack. This package has three extensions that provide everything you need to launch, monitor, and accelerate your remote debugging loop.

对于使用.NET的每个开发人员, Visual Studio代码始终是首选。 它具有大量功能,可促进本地和远程调试。 使用此工具可以设置条件断点和日志点,还可以检查变量。 对于远程调试,您将需要安装VS代码远程开发扩展包 。 该软件包具有三个扩展,可提供启动,监视和加速远程调试循环所需的一切。

强调 (Highlights)

  • Free to use, cross-platform operations

    免费使用,跨平台操作
  • Highly active development community with Microsoft backing

    微软支持的高度活跃的开发社区
  • Integrated Git control

    集成Git控制
  • Supports a wide array of extensions and customization options for workflow enhancement

    支持多种扩展和自定义选项以增强工作流程
  • Automatic error checking and color coding is great

    自动错误检查和颜色编码很棒

Ruby矿 (RubyMine)

RubyMine is a powerful and intelligent cross-platform IDE that allows you to debug Ruby on Rails, CoffeeScript, JavaScript, CSS, ERB and HAML, and more. Its advanced built-in debugger allows you to set breakpoints and define hit conditions with ease.

RubyMine是功能强大且智能的跨平台IDE,可让您调试Ruby on Rails,CoffeeScript,JavaScript,CSS,ERB和HAML等。 其先进的内置调试器使您可以轻松设置断点并定义命中条件。

2020计算机*大会_2020年*远程调试工具

JetBrains' RubyMine provides two ways to debug applications that run on remote devices. First, you can add the remote Ruby interpreter and configure mappings between local and remote project files, then launch your debugging session. Alternatively, you can run applications on the remote device then add the Ruby interpreter. Once done, configure mappings between files and bind to a running process. The latter is especially helpful when debugging an application that you cannot launch directly from your IDE.

JetBrains的RubyMine提供了两种方法来调试在远程设备上运行的应用程序。 首先,您可以添加远程Ruby解释器并配置本地和远程项目文件之间的映射,然后启动调试会话。 另外,您可以在远程设备上运行应用程序,然后添加Ruby解释器。 完成后,配置文件之间的映射并绑定到正在运行的进程。 在调试无法直接从IDE启动的应用程序时,后者特别有用。

Another great thing about this tool is that it allows you to launch multiple debug processes simultaneously.

此工具的另一个优点是,它允许您同时启动多个调试过程。

2020计算机*大会_2020年*远程调试工具

强调 (Highlights)

  • RubyMine is based on the solid intelliJ IDEA platform

    RubyMine基于可靠的智能IDEA平台
  • Good support for ruby-related frameworks and technologies

    对与Ruby有关的框架和技术的良好支持
  • Autocomplete feature is pretty good

    自动完成功能相当不错
  • Good Git integration.

    良好的Git集成。
  • Supports multiple plugins

    支持多个插件
  • Integrates seamlessly with rails

    与Rails无缝集成

药香 (PyCharm)

2020计算机*大会_2020年*远程调试工具

PyCharm is another robust IDE developed by JetBrains for Python. This intelligent code editor is equipped with remote development capabilities, including running, testing, debugging, deploying and applications on virtual machines and remote hosts.

PyCharm是JetBrains为Python开发的另一个强大的IDE。 该智能代码编辑器具备远程开发功能,包括在虚拟机和远程主机上运行,​​测试,调试,部署和应用程序。

The debugger offers several breakpoints, frames view, watches, stepping modes, remote interpreters, and a debug console.

调试器提供了几个断点,帧视图,监视,步进模式,远程解释器和调试控制台。

2020计算机*大会_2020年*远程调试工具

Some amazing features of PyCharm include sophisticated auto-completion, excellent refactoring support and seamless integration with tools such as Django, IPython, Docker, Vagrant, and Pytest. Additionally, PyCharm is a wonderful cross-platform development tool. Other than Python, it supports JavaScript, Cython, CoffeeScript, TypeScript SQL, HTML/CSS, Node.js, AngularJS, and more.

PyCharm的一些惊人功能包括完善的自动完成功能,出色的重构支持以及与Django,IPython,Docker,Vagrant和Pytest等工具的无缝集成。 此外,PyCharm是一款出色的跨平台开发工具。 除Python外,它还支持JavaScript,Cython,CoffeeScript,TypeScript SQL,HTML / CSS,Node.js,AngularJS等。

强调 (Highlights)

  • Awesome connectivity with multiple databases for querying within the IDE

    与多个数据库的强大连接,可在IDE中进行查询
  • Searching and installing packages is easy

    搜索和安装软件包很容易
  • Automatic code completion

    自动完成代码
  • Git visualization

    Git可视化
  • Shows code errors on the fly and facilitates easy fixing

    实时显示代码错误,并易于修复

广东发展银行 (GDB)

GDB can be effectively used to debug programs on another computer. To perform remote debugging, you will need to run the GDB utility in the host system. Additionally, you must run gdbserver on the target system so that the two utilities will communicate through a network or serial line using the GDB remote serial protocol.

GDB可以有效地用于调试另一台计算机上的程序。 要执行远程调试,您将需要在主机系统中运行GDB实用程序。 此外,您必须在目标系统上运行gdbserver,以便两个实用程序将使用GDB远程串行协议通过网络或串行线路进行通信。

There are two configuration options for remote debugging with GDB/gdbserver. The first involves using the remote GDB server to automatically build and upload application code to the remote machine. The second option is using GDB remote debug where you should have the executable files.

使用GDB / gdbserver进行远程调试有两个配置选项。 第一个涉及使用远程GDB服务器自动构建应用程序代码并将其上载到远程计算机。 第二个选项是使用GDB远程调试,您应该在其中具有可执行文件。

2020计算机*大会_2020年*远程调试工具

强调 (Highlights )

  • Easy to use and trace faults within code

    易于使用并跟踪代码中的错误
  • Cross-platform and wide language support

    跨平台和广泛的语言支持
  • Effective for core dump analysis

    对核心转储分析有效

(Eclipse)

Eclipse is a renowned IDE for Java development that also supports languages like Python, Ruby, C# and, PHP. The Eclipse IDE is equipped with advanced features for development and debugging, making it an all-rounded tool. One of the most impressive features on Eclipse is the platform’s debug perspective that shows detailed debugging information such as breakpoints, variables, call stacks, and threads side by side. Using Eclipse, you can step through program execution, suspend and resume threads, evaluate expressions and inspect values. Managing remote debugging configurations on Eclipse is quite easy and straightforward, which makes the tool more popular among developers.

Eclipse是Java开发的著名IDE,它还支持Python,Ruby,C#和PHP等语言。 Eclipse IDE具备用于开发和调试的高级功能,使其成为一种全面的工具。 Eclipse上最令人印象深刻的功能之一是该平台的调试透视图,该视图并排显示了详细的调试信息,例如断点,变量,调用堆栈和线程。 使用Eclipse,您可以逐步执行程序,暂停和恢复线程,评估表达式并检查值。 在Eclipse上管理远程调试配置非常容易和直接,这使得该工具在开发人员中更受欢迎。

2020计算机*大会_2020年*远程调试工具

强调 (Highlights)

  • Automatic code completion

    自动代码完成
  • Good refactoring support

    良好的重构支持
  • Excellent navigation capability

    出色的导航能力
  • Helps with syntax checking for clean and efficient code

    帮助语法检查以获取干净高效的代码
  • Git Integration

    Git集成

Zend Studio调试器 (Zend Studio Debugger)

2020计算机*大会_2020年*远程调试工具

The Zend Studio is a professional IDE that supports PHP code editing, testing, debugging, and more. It is tightly integrated with the Zend Server, thereby creating a complete PHP environment that facilitates easier analysis of problems detected in staging and production environments. Zend also provides a PHP extension that users can install on web servers to debug PHP scripts. Using Zend for debugging is relatively easy – you only need to open the source code, set breakpoints in the project, and run a debug session.

Zend Studio是一个专业的IDE,支持PHP代码编辑,测试,调试等。 它与Zend Server紧密集成,从而创建了一个完整PHP环境,该环境便于对暂存和生产环境中检测到的问题进行更轻松的分析。 Zend还提供了一个PHP扩展,用户可以将其安装在Web服务器上以调试PHP脚本。 使用Zend进行调试相对容易-您只需要打开源代码,在项目中设置断点并运行调试会话即可。

2020计算机*大会_2020年*远程调试工具

Remote debugging on Zend can be done in three ways. The first option is using the Debug URL functionality on Zend Studio. Secondly, you can use the Debug as Web Page functionality within Zend Studio. And finally, using the Zend browser toolbar on Firefox or Chrome.

在Zend上的远程调试可以通过三种方式完成。 第一种选择是在Zend Studio上使用“调试URL”功能。 其次,您可以在Zend Studio中使用“作为网页调试”功能。 最后,使用Firefox或Chrome上的Zend浏览器工具栏。

强调 (Highlights)

  • Ability to sift through project files in just a few keystrokes

    只需几次按键即可浏览项目文件的能力
  • Highly efficient and speedy platform

    高效快捷的平台
  • Large community support

    大型社区支持
  • Great for building and debugging PHP applications

    非常适合构建和调试PHP应用程序
  • The framework is exceptionally flexible

    该框架非常灵活

WinPdb的 (WinPdb)

2020计算机*大会_2020年*远程调试工具

WinPdb is an excellent Python debugger that works well on Windows, Mac OS, and Linux systems. It is compatible with both Python 2.x and Python 3.x.This debugging tool supports smart breakpoints, namespace modification, multiple threads, embedded debugging, and encrypted communication. For remote debugging, you will need to copy rpdb2.py (Winpdb’s command-line debugger) onto the remote machine. Once finished, start the Python script with the debugger on the remote machine. From your local device, launch the GUI and attach the script to debug. At this point, you can use the basename or full path of the script as it is on the remote device. You can learn more about debugging Python scripts with Win PDB here.

WinPdb是一个出色的Python调试器,可在Windows,Mac OS和Linux系统上很好地运行。 它与Python 2.x和Python 3.x兼容。此调试工具支持智能断点,名称空间修改,多线程,嵌入式调试和加密通信。 对于远程调试,您需要将rpdb2.py(Winpdb的命令行调试器)复制到远程计算机上。 完成后,使用远程计算机上的调试器启动Python脚本。 在本地设备上,启动GUI并将脚本附加到调试中。 此时,您可以使用脚本的基本名称或完整路径,就像在远程设备上一样。 您可以在此处了解有关使用Win PDB调试Python脚本的更多信息。

强调 (Highlights)

  • Supports multithread debugging

    支持多线程调试
  • Encrypted communication for remote debugging

    加密通讯,用于远程调试
  • Quicker than PDB

    比PDB快
  • Easy to use GUI with breakpoints, stack/variable inspection, and more

    具有断点,堆栈/变量检查等功能的易于使用的GUI

Use the above tools to make your remote debugging experience much better. Happy coding!

使用上述工具可以使您的远程调试体验更好。 编码愉快!

翻译自: https://www.freecodecamp.org/news/remote-debugging-tools/

2020计算机*大会