- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章超爱的IDEA提效神器Save Actions,卸载了由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
你好,我是方同学(YourBatman) 。
一切工具,都是为了提效。效率的提升一般来讲并不改变事务的本质,但足够高的效率也能引起质变,这和程序员熟悉的量变引起质变道理一样.
IDEA作为Javaer的必备神器,几乎每个开发者都在使用。作为(公司内)IDEA的布道者,笔者分享的每篇IDEA相关文章都能受到喜爱,比如最近的两篇:
工具好,也要用得巧。虽说每个Javaer都在用着同一个工具(IDEA),但对工具的使用效率上往往差异较大,可以翻看的文章,看看自己是否在低效率的使用它.
本文给你安利一个提效神器:Save Actions,再向你解释下笔者为什么要卸载它.
所属专栏 。
相关下载 。
版本约定 。
开发过程中,当遇到痛点时总希望去寻找相应的工具解决.
在开发项目时,一般都是多人维护一个项目。代码写下去只需要1次,但会被人看几十上百次,所以保持一致的代码规范、代码展示变得非常重要。但是,当团队内多人开发一个项目时,由于每个人的编码习惯、思维习惯、水平、觉悟都高低不一具有多样性,那么如何保证“所有人”的代码风格一致呢?
这个时候就得使用规则了.
相信很多团队各自都有自己的代码规范模板,模板一般是取最大公约数定出来的,比较容易达成一致。毕竟漂亮的东西趋同,只会丑得千奇百怪。定好代码的规范模板后,组员如何能高效的实施呢?这个时候一般要求提交代码之前必须(按照规范模板)格式化处理,进而达到抹平差异,去除掉个人风格,达到统一的目的.
问题又来了:IntelliJ IDEA是自动保存的,因此很多时候你修改了代码之后就出现:代码没有格式化、出现无用的import、无用的变量等一些列“不规范”的问题就保存了/提交了,怎么破?
针对这类痛点,作为开发神器的IDEA怎能想不到。因此它也针对性的提供了相应方案.
嗯,方式方法都在这里:【方同学】利用IDEA代码审查能力,来保证代码质量 。
优点:全局扫,大而全 。
缺点:项目太大时候可能慢。另外,毕竟还是手动的,忘记了就没辙了 。
在IDEA的commit窗口栏里,点击如图红色框框里的设置按钮:
每个选项都代表什么功能,单词你都认识,所以不用多余解释了.
优点:在提交前集中式卡点,可做到没有漏网之鱼 。
缺点:阶段过于靠后。若需要修改,留给RD修改的时间太少了。所以经常会出现妥协式提交 。
PS:如果你平时提交代码用黑窗口、Smart Git而非IDEA,那就享受不到此“福利”喽 。
就我个人习惯而言,我不喜欢使用commit这种方式,工作中也很少使用。我认为应该将此动作提前:编辑每个文件保存时就及时触发相应动作,并且是自动的(无需人为干预).
所以,接下来就引入本文主角:Save Actions.
直译:保存动作(们)。翻译为保存时触发的动作更为合适~ 。
它其实也就是IDEA的一个插件而已:
简介为:支持可配置的、类似Eclipse的保存操作,包括“优化导入”、“重新格式化代码”、“重新排列代码”、“编译文件”和一些Java快速修复程序,如“添加/删除“this”限定符”,等等。当文件在磁盘上同步(或保存)时,插件将执行配置的操作.
惊不惊喜?这不正是我们需要的功能吗?是的,有了它,再也不用担心团队成员提交没有“处理”过的代码了.
我的常用配置如下截图:
如果你乐意,还可以勾选多个Java检查快速修复功能点(Java Inspection and Quick Fix),我一般不勾.
既然Save Actions这么好用,笔者为何要卸载它呢?一切都要从IDEA的迭代发展说起~ 。
并不是笔者不重视这块了,而是有更好的方式取而代之。笔者从2017年底开始使用IDEA到现在,见证了它的迭代,最近几个版本都有写新特性的文章哦:
随着IDEA的发展,硬核功能点越来越完善。举个例子:lombok自2015年起逐渐流行开来,因此在IDEA上安装lombok插件也就成了必备动作。既然如此,IDEA在其2020.3便将lombok插件设为内置,开发者无需再手动安装:
同理,IDEA眼瞅着使用者对自动代码格式化/自动代码检查的需求这么高,索性就将此功能也内置了。值得注意的是:从2021.2版本起才内置哦.
此功能并非以插件形式内置,位置在这:Preferences/Settings | Tools | Actions on Save 。
以上(勾选的)动作在保存时会自动触发。有了它,我似乎没有理由再留着Save Actions插件,这便是笔者卸载它的根因.
下面对最常用的3个功能进行简述:
格式化代码,推荐勾选☑️ .
格式化代码范围:
Whole file:整个文件。这是默认选项 。
Changed lines:只格式化修改的行(们)。保守点的话,你可以使用此选项 。
Configure scope:配置范围。支持书写glop patter语法来自定义需要格式化的代码范围;支持通过@formatter:off/on等方式来控制某段代码不允许/允许格式化。这个自定义的功能怎么说呢,绝大多数情况下用不着这么去自定义,毕竟大大提高了复杂度.
格式化MyBatis的xml文件里的SQL时有时会出问题,这时可以通过加上@formatter:off/on注解来禁止格式化(需要先开启此功能) 。
重新排列import导包。作用:
将import按照顺序重新排列(比如static静态导入会放到最后) 。
删除掉无用的import 。
推荐勾选☑️ .
重新排列代码,推荐勾选☑️ .
关于这个功能可能有的同学不太了解,拿Java举个栗子吧.
源代码:
代码保存(触发Optimize import动作)后:
这就是重新排列的含义。自上而下排序规则:属性 -> 静态方法 -> 实例方法.
在编程界,坐在第二排看戏被公认不失为一种很好的升级策略:既保证不会过于陈旧享受不到新技术红利,又在稳定性上有所保证。比如:
根据我的从业经验,对此观点有所改变,分享出来供你参考:
和数据打交道的基础设施层面(如JDK、Spring Boot、MQ、Redis...),尽量保守点,毕竟稳定压倒一切 。
开发工具类(如IDEA、DataGrid、Navicat...)推荐保持最新版,享受新功能特性带来开发效率上的提升,原因有三 。
1、享受新红利:可能是性能上提升、也可能是新功能来辅助你提升开发效率。毕竟对于软件来讲,新不如旧的可能性极低极低 。
2、keep update能让你对升级不再恐惧。毕竟若从2017年版本一步升级跨入2021年版本,对兼容性方面心里都会打鼓 。
3、开发工具即使出现(重大)bug,对数据不会造成任何影响,况且这个概率极低极低 。
即使是开发工具升级切勿盲目。至少你得看看升级的feature,是否存在阻断式更新等等...当然,据我了解,以IDEA为例,同学们不升级到最新版的最大阻碍是:无法破解。这个笔者就不多说什么了(毕竟正版IDEA确实比较贵...),是否购买正版自行选择喽~ 。
本文旨在输出一个观点:一切工具旨在提效,工具好也要用得巧。正所谓同样一把菜刀,握在米其林餐厅厨师手中和握在街边小炒厨师手中的功效的完全不一样的.
【编辑推荐】https://mp.weixin.qq.com/s/JIq21j34gNr5SP3-cg9z3A 。
最后此篇关于超爱的IDEA提效神器Save Actions,卸载了的文章就讲到这里了,如果你想了解更多关于超爱的IDEA提效神器Save Actions,卸载了的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我有一个 C# 程序经常失败。没关系,我已经创建了程序,它是我的 child ,无论如何我都喜欢它。作为一种支持,我决定围绕它编写一个 AutoHotKey 包装器,它会自动重新启动程序,直到它没有错
我需要开发一个帖子投票系统。每个用户都可以通过点击拇指图标来喜欢一个帖子,通过点击壁炉图标来喜欢一个帖子,将来也许我有一个明星系统作为替代方案。 我正在寻找更好的解决方案来实现这个系统,目前,我有两种
我花了几个小时彻底修改标准 标记,现在我停留在最后一步,即动画。我已经尝试了几乎所有的东西,但可以让它正常工作。如果有人可以在这里帮助我,我将不胜感激。 理想情况下,我希望 Twitter 小鸟移动并
我是一名优秀的程序员,十分优秀!