IDEA太强悍了,调试器竟然支持实时数据流分析啦,提前知道代码怎么跑的?

本文主要是介绍IDEA太强悍了,调试器竟然支持实时数据流分析啦,提前知道代码怎么跑的?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

程序员的成长之路

互联网/程序员/成长/职场 

关注

阅读本文大概需要 2.8 分钟。

来源:

https://blog.csdn.net/qq_15071263/article/details/104186309

1、对于调试器的加强:数据流分析辅助

IntelliJIDEA v2020.1 向调试器添加数据流分析辅助,它根据程序执行的当前状态预测和显示可能的异常,并始终为真/始终为假条件。

调试Java代码并到达断点时,IDE将根据程序的当前状态运行数据流分析,并在代码执行达到此点之前向您展示下一步将发生什么。

简单点说,就是在调试那些复杂的代码时,IDE可以预先显示不变的那些调试值,让你能够更好的调试代码,如图:

不知道其它编辑器有没有更好的,我总感觉Visual Studio可能早就有了...

2、调试加强:属性置顶功能

这个改进不大,但是调试的时候很有用,就是说,你在调试的时候呢,有些对象的字段太多了,要去找他有时候还要翻页或者下拉很多,一般我们调试可能要走好多遍代码,你现在在第一次调试后,把这个调试的字段置顶,以免老是要去找。

3、调试加强:IPV6 调试

现在IDEA 支持通过远程计算机 IPV6 进入到调试会话。

4、性能分析的改进,剔除额外的东西

使用CPU 调试器进行性能分析的时候呢,可以通过隐藏一些方法啊什么的,或者只关注某个调用节点下的方法,来提供更高关注度的分析。

提供了四个选项:

  • 只关注子集调用

  • 只关注本调用

  • 屏蔽子集调用

  • 屏蔽本调用

另外,IDEA 允许你绕过递归,让你能够进行更专注的性能分析

5、支持读取内存快照文件

IDEA 现在支持打开 hprof 文件,也就是内存快照文件,并且打开内存快照文件不会占用你太多的内存,如果你要打开这种文件,你需要如图所示:

打开后呢,是这样的

就是暂时呢,只能进行简单的分析,后续的功能还在开发当中。

6、IDEA 变更了代码提交的界面

他大概是这个样子的

7、LightEdit 用来作为简单的文本编辑器

看着是个好功能,但是感觉还是有点鸡肋吧,因为他要通过命令行模式打开,并且有一定的功能阉割,然后就是打开快一点。

8、可以预览变更意图了

意思就是呢,我们通过快捷键可以打开一些IDEA 提供的建议,比如这里有个警告,IDEA 会提供一些建议的解决方案或者让你修改设置,现在呢,如果是需要更改代码,在改之前,IDEA 可以让你预览一下改完了是个啥样子,不需要先改完,然后再取消了。

如果你不改快捷键呢,就是alt +空格了。

9、禅定模式

用来消除分心的,解决之前的全屏模式的一些不足,让现在更好用了。

<END>

推荐阅读:

2月份Github上最热门的开源项目

你还在 new 对象吗?Java8 通用 Builder 了解一下?

微信扫描二维码,关注我的公众号

写留言

朕已阅 

这篇关于IDEA太强悍了,调试器竟然支持实时数据流分析啦,提前知道代码怎么跑的?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/701095

相关文章

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

在IntelliJ IDEA中高效运行与调试Spring Boot项目的实战步骤

《在IntelliJIDEA中高效运行与调试SpringBoot项目的实战步骤》本章详解SpringBoot项目导入IntelliJIDEA的流程,教授运行与调试技巧,包括断点设置与变量查看,奠定... 目录引言:为良驹配上好鞍一、为何选择IntelliJ IDEA?二、实战:导入并运行你的第一个项目步骤1

Olingo分析和实践之EDM 辅助序列化器详解(最佳实践)

《Olingo分析和实践之EDM辅助序列化器详解(最佳实践)》EDM辅助序列化器是ApacheOlingoOData框架中无需完整EDM模型的智能序列化工具,通过运行时类型推断实现灵活数据转换,适用... 目录概念与定义什么是 EDM 辅助序列化器?核心概念设计目标核心特点1. EDM 信息可选2. 智能类

Olingo分析和实践之OData框架核心组件初始化(关键步骤)

《Olingo分析和实践之OData框架核心组件初始化(关键步骤)》ODataSpringBootService通过初始化OData实例和服务元数据,构建框架核心能力与数据模型结构,实现序列化、URI... 目录概述第一步:OData实例创建1.1 OData.newInstance() 详细分析1.1.1

Olingo分析和实践之ODataImpl详细分析(重要方法详解)

《Olingo分析和实践之ODataImpl详细分析(重要方法详解)》ODataImpl.java是ApacheOlingoOData框架的核心工厂类,负责创建序列化器、反序列化器和处理器等组件,... 目录概述主要职责类结构与继承关系核心功能分析1. 序列化器管理2. 反序列化器管理3. 处理器管理重要方

Python实现MQTT通信的示例代码

《Python实现MQTT通信的示例代码》本文主要介绍了Python实现MQTT通信的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 安装paho-mqtt库‌2. 搭建MQTT代理服务器(Broker)‌‌3. pytho

MySQL进行数据库审计的详细步骤和示例代码

《MySQL进行数据库审计的详细步骤和示例代码》数据库审计通过触发器、内置功能及第三方工具记录和监控数据库活动,确保安全、完整与合规,Java代码实现自动化日志记录,整合分析系统提升监控效率,本文给大... 目录一、数据库审计的基本概念二、使用触发器进行数据库审计1. 创建审计表2. 创建触发器三、Java

SpringBoot中六种批量更新Mysql的方式效率对比分析

《SpringBoot中六种批量更新Mysql的方式效率对比分析》文章比较了MySQL大数据量批量更新的多种方法,指出REPLACEINTO和ONDUPLICATEKEY效率最高但存在数据风险,MyB... 目录效率比较测试结构数据库初始化测试数据批量修改方案第一种 for第二种 case when第三种

解决1093 - You can‘t specify target table报错问题及原因分析

《解决1093-Youcan‘tspecifytargettable报错问题及原因分析》MySQL1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,... 目录报js错原因分析具体原因解决办法方法一:使用临时表方法二:使用JOIN方法三:使用EXISTS示例总结报错原

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串