当前位置:首页 > 技术知识 > 正文内容

IntelliJ IDEA VS Eclipse,谁胜谁负?

maynowei8个月前 (09-23)技术知识98

很多JAVA程序员都是资深的Eclipse用户,然而,今天我想对IntelliJ IDEA做一个更为严谨的审视。在本文中,小编将会为大家列出Eclipse中常用且与IntelliJ等同的一些操作。孰胜孰负?让我们一起来看看。

很多时候程序员在编辑一个文件,同时还需要编辑其他的文件。假如FF类是一个经常编辑的类,同时又需要对同一个包中的其他类进行编辑—通过链接编辑器的功能,可以迅速在同包的类之间进行切换。这个功能为程序员提供了什么样的便利?每当编辑了一个文件,它会立即显示其所在包浏览器视图/项目视图中的位置。如果使用展开式的包视图,它会按功能对类划分并显示,而不使用分层(dao层, service层等)的方式来展示类。

Eclipse

在工程浏览视图或者包浏览视图可以看到并使用链接编辑器(Link to Editor)的按钮。

如果不想使用该功能,依然可以使用Alt+Shift+W快捷键来查看包视图或工程视图并设置其显示位置。

IntelliJ

在工程视图或者包视图中选择设置,然后勾选根据源码自动滚动(Autoscroll From Source)功能;

如果不想使用该功能,依然可以使用快捷键Alt+F1来导航并设置显示的位置;

IntelliJ的魅力之处

IntelliJ本身就自带了众多的功能(如:GitHub的集成)。当然,在Eclipse你也可以通过选择不同版本的插件来获取到足够的功能,只是需要自己来配置这些插件。在IntelliJ中,可以使用鼠标滚轮来改变字体大小(我在浏览器中经常使用该功能)。但是这个功能需要手动激活。

  1. 打开IDE的设置(Ctrl+Shift+S或点击 文件菜单>Setting)
  2. 在编辑器页面(在搜索框中输入“Editor”),确保Change font size (Zoom) with Ctrl+MouseWheel这个选项被选中
  3. 在IDE中直接启动命令行终端
  4. 灵活易用的模板:输入p,然后使用快捷键Ctrl+J,就可以获取以下选项
    • psf – public static final
    • psfi – public static final int
    • psfs – public static final String
    • psvm – main method declaration
  5. 对JavaScript、HTML5的强力支持:商业版的IntelliJ应该包含了对 HTML5、CSS3、SASS、LESS、JavaScript、CoffeeScript、Node.js、ActionScript以及其他语言的代码辅助功能。

相比Eclipse,IntelliJ的不足之处

在Eclipse中,可以使用Ctrl+M快捷键或者双击标签来最大化当前的控制台。但是在IntelliJ中并没有类似的方式来。当然,在IntelliJ中可以使用Ctrl+Q快捷键来获取上述的功能。但当鼠标悬停代码就能看到部分Javadoc的功能在Eclipse中显得是那么的友好。

总结

在我看来,每一个IDE都很棒,IntelliJ看起来更加的现代,但有时候程序员们还是喜欢经典版的Eclipse,这可能是因为过去经常使用Eclipse。以后可能会继续受这个因素的影响。

本站文章除注明转载外,均为本站原创或翻译

相关文章

[三菱PLC] 用"C语言"玩转PLC,三菱PLC使用ST语言超详细教程

ST语言,全称为结构化文本(Structured Text),是一种高级编程语言,专为工业自动化和控制系统设计。我们学习PLC一般是用梯形图,梯形图学会后,学习SFC,但是我发现梯形图和SFC虽然简单...

机器人需求驱动导航新SOTA,成功率提升15%!浙大&vivo联手打造

CogDDN团队 投稿量子位|公众号QbitAI让机器人像人一样边看边理解,来自浙江大学和vivo人工智能实验室的研究团队带来了新进展。正如视频所展示的,机器人在复杂的室内环境中不仅能自主探索,还具备...

Flutter 之 ListView(flutter框架)

在 Flutter 中,ListView 可以沿一个方向(垂直或水平方向)来排列其所有子 Widget,常被用于需要展示一组连续视图元素的场景ListView 构造方法ListView:仅适用于列表中...

分析 Rust 程序的火焰图(rust火吗)

分析 Rust 程序的火焰图(Flame Graph)是定位性能瓶颈的核心手段,其核心是通过可视化的函数调用栈和时间分布,找到 CPU 耗时、内存分配、锁竞争等热点。以下是详细的分析方法和步骤,结合...

Go 语言中的 RWMutex 源码解析、使用场景及应用分析

Go 语言标准库的 sync 包提供了一些非常重要的并发原语来帮助程序开发者处理并发任务。本文将详细解析 sync 包中的 RWMutex,即读写互斥锁(Reader/Writer Mutex),并结...

C++11 同步机制:互斥锁和条件变量

前段时间,我研究了 ROS2(Jazzy)机器人开发系统,并将官网中比较重要的教程和概念,按照自己的学习顺序翻译成了中文,进行了整理和记录。到目前为止,已经整理了20多篇文章。如果你想回顾之前的内容,...