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

相关文章

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

Spring Boot 3.4.3 基于 Spring WebFlux 实现 SSE 功能(代码示例)

《SpringBoot3.4.3基于SpringWebFlux实现SSE功能(代码示例)》SpringBoot3.4.3结合SpringWebFlux实现SSE功能,为实时数据推送提供... 目录1. SSE 简介1.1 什么是 SSE?1.2 SSE 的优点1.3 适用场景2. Spring WebFlu

java之Objects.nonNull用法代码解读

《java之Objects.nonNull用法代码解读》:本文主要介绍java之Objects.nonNull用法代码,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录Java之Objects.nonwww.chinasem.cnNull用法代码Objects.nonN

Spring事务中@Transactional注解不生效的原因分析与解决

《Spring事务中@Transactional注解不生效的原因分析与解决》在Spring框架中,@Transactional注解是管理数据库事务的核心方式,本文将深入分析事务自调用的底层原理,解释为... 目录1. 引言2. 事务自调用问题重现2.1 示例代码2.2 问题现象3. 为什么事务自调用会失效3