当前位置: 首页 > article >正文

IDEA沉浸式编程体验

前言


IntelliJ IDEA:前不久推出了一个新的概念Fleet编辑器。用过的人都知道,不过是模仿VScode整一套,但相比之下,fleet虽然在传统IDEA的基础上简约了不少,一旦打开智能模式,那内存占用刷一下就上去了,没个3GB+别想用起来。

​ 但抛开内存占用的痛点,其实Fleet也不是一无是处。我就很喜欢它简介干净的页面布局,大量简化了各种杂七杂八的功能菜单,把大部分的空间都留给了编码展示区域。

沉浸式编程

体验了Fleet之后,如果不习惯使用VSCode的情况下,如何打造一个沉浸式的编码环境呢?作为后端开发,我一般使用的就是IDEA版本,vscode却不太习惯,所以这里就将自己平常的一些使用习惯分享一下吧。

先看一下效果。

你看到的不是局部截图,整个屏幕空间都用来作为编码展示的区域,我们可以不用受到其他功能布局的干扰,更加专注于敲代码这件事。可能这样说起来不够直观,再看一下下面这张图对比一下就明白了。

其实这还不算什么,如果你敲代码的时候是下面这样的布局结构。是不是就更显得压抑了,我是这样体验的。本来用来提高效率和体验的开发工具,结果却被一堆用不到的东西占据掉。导致可以用来编码的空间也就巴掌那么大点,未必有些……

对比之下,如果单纯的写个代码,我更倾向于选择第一中环境,毕竟干净。其实就敲代码这件事来说,IDEA展示出来的太多功能菜单我们压根就用不上,既然用不上,那都展示出来是不是显得多余了呢?为什么不把这部分空间都用来展示代码呢?空间越大,我们一屏能展示的代码量也就越多,写起代码来自然也就更能专注当下,更加沉浸于整个编码过程。

如履平地

本着**即用即开(用到什么功能再开什么功能)**的原则。下面设置一下基本布局,设置之后就会发现:几乎整块屏幕都用来写代码,至于这个空间有多大,那就取决于你的屏幕有多大了。大屏环境下,这样的体验会更佳哦。

1. 打开Zen模式

打开之后会自动进入Zen模式。该模式下所有的菜单自动隐藏,如果需要用到顶部菜单,鼠标移到顶部即可自动显示,同时右上角也有对应的推出标识。

雪中送炭

1. 打开项目目录结构

全屏(Zen)模式下,想要查看当前项目的目录结构怎么办?

很简单,通过Alt+1快捷键即可快速打开项目结构目录。

2. 运行项目/服务

模式下,想要跑一下项目。也可以不用动鼠标,直接使用Shift+F10即可,当然,也可以使用顶部的【运行】菜单。不过我个人偏向于鼠标能不用就不用。绝大部分情况下,直接使用键盘和鼠标都能完成的操作,键盘的效率会更高。

那么,遇到第一次运行之后,发现运行打开的控制台界面被关闭了怎么办?毕竟看个打印日志,输出信息什么的都是运行项目之后需要经常用到的。此时可以通过Alt+4进行重新打开运行控制台。

这里得说一嘴。如果你得项目是微服务项目,一个项目同时跑了多个模块得服务,一般不会直接通过上面得方式去运行,而是配置成服务得形式,这时候就不能使用Alt+4打开运行控制台了,而是使用Alt+8。比如下面这样:

3 .版本控制

版本控制,不用多说了吧,也是常用功能。

在模式下,通过Alt+9可以打开版本控制日志信息。

如果你愿意,你甚至可以把这部分空间拉到最大,就能全心全意查阅整个版本控制得日志信息了。

通过Alt+0打开提交管理。

4. 查看类方法

通过Alt+7可以直接查询当前打开类得方法列表。

当然,根据需要,还可以通过顶部得一排功能图标,查询自己需要得信息。方便快捷。

除了上面这些常用得快捷功能之外,还有几个其他方面的功能,我就不一一截图列举了。

  • Alt+5打开调试功能
  • Alt+6查看当前项目问题分析
  • Alt+2打开收藏夹

锦上添花

熟练使用下面的技巧,可以大大提高开发效率。结合上面的内容,锦上添花!

1. 全局搜索

双击Shift,打开全局搜索,包括整个IDEA的功能内容也在其中。比如打开常用的Maven功能。

总之,这个功能的强大之处远远不止这些,自行摸索吧。

2. 模式匹配

如果说,上面的搜索是全局的。那么下面的方式可以在当前页面进行模式匹配精确搜索。

3. 搜索替换

Ctrl+Shift+R,对目标内容进行搜索并替换。支持已经替换,可以说是非常强大呀。

如鱼得水

看完前面的内容并熟练使用,已经可以极大的提高开发效率了,开启沉浸式编程体验!

下面的内容呢。可能不太使用于大部分人了。

我自己的IDEA是开启了Vim模式的环境,对于上面例如模式匹配,搜索替换什么的,都是通过几个简单的命令直接完成,而无需借助IDEA的原生功能,操作简单快速,效率自然不用说。但是考虑到大部分用户是不用或者少用vim模式的,所以这里就不再作详细展开了,感兴趣的可以自己尝试或者直接找我吹牛逼。


http://www.kler.cn/a/18082.html

相关文章:

  • windows C#-LINQ概述
  • ODOO学习笔记(3):Odoo和Django的区别是什么?
  • sqoop import将Oracle数据加载至hive,数据量变少,只能导入一个mapper的数据量
  • 重学SpringBoot3-整合 Elasticsearch 8.x (三)使用Repository
  • 【大数据学习 | kafka高级部分】kafka中的选举机制
  • Kubebot:一款Google云平台下的Slackbot安全测试工具
  • 锁相环技术,单边带信号,信号的调制
  • MySQL数据库之索引
  • 【SpringMVC】三、SpringMVC获取请求参数与域数据共享
  • Ubuntu20.04安装Vtk9.2.6+PCL1.12.1(成功无报错)
  • 使用asp.net core web api创建web后台,并连接和使用Sql Server数据库
  • Flink dataStream,如何开窗,如何进行窗口内计算
  • BM54-三数之和
  • 盲目自学网络安全只会成为脚本小子?
  • Java入门全网最详细 - 从入门到转行
  • MySQL安装配置教程(保姆级,包含环境变量的配置)适合小白
  • 【Java笔试强训 33】
  • 【python脚本系列】python脚本2——PDF转word文档
  • Rosetta从头蛋白抗体设计、结构优化及在药物研发中的应用
  • Grafana 系列-统一展示-1-开篇
  • 本地使用3台centos7虚拟机搭建K8S集群教程
  • 璞华助力“数字人社”,为成都市人社数字化建设提供多方位的产品与技术支持!
  • Chapter4:频率响应法(下)
  • tiechui_lesson01_入口函数和卸载函数
  • MySQL数据库——MySQL存储函数详解
  • Java版本企业电子招投标采购系统源码之项目说明和开发类型源码