diff --git a/docs/idea-tutorial/idea-plugins/camel-case.md b/docs/idea-tutorial/idea-plugins/camel-case.md index 5456378f..c6be2ef0 100644 --- a/docs/idea-tutorial/idea-plugins/camel-case.md +++ b/docs/idea-tutorial/idea-plugins/camel-case.md @@ -6,11 +6,11 @@ tag: - IDEA插件 --- -非常有用!这个插件可以实现包含6种常见命名格式之间的切换。并且,你还可以对转换格式进行相关配置(转换格式),如下图所示: +非常有用!这个插件可以实现包含6种常见命名格式之间的切换。并且,你还可以对转换格式进行相关配置(转换格式) *Preferences / Settings | Camel Case* 。 -![img](./pictures/camel-case/camel-case1.png) +![](./pictures/camel-case/camel-case1.png) -有了这个插件之后,你只需要使用快捷键 `shift+option+u(mac)` / `shift+alt+u` 对准你要修改的变量或者方法名字,就能实现在多种格式之间切换了,如下图所示: +有了这个插件之后,点击你想要修改的变量或者方法名使用快捷键 `shift+option+u(mac)` / `shift+alt+u` 即可实现在多种命名格式之间切换。 ![](./pictures/camel-case/camel-case2.gif) @@ -24,4 +24,3 @@ tag: 如果我们不用这个插件,而是手动去一个一个改的话,工作量想必会很大,而且正确率也会因为手工的原因降低。 -> diff --git a/docs/idea-tutorial/idea-plugins/gson-format.md b/docs/idea-tutorial/idea-plugins/gson-format.md index 56750e1c..5b9a8461 100644 --- a/docs/idea-tutorial/idea-plugins/gson-format.md +++ b/docs/idea-tutorial/idea-plugins/gson-format.md @@ -10,13 +10,15 @@ GsonFormat 这个插件可以根据Gson库使用的要求,将JSONObject格式的 > 说明:2021.x 版本以上的 IDEA 可以使用:GsonFormatPlus -这个插件使用起来非常简单,我们新建一个类,然后在类中使用快捷键 `option + s`(Mac)或`alt + s` (win)调出操作窗口(**必须在类中使用快捷键才有效**),如下图所示。 +使用起来非常简单,我们新建一个类,然后在类中使用快捷键 `option + s`(Mac)或`alt + s` (win)调出操作窗口(**必须在类中使用快捷键才有效**),如下图所示。 -![](./pictures/GsonFormat2.gif) +![](./pictures/gson-format/gson-format2.png) + +![](./pictures/gson-format/gson-format3.png) 这个插件是一个国人几年前写的,不过已经很久没有更新了,可能会因为IDEA的版本问题有一些小Bug。而且,这个插件无法将JSON转换为Kotlin(这个其实无关痛痒,IDEA自带的就有Java转Kotlin的功能)。 -![](./pictures/GsonFormat1.png) +![](./pictures/gson-format/gson-format1.png) 另外一个与之相似的插件是 **:RoboPOJOGenerator** ,这个插件的更新频率比较快。 diff --git a/docs/idea-tutorial/idea-plugins/improve-code.md b/docs/idea-tutorial/idea-plugins/improve-code.md index 91b31b4e..9e8d0cf2 100644 --- a/docs/idea-tutorial/idea-plugins/improve-code.md +++ b/docs/idea-tutorial/idea-plugins/improve-code.md @@ -19,16 +19,21 @@ tag: ``` -使用 Lombok 能够帮助我们少写很多代码比如 Getter/Setter、Constructor等等。 - -关于Lombok的使用,可以查看这篇文章:[《十分钟搞懂Java效率工具Lombok使用与原理》](https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=2247485385&idx=2&sn=a7c3fb4485ffd8c019e5541e9b1580cd&chksm=cea24802f9d5c1144eee0da52cfc0cc5e8ee3590990de3bb642df4d4b2a8cd07f12dd54947b9&token=1667678311&lang=zh_CN#rd)。 +使用 Lombok 能够帮助我们少写很多代码比如 Getter/Setter、Constructor 等等。 +关于 Lombok 的使用,可以查看这篇文章:[《十分钟搞懂 Java 效率工具 Lombok 使用与原理》](https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=2247485385&idx=2&sn=a7c3fb4485ffd8c019e5541e9b1580cd&chksm=cea24802f9d5c1144eee0da52cfc0cc5e8ee3590990de3bb642df4d4b2a8cd07f12dd54947b9&token=1667678311&lang=zh_CN#rd)。 ## Codota:代码智能提示 -我一直在用的一个插件,可以说非常好用了(*我身边的很多大佬平时写代码也会用这个插件*)。 +> 目前的话,Codota 已经更名为 **Tabnine** 。 -Codota 这个插件用于智能代码补全,它基于数百万Java程序,能够根据程序上下文提示补全代码。相比于IDEA自带的智能提示来说,Codota 的提示更加全面一些。 +我一直在用的一个插件,可以说非常好用了(_我身边的很多大佬平时写代码也会用这个插件_)。 + +Codota 这个插件用于智能代码补全,它基于数百万 Java 程序,能够根据程序上下文提示补全代码。相比于 IDEA 自带的智能提示来说,Codota 的提示更加全面一些。 + +除了代码补全之外,Codota 还支持代码智能搜索,直接选中对应的类或者方法即可搜索相关的代码示例。 + +![](./pictures/Codota2.png) 如果你觉得 IDEA 插件安装的太多比较卡顿的话,不用担心!Codota 插件还有一个对应的在线网站([https://www.codota.com/code](https://www.codota.com/code)),在这个网站上你可以根据代码关键字搜索相关代码示例,非常不错! @@ -38,29 +43,11 @@ Codota 这个插件用于智能代码补全,它基于数百万Java程序,能 另外,Codota 插件的基础功能都是免费的。你的代码也不会被泄露,这点你不用担心。 -简单来看看 Codota 插件的骚操作吧! - -### 代码智能补全 - -我们使用`HttpUrlConnection ` 建立一个网络连接是真的样的: - -![](./pictures/Codota1.gif) - -我们创建线程池现在变成下面这样: - -![](./pictures/Codota4.gif) - -上面只是为了演示这个插件的强大,实际上创建线程池不推荐使用这种方式, 推荐使用 `ThreadPoolExecutor` 构造函数创建线程池。我下面要介绍的一个阿里巴巴的插件-**Alibaba Java Code Guidelines** 就检测出来了这个问题,所以,`Executors`下面用波浪线标记了出来。 - -### 代码智能搜索 - -除了,在写代码的时候智能提示之外。你还可以直接选中代码然后搜索相关代码示例。 - -![](./pictures/Codota2.png) +类似的插件还有阿里云智能编码插件 **Cosy**(Alibaba Cloud AI Coding Assistant) ,关于 Cosy 的详细介绍,可以看一下我写的 [阿里云 Java 智能编码插件 Cosy 诞生!](https://zhuanlan.zhihu.com/p/464874603)这篇文章。 ## Alibaba Java Code Guidelines:阿里巴巴 Java 代码规范 -阿里巴巴 Java 代码规范,对应的Github地址为:[https://github.com/alibaba/p3c](https://github.com/alibaba/p3c ) 。非常推荐安装! +阿里巴巴 Java 代码规范,对应的 Github 地址为:[https://github.com/alibaba/p3c](https://github.com/alibaba/p3c) 。非常推荐安装! 安装完成之后建议将与语言替换成中文,提示更加友好一点。 @@ -68,13 +55,13 @@ Codota 这个插件用于智能代码补全,它基于数百万Java程序,能 根据官方描述: -> 目前这个插件实现了开发手册中的的53条规则,大部分基于PMD实现,其中有4条规则基于IDEA实现,并且基于IDEA [Inspection](https://www.jetbrains.com/help/idea/code-inspection.html)实现了实时检测功能。部分规则实现了Quick Fix功能,对于可以提供Quick Fix但没有提供的,我们会尽快实现,也欢迎有兴趣的同学加入进来一起努力。 目前插件检测有两种模式:实时检测、手动触发。 +> 目前这个插件实现了开发手册中的的 53 条规则,大部分基于 PMD 实现,其中有 4 条规则基于 IDEA 实现,并且基于 IDEA [Inspection](https://www.jetbrains.com/help/idea/code-inspection.html)实现了实时检测功能。部分规则实现了 Quick Fix 功能,对于可以提供 Quick Fix 但没有提供的,我们会尽快实现,也欢迎有兴趣的同学加入进来一起努力。 目前插件检测有两种模式:实时检测、手动触发。 -上述提到的开发手册也就是在Java开发领域赫赫有名的《阿里巴巴Java开发手册》。 +上述提到的开发手册也就是在 Java 开发领域赫赫有名的《阿里巴巴 Java 开发手册》。 ### 手动配置检测规则 -你还可以手动配置相关 inspection规则: +你还可以手动配置相关 inspection 规则: ![](./pictures/p3c/Alibaba-Java-Code-Guidelines3.png) @@ -84,13 +71,13 @@ Codota 这个插件用于智能代码补全,它基于数百万Java程序,能 ![](./pictures/p3c/Alibaba-Java-Code-Guidelines1.png) -这个可以对应上 《阿里巴巴Java开发手册》 这本书关于创建线程池的方式说明。 +这个可以对应上 《阿里巴巴 Java 开发手册》 这本书关于创建线程池的方式说明。 ![](./pictures/p3c/阿里巴巴开发手册-线程池创建.png) -## CheckStyle: Java代码格式规范 +## CheckStyle: Java 代码格式规范 -### 为何需要CheckStyle插件? +### 为何需要 CheckStyle 插件? **CheckStyle 几乎是 Java 项目开发必备的一个插件了,它会帮助我们检查 Java 代码的格式是否有问题比如变量命名格式是否有问题、某一行代码的长度是否过长等等。** @@ -98,27 +85,27 @@ Codota 这个插件用于智能代码补全,它基于数百万Java程序,能 如果你看过我写的轮子的话,可以发现我为每一个项目都集成了 CheckStyle,并且设置了 **Git Commit 钩子**,保证在提交代码之前代码格式没有问题。 -> **Guide哥造的轮子**(*代码简洁,结构清晰,欢迎学习,欢迎一起完善*): +> **Guide 哥造的轮子**(_代码简洁,结构清晰,欢迎学习,欢迎一起完善_): > > 1. [guide-rpc-framework](https://github.com/Snailclimb/guide-rpc-framework) :A custom RPC framework implemented by Netty+Kyro+Zookeeper.(一款基于 Netty+Kyro+Zookeeper 实现的自定义 RPC 框架-附详细实现过程和相关教程) > 2. [jsoncat](https://github.com/Snailclimb/jsoncat) :仿 Spring Boot 但不同于 Spring Boot 的一个轻量级的 HTTP 框架 > -> **Git 钩子**: Git 能在特定的重要动作比如commit、push发生时触发自定义脚本。 钩子都被存储在 Git 目录下的 `hooks` 子目录中。 也即绝大部分项目中的 `.git/hooks` 。 +> **Git 钩子**: Git 能在特定的重要动作比如 commit、push 发生时触发自定义脚本。 钩子都被存储在 Git 目录下的 `hooks` 子目录中。 也即绝大部分项目中的 `.git/hooks` 。 -### 如何在Maven/Gradle项目中集成 Checksytle? +### 如何在 Maven/Gradle 项目中集成 Checksytle? 一般情况下,我们都是将其集成在项目中,并设置相应的 Git 钩子。网上有相应的介绍文章,这里就不多提了。 如果你觉得网上的文章不直观的话,可以参考我上面提到了两个轮子: -1. [guide-rpc-framework](https://github.com/Snailclimb/guide-rpc-framework) :Maven项目集成 Checksytle。 -2. [jsoncat](https://github.com/Snailclimb/jsoncat) :Gradle项目集成 Checksytle。 +1. [guide-rpc-framework](https://github.com/Snailclimb/guide-rpc-framework) :Maven 项目集成 Checksytle。 +2. [jsoncat](https://github.com/Snailclimb/jsoncat) :Gradle 项目集成 Checksytle。 -如果你在项目中集成了 Checksytle 的话,每次检测会生成一个 HTML格式的文件告诉你哪里的代码格式不对,这样看着非常不直观。通过 Checksytle插件的话可以非常直观的将项目中存在格式问题的地方显示出来。 +如果你在项目中集成了 Checksytle 的话,每次检测会生成一个 HTML 格式的文件告诉你哪里的代码格式不对,这样看着非常不直观。通过 Checksytle 插件的话可以非常直观的将项目中存在格式问题的地方显示出来。 ![](https://cdn.jsdelivr.net/gh/javaguide-tech/blog-images/IDEA%E6%8F%92%E4%BB%B6/image-20201013135044410.png) -如果你只是自己在本地使用,并不想在项目中集成 Checksytle 的话也可以,只需要下载一个 Checksytle插件就足够了。 +如果你只是自己在本地使用,并不想在项目中集成 Checksytle 的话也可以,只需要下载一个 Checksytle 插件就足够了。 ### 如何安装? diff --git a/docs/idea-tutorial/idea-plugins/jclasslib.md b/docs/idea-tutorial/idea-plugins/jclasslib.md index c5f29d2b..6d23f025 100644 --- a/docs/idea-tutorial/idea-plugins/jclasslib.md +++ b/docs/idea-tutorial/idea-plugins/jclasslib.md @@ -9,7 +9,7 @@ tag: 由于后面要分享的一篇文章中用到了这篇文章要推荐的一个插件,所以这里分享一下。非常实用!你会爱上它的! -![](https://cdn.jsdelivr.net/gh/javaguide-tech/blog-images/%E8%AE%A1%E7%AE%97%E6%9C%BA%E4%B8%93%E4%B8%9A%E5%AD%A6%E4%B9%A0%E6%8C%87%E5%8D%97/image-20201013084919965.png) +![](./pictures/jclasslib/image-20201013084919965.png) **开始推荐 IDEA 字节码查看神器之前,先来回顾一下 Java 字节码是啥。** @@ -55,11 +55,11 @@ public class Main { > 需要注意的是:**查看某个类对应的字节码文件之前确保它已经被编译过。** -![使用IDEA自带功能查看Java字节码](https://cdn.jsdelivr.net/gh/javaguide-tech/blog-images/IDEA%E6%8F%92%E4%BB%B6/image-20201012143530226.png) +![使用IDEA自带功能查看Java字节码](./pictures/jclasslib/image-20201012143530226.png) 稍等几秒钟之后,你就可以直观到看到对应的类的字节码内容了。 -![](https://cdn.jsdelivr.net/gh/javaguide-tech/blog-images/2020-10/image-20201012145127465.png) +![](./pictures/jclasslib/image-20201012145127465.png) 从字节码中可以看出,我圈出来的位置发生了 **拆箱操作** 。 @@ -82,12 +82,12 @@ System.out.println(flag ? 0 : i); **使用 `jclasslib` 不光可以直观地查看某个类对应的字节码文件,还可以查看类的基本信息、常量池、接口、属性、函数等信息。** -![](https://cdn.jsdelivr.net/gh/javaguide-tech/blog-images/2020-10/image-20201012145646086.png) +![](./pictures/jclasslib/image-20201012145646086.png) 我们直接在 IDEA 的插件市场即可找到这个插件。我这里已经安装好了。 -![](https://cdn.jsdelivr.net/gh/javaguide-tech/blog-images/2020-10-12/image-20201012145900911.png) +![](./pictures/jclasslib/image-20201012145900911.png) 安装完成之后,重启 IDEA。点击`View -> Show Bytecode With jclasslib` 即可通过`jclasslib` 查看某个类对应的字节码文件。 -![使用IDEA插件jclasslib查看类的字节码](https://cdn.jsdelivr.net/gh/javaguide-tech/blog-images/%E8%AE%A1%E7%AE%97%E6%9C%BA%E4%B8%93%E4%B8%9A%E5%AD%A6%E4%B9%A0%E6%8C%87%E5%8D%97/image-20201012150252106.png) \ No newline at end of file +![使用IDEA插件jclasslib查看类的字节码](./pictures/jclasslib/image-20201012150252106.png) \ No newline at end of file diff --git a/docs/idea-tutorial/idea-plugins/pictures/Codota1.gif b/docs/idea-tutorial/idea-plugins/pictures/Codota1.gif deleted file mode 100644 index 7b2947fe..00000000 Binary files a/docs/idea-tutorial/idea-plugins/pictures/Codota1.gif and /dev/null differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/Codota2.png b/docs/idea-tutorial/idea-plugins/pictures/Codota2.png index 637aba2b..f72ac9ca 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/Codota2.png and b/docs/idea-tutorial/idea-plugins/pictures/Codota2.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/Codota3.png b/docs/idea-tutorial/idea-plugins/pictures/Codota3.png index ca7c0ff3..9bd00e40 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/Codota3.png and b/docs/idea-tutorial/idea-plugins/pictures/Codota3.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/Codota4.gif b/docs/idea-tutorial/idea-plugins/pictures/Codota4.gif deleted file mode 100644 index 406228e0..00000000 Binary files a/docs/idea-tutorial/idea-plugins/pictures/Codota4.gif and /dev/null differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/GsonFormat1.png b/docs/idea-tutorial/idea-plugins/pictures/GsonFormat1.png deleted file mode 100644 index 9d61515e..00000000 Binary files a/docs/idea-tutorial/idea-plugins/pictures/GsonFormat1.png and /dev/null differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/GsonFormat2.gif b/docs/idea-tutorial/idea-plugins/pictures/GsonFormat2.gif deleted file mode 100644 index e323fbca..00000000 Binary files a/docs/idea-tutorial/idea-plugins/pictures/GsonFormat2.gif and /dev/null differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/IDE-Features-Trainer1.png b/docs/idea-tutorial/idea-plugins/pictures/IDE-Features-Trainer1.png index f42e72d1..c1a151e0 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/IDE-Features-Trainer1.png and b/docs/idea-tutorial/idea-plugins/pictures/IDE-Features-Trainer1.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/IDE-Features-Trainer2.png b/docs/idea-tutorial/idea-plugins/pictures/IDE-Features-Trainer2.png index 24f87365..10d16ef1 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/IDE-Features-Trainer2.png and b/docs/idea-tutorial/idea-plugins/pictures/IDE-Features-Trainer2.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/JavaStreamDebugger.gif b/docs/idea-tutorial/idea-plugins/pictures/JavaStreamDebugger.gif deleted file mode 100644 index 58c028ca..00000000 Binary files a/docs/idea-tutorial/idea-plugins/pictures/JavaStreamDebugger.gif and /dev/null differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/Presentation-Assistant.gif b/docs/idea-tutorial/idea-plugins/pictures/Presentation-Assistant.gif deleted file mode 100644 index 2f260426..00000000 Binary files a/docs/idea-tutorial/idea-plugins/pictures/Presentation-Assistant.gif and /dev/null differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/Presentation-Assistant.png b/docs/idea-tutorial/idea-plugins/pictures/Presentation-Assistant.png new file mode 100644 index 00000000..d5ff499d Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/Presentation-Assistant.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit1.png b/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit1.png index ac4afe1a..797eca7e 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit1.png and b/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit1.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit2.png b/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit2.png index 92185d8d..0721f9d6 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit2.png and b/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit2.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit3.png b/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit3.png index 561afcb4..d621ebde 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit3.png and b/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit3.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit4.png b/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit4.png index 7b7fd8fb..ee4998e8 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit4.png and b/docs/idea-tutorial/idea-plugins/pictures/RestfulToolkit4.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/RoboPOJOGenerator1.png b/docs/idea-tutorial/idea-plugins/pictures/RoboPOJOGenerator1.png index f9580aa5..b0ebd971 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/RoboPOJOGenerator1.png and b/docs/idea-tutorial/idea-plugins/pictures/RoboPOJOGenerator1.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/RoboPOJOGenerator2.png b/docs/idea-tutorial/idea-plugins/pictures/RoboPOJOGenerator2.png index 8599befb..97f43498 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/RoboPOJOGenerator2.png and b/docs/idea-tutorial/idea-plugins/pictures/RoboPOJOGenerator2.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/Statistic1.png b/docs/idea-tutorial/idea-plugins/pictures/Statistic1.png index 6df408c9..25cbdcde 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/Statistic1.png and b/docs/idea-tutorial/idea-plugins/pictures/Statistic1.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/Statistic2.png b/docs/idea-tutorial/idea-plugins/pictures/Statistic2.png index 8a4b9f5b..6e831b73 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/Statistic2.png and b/docs/idea-tutorial/idea-plugins/pictures/Statistic2.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/camel-case/camel-case1.png b/docs/idea-tutorial/idea-plugins/pictures/camel-case/camel-case1.png index f63d1d15..f21ccb84 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/camel-case/camel-case1.png and b/docs/idea-tutorial/idea-plugins/pictures/camel-case/camel-case1.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/camel-case/camel-case3.png b/docs/idea-tutorial/idea-plugins/pictures/camel-case/camel-case3.png index b52a3b62..00798b72 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/camel-case/camel-case3.png and b/docs/idea-tutorial/idea-plugins/pictures/camel-case/camel-case3.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/check-style.png b/docs/idea-tutorial/idea-plugins/pictures/check-style.png index 2f2be00a..20c76dfa 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/check-style.png and b/docs/idea-tutorial/idea-plugins/pictures/check-style.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/code-glance.png b/docs/idea-tutorial/idea-plugins/pictures/code-glance.png index b520ac39..943516eb 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/code-glance.png and b/docs/idea-tutorial/idea-plugins/pictures/code-glance.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template1.png b/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template1.png index 401cc5f3..b20268c8 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template1.png and b/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template1.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template2.png b/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template2.png index ec288428..efe9cf5f 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template2.png and b/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template2.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template3.png b/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template3.png index 39a74b7e..a682c52c 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template3.png and b/docs/idea-tutorial/idea-plugins/pictures/git-commit-template/Git-Commit-Template3.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/grep-console/grep-console3.png b/docs/idea-tutorial/idea-plugins/pictures/grep-console/grep-console3.png index 0fb9f766..be785a70 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/grep-console/grep-console3.png and b/docs/idea-tutorial/idea-plugins/pictures/grep-console/grep-console3.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format1.png b/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format1.png new file mode 100644 index 00000000..77e0f5f9 Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format1.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format2.png b/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format2.png new file mode 100644 index 00000000..dedce619 Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format2.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format3.png b/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format3.png new file mode 100644 index 00000000..0a6f3a56 Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/gson-format/gson-format3.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012143530226.png b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012143530226.png new file mode 100644 index 00000000..d4523913 Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012143530226.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145127465.png b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145127465.png new file mode 100644 index 00000000..820c18ee Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145127465.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145646086.png b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145646086.png new file mode 100644 index 00000000..7a772071 Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145646086.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145900911.png b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145900911.png new file mode 100644 index 00000000..ee0b2efb Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012145900911.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012150252106.png b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012150252106.png new file mode 100644 index 00000000..730a5f84 Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201012150252106.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201013084919965.png b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201013084919965.png new file mode 100644 index 00000000..48cec856 Binary files /dev/null and b/docs/idea-tutorial/idea-plugins/pictures/jclasslib/image-20201013084919965.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/maver-helper.png b/docs/idea-tutorial/idea-plugins/pictures/maver-helper.png index b05a81be..5db251c1 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/maver-helper.png and b/docs/idea-tutorial/idea-plugins/pictures/maver-helper.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines1.png b/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines1.png index d3006591..bbee7253 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines1.png and b/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines1.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines2.png b/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines2.png index 16f5606e..0ef7887a 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines2.png and b/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines2.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines3.png b/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines3.png index 16afb76e..6f2fdcf8 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines3.png and b/docs/idea-tutorial/idea-plugins/pictures/p3c/Alibaba-Java-Code-Guidelines3.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/p3c/阿里巴巴开发手册-线程池创建.png b/docs/idea-tutorial/idea-plugins/pictures/p3c/阿里巴巴开发手册-线程池创建.png index 0f42e752..55005447 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/p3c/阿里巴巴开发手册-线程池创建.png and b/docs/idea-tutorial/idea-plugins/pictures/p3c/阿里巴巴开发手册-线程池创建.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/rainbow-brackets.png b/docs/idea-tutorial/idea-plugins/pictures/rainbow-brackets.png index 442f418a..c638a738 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/rainbow-brackets.png and b/docs/idea-tutorial/idea-plugins/pictures/rainbow-brackets.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/save-actions/save-actions.png b/docs/idea-tutorial/idea-plugins/pictures/save-actions/save-actions.png index 4253f757..7a184a97 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/save-actions/save-actions.png and b/docs/idea-tutorial/idea-plugins/pictures/save-actions/save-actions.png differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/save-actions/save-actions2.gif b/docs/idea-tutorial/idea-plugins/pictures/save-actions/save-actions2.gif index 755a2d5f..826a0d9c 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/save-actions/save-actions2.gif and b/docs/idea-tutorial/idea-plugins/pictures/save-actions/save-actions2.gif differ diff --git a/docs/idea-tutorial/idea-plugins/pictures/translation/translation1.jpg b/docs/idea-tutorial/idea-plugins/pictures/translation/translation1.jpg index 45b2dc5b..9b38ecf7 100644 Binary files a/docs/idea-tutorial/idea-plugins/pictures/translation/translation1.jpg and b/docs/idea-tutorial/idea-plugins/pictures/translation/translation1.jpg differ diff --git a/docs/idea-tutorial/idea-plugins/shortcut-key.md b/docs/idea-tutorial/idea-plugins/shortcut-key.md index e8ad1e70..09008d66 100644 --- a/docs/idea-tutorial/idea-plugins/shortcut-key.md +++ b/docs/idea-tutorial/idea-plugins/shortcut-key.md @@ -47,7 +47,7 @@ tag: 举个例子。我使用快捷键 `command+9`打开 Version Control ,使用了这个插件之后的效果如下图所示。 -![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/idea/Presentation-Assistant.gif) +![](./pictures/Presentation-Assistant.png) 从上图可以很清晰地看到,IDEA 的底部中间的位置将我刚刚所使用的快捷键给展示了出来。 diff --git a/docs/idea-tutorial/readme.md b/docs/idea-tutorial/readme.md index 9b59e793..a954a7b7 100644 --- a/docs/idea-tutorial/readme.md +++ b/docs/idea-tutorial/readme.md @@ -5,83 +5,13 @@ category: IDEA指南 # IntelliJ IDEA 使用指南 | 必备插件推荐 | 插件开发入门 | 重构小技巧 | 源码阅读技巧 -![](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/2a2423cd-68bc-4c39-ae8f-1ba9915c5404.png) - -在这里,我会分享一下自己使用 IDEA 的一些经验,希望对大家有帮助(欢迎 star)! +**项目地址** : - Github 地址:[https://github.com/CodingDocs/awesome-idea-tutorial](https://github.com/CodingDocs/awesome-idea-tutorial) -- 码云地址:[https://gitee.com/SnailClimb/awesome-idea-tutorial](https://gitee.com/SnailClimb/awesome-idea-tutorial ) (Github 无法访问或者访问速度比较慢的小伙伴可以看码云上的对应内容) +- Gitee 地址:[https://gitee.com/SnailClimb/awesome-idea-tutorial](https://gitee.com/SnailClimb/awesome-idea-tutorial ) (Github 无法访问或者访问速度比较慢的小伙伴可以看码云上的对应内容) -大学的时候,我一直在用 Eclipse ,说实话用习惯了,占内存也比较小,最主要的是还免费使用。我当时一直没有换 IntelliJ IDEA(后面会简称为 IDEA) 的很大一部分原因是切换到 IDEA 需要很长时间去适应,有点跳出舒适区的感觉。 +**常见问题** : -不过,说实话,我现在用 IDEA 这么久了,还是感觉很香的!俗话说:**工欲善其事,必先利其器 ,就我个人而言 IDEA 是最适合 Java 开发者的 IDE 。** 如果你没有用过的 IDEA 就随便评判两者的话,我建议你不妨挑出自己的舒适区,尝试着去使用一段时间。**如果你觉得 Eclipse 更适合你的话,我觉得也没忙病,萝卜白菜各有所爱,我们也要尊重别人的想法 💡。** +- [选择IDEA还是Eclipse? - JavaGuide的回答 - 知乎](https://www.zhihu.com/question/305591091/answer/2259316801) +- [IntelliJ IDEA 中有什么让你相见恨晚的技巧? - JavaGuide的回答 - 知乎](https://www.zhihu.com/question/300830746/answer/2255262082) -IDEA 是 JetBrains 在 2001 年发布的,主要用来支持 Java 编程,不过也支持 Kotlin(由 JetBrains 开发),Groovy,Clojure,Scala 等编程语言。 - -JetBrains 真的是很厉害的一家公司,这家公司推出的很多 IDE 基本都是工程师编程首选比如 PyCharm、WebStorm 等等。这家公司做出来的东西为什么好?我觉得主要就一个词总结:**智能** ( IntelliJ->intelligent) - -![Intelligent Agents Lab](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/cover.png) - -下面 Guide 会简单对比一下它们,方便大家更好地去了解这个 IDE。 - -### 易用程度 - -#### IDEA 提供了更多人性化的功能 - -个人感觉 IDEA 更加易用,因为 IDEA 内置了太多人性的话的功能比如对 Git 功能的支持、代码检查等等。 - -如下图示,这个是 IDEA 自带的版本控制功能,非常好用,清晰地展示了提交记录,便于查阅别人的提交以及项目组进行 Code Review。 - -![版本控制](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/0538df6c-4043-4894-8b75-9bee97fec64a.png) - -#### IDEA 智能上下文提示 - -另外,**IDEA 比 Eclipse 更好的一点是它的智能代码提示,这个确实好用,而且还是根据你当前上下文来提示提示的(基于快速索引技术)。** - -![](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/8173c155-2b90-41c0-9f2d-76270262f06d.png) - -#### 使用 IDEA 更加智能的进行重构 - -IDEA 对重构的支持更加友好以及安全,你可以更加方便地去进行重构比如使用快捷键提取方法、抽取变量等等。 - -下图对应地地址在这里:[https://www.jetbrains.com/help/idea/refactoring-source-code.html](https://www.jetbrains.com/help/idea/refactoring-source-code.html) 。 - -![](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/bf928840-043e-4607-a0fe-f57133458fa0.png) - -### 是否免费 - -IDEA 社区版和 Eclipse IDE 均可免费下载和使用,不过 IDEA 还提供了一个功能更多地称为 Ultimate Edition(最终版本)的版本,不过作为 Java 初学者来说 IntelliJ IDEA 社区版就完全够用了。 - -IDEA 的付费商业版本和免费版本的主要区别如下图所示,可以看出商业版的 IDEA 提供了更多功能的支持比如帮你找到你的项目中找到重复的代码块、提供数据库管理工具等等。 - -![](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/81e432ec-79d0-465c-811f-7bf706eab6b7.png) - -### 系统占用和内存管理 - -不得不承认, IDEA 的系统占用更大,平稳运行至少需要 4g 以上的闲置内存。而 Eclipse 只需要 1g 的内存就组足够平稳运行了(项目过大的情况可能需要更多地运行内存支持)。 - -另外,内存管理方面的话,Eclipse 做的也更好,之前我的电脑是 8 g 内存,不过,它足以流畅运行 Eclipse 。我现在的电脑是 16 g 内存,某些时候运行 IDEA 甚至会比较卡顿。 - -**如果你的电脑真的没办法支持 IDEA 运行的话,我的建议是:“你要换电脑了”。** - -### 插件 - -相比于 Eclipse 来说,IDEA 里面有太多太多宝藏插件了,真的非常棒 👍! - -> 最近我也在整理一些使用 IDEA 开发必备的插件,可能只需要 30s 就能收走你们的再看。下一篇文章我就会分享到,大家期待一波吧! - -很多插件都会优先支持 IDEA,毕竟 IDEA 的使用占比率还是比较大的。 - -![](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/1156a113-4370-4e8d-bd81-f95732a8cda6.png) - -### 受欢迎程度 - -就现在来看,IDEA 的使用占比和受欢迎程度比 Eclipse 更高,并且大有远超之势。 - -下图是国外的一个网站的一个统计报告! - -![](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/b4639707-ad60-4aae-8ee8-35408939b413.png) - -最后再分享一下国外一个网站关于 “ Java 编程最好的 IDE 是哪一个?”的数据,可以看出 IDEA 还是略胜一筹的。 - -![](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2020-8/dfa0db1b-66c9-41bc-91ce-880094e6c9fc.png)