前言:经历了从eclipse到Myeclipse的时间,大学时候用Eclipse,开始工作的时候选择Myeclipse,都能体会到Java的IDE的先进和高明之处,直到最近,公司项目采git和Gradle构建,我的领导兼上司告诉我用Intelj idea这个开发工具要很好多,其实之前也听说过Intelj idea的大名,号称是最智能的IDE。我用了一段时间,发现很多惊喜之处,这才下定决心从Myeclipse转到Idea上去,本篇博客就来讲讲idea优胜于Myeclipse的几大优点:

一: idea的优胜于myeclipse的几点:
 1:流畅度和集成工具:Intelj idea完美集成了maven、gradle、git、svn等版本控制工具,而在myeclipse中这些插件的兼容性都比较差,myeclipse运行本来就占内存,运行很卡顿,再用插件用起来很卡,同一台机器测试下,idea要比myeclipse流畅很多。以下的测试数据来源于我的笔记本,window10系统,任务管理器下,Myeclipse占用内存812.5MB,而Intelj idea是520.7MB,cpu:myeclipse是12.2% idea是0.1%。其中Myeclipse版本是:2016-stable,idea是2016.3.4版本
 

2:反编译和debug:LIntelj idea自带反编译效果,这样就可以愉快的看源码了,遇到问题可以直接点进去源码看,这对于我们技术的提升大有裨益。而在myeclise中需要安装反编译插件,我使用了myeclipse有一年之久,其中安装反编译插件失败了很多次,配置麻烦。并且idea还有个逆天的功能就是断点可以跑到源码包里显示变量的值,这在myeclipse是不可能做到的.debug中可以直接显示一个对象的字段的值,而myeslipe你需要鼠标移动上去才会jar包中的源码,可以直接点进去查看源码

 
3:搜索:Intelj idea在全局搜索(ctrl+shirt+F)的时候基本都是秒到的,而myeclipse搜索需要漫长的等待。这对于加快工作效率很重要,因为搜索关键字段这个功能在代码编程中太容易用得到了。而idea在这方面更胜一筹

 
4:uml图:关于画类的继承结构图,myeclipse中继承了uml工具,可以做到手动画,而在Intelj idea中是可以直接自动完成的,只需要在类上面点击show Digram,直接画出标准的结构类图,层次结构分明,省去了我们很多时间。以下是利用idea自动构建的ArrayList的层次结构UML图:


5:提示功能:intelj idea的智能提示功能,细节做的很完善,说个小细节,它的自动补全,如果你加了分号,它是不会再给你加的。而在myeclipse中首先你得开起全部字母的匹配提示,因为它默认的只是.触发提示,然后你开启了,假如输入个String变量它非得给你加个后面string,这点很烦人,我曾想过解决方法,百度谷歌一大推,找到了教程也是很麻烦的.以下图是myeclipse的代码提示功能开启,而idea是不需要配置的

6:对于jsp、xml的支持:myeclipse对jsp支持可以用‘烂’这个词形容了,提示功能你手动得开启,经常莫名的xml自动校验,一些没有出错的代码也给你报错,首先是一大堆的校验,还很难取消搞的人很懊恼。而idea这些烦恼都是没有的,对jsp、xml的支持很棒,并且有很多非常好的快捷输入方式,举个例子:你输入ul:li*5,按下tab键就可以出来一个ul和5个li的选项卡等等

 
7:重构:一堆复杂的乱代码,通过idea很快就可以完成重构,抽取方法、变量、方法重命名,代码检测,在myeclispe也是支持重构的,不过并没有idea如此强大

8:本地历史:这是个小功能,但是在myeclispe中没有出现,你对于一个文件的修改历史,可以完整的看到,包括几点修改、修改了什么,并且可以随时恢复,这点对于误操作很重要。myeclipse中有时候编程忘记了自己修改了什么,只能通过ctrl+Z来回退,想象你退回去了,新的操作又没了,又得重新修改,很麻烦。以下图示本地历史功能的演示,其中可以看到昨天和前几天的修改,都很清楚明了

9:自动感知框架,当你的项目用了java框架的时候,idea可以“感受”出来,它会提供给你很多建议和优化的忠告

二:idea的不足之处

 
1:插件没有myeclipse丰富,这个和myeclipse的悠久的历史有很大的关系,idea毕竟诞生的时间没有myeclipse时间那么弥久,因此在插件丰富程度上要输于它的。但是大部分插件idea是有的,并且支持的的很好,比如小y前阵子接受公司的一个项目,名字叫ZKoss,听过的人很少吧。之前是用myeclipse开发啊,它有zkoss中zul视图的插件,我以为idea没有,但是当我导入的时候,它自动我提示安装插件(很人性化,必须赞一个)
 
2:目前很多项目是用myeclipse写的,而idea的项目结构又不遵循eclipse定制的那套结构,因此在转化的期间就会很不习惯
 
3:idea的学习成本要比myeclipse高,因为它有很多的新的概念,尤其在转换ide的时候会遇到很多问题,比如在myeclipse中很司空见惯的配置tomcat,在idea中就成了比较棘手的问题,我也是网上找了很多教程,才学会怎样在idea中配置tomcat.
 
总结:关于idea,我说的远不止这些,还有很多令人惊喜的功能,总体来说它是一个很智能、灵活的IDE,另外一点,我也并不是贬低myeclispe,毕竟我也用了很久,对myeclipse也有一份感情,它也有很方便之处。但是IDE在进步,编程技术在进步,我个人会选择Intelj idea。经常使用idea,对你的编程水平是大有裨益的!
 一款好的编程IDE,就像春雨一般润物细无声,悄悄渗透在你的编程的一支支细节之中,提升你在编程中的体验。

从Myeclipse到Intelj Idea的更多相关文章

  1. myeclipse学习总结一(在MyEclipse中设置生成jsp页面时默认编码为utf-8编码)

    1.每次我们在MyEclispe中创建Jsp页面,生成的Jsp页面的默认编码是"ISO-8859-1".在这种情况下,当我们在页面中编写的内容存在中文的时候,就无法进行保存.如下图 ...

  2. 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解

    工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...

  3. MyEclipse生成注册码

    今天正在使用的MyEclipse出现了使用过期,在网上发现一个可以生成注册码的程序,现在分享给各位. /** * myEclipse生成注册码 * 点击顶部:MyEclipse --> subs ...

  4. myeclipse 内存不够用报错PermGen space 和 An internal error has occurred.

    最近项目中又增加了新的模块,项目的代码又多了不少.运行的时候总是报如下错误 Exception in thread "http-apr-80-exec-6" java.lang.O ...

  5. WebLogic的安装和配置以及MyEclipse中配置WebLogic

    WebLogic 中间件: 是基础软件的一大类,属于可复用软件的范畴,顾名思义,中间件属于操作系统软件与应用软件的中间,比如:JDK,框架,weblogic. weblogic与tomcat区别 : ...

  6. MyEclipse对Maven的安装

    好记性不如烂笔头,记录一下. 操作系统:windows 7 MyEclipse2015 JDK1.7 maven的下载链接,点这里下载apache-maven-3.0.4-bin.tar.gz. 下载 ...

  7. MyEclipse 的 配置文件

    D:\soft\i\myeclipse10\MyEclipse 10\configuration.settings\org.eclipse.ui.ide.prefs MAX_RECENT_WORKSP ...

  8. myeclipse 无法启动 java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).

    把myeclipse10 按照目录完整拷贝到了另外一台电脑, 另外的目录 原安装目录 D\:\soft\i\myeclipse10 新安装目录 E\:\soft\myeclipse10 双击启动失败, ...

  9. myeclipse学习总结三(MyEclipse文件查找技巧)

    一.查找文件 使用快捷键[ctrl+shift+R]弹出弹出文件查找框,如下图所示: 二.查找包含某个字符串的文件 使用快捷键[ctrl+H]在弹出对话框中选File Search选项,然后在第一个文 ...

随机推荐

  1. windows下如何创建没有名字的.htaccess文件

    http://www.mdaima.com/jingyan/35.html WINDOWS下建立空名的.htaccess文件 ? 大家都知道,在windows环境下是不能直接建立没有名字的文件的,那我 ...

  2. CSS background-clip 属性

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. 数据库复习总结(17)-T-Sql编程

    T-SQL(SQL SERVER) 百度百科:(即 Transact-SQL,是 SQL 在 Microsoft SQL Server 上的增强版,它是用来让应用程序与 SQL Server 沟通的主 ...

  4. Hadoop问题:Incorrect configuration: namenode address dfs.namenode.rpc-address is not configured

    问题描述:Incorrect configuration: namenode address dfs.namenode.rpc-address is not configured 问题分析:core- ...

  5. linux的nvme驱动参数调优

    nvme的设备,可以调优的参数比较少,相关的代码如下: blk_sysfs.c static struct queue_sysfs_entry queue_requests_entry = { .at ...

  6. python 导入模块错误

    问题: 导入一些模块或者运行第三方软件的时候,会出现一下类似错误: ImportError: No module named future.utils 问题原因: 没有安装第三方库 future,这个 ...

  7. sqlserver2008客户端设置主键自增

    是标识改为是

  8. form表单中enctype属性作用

    上传文件时,提交的表单属性里需要加enctype="multipart/form-data",才能提交文件信息,不然会报错.那么enctype属性的作用是什么?就是设置表单传输的编 ...

  9. android软键盘的显示和隐藏

    显示: InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); imm.toggle ...

  10. [JLOI2011]基因补全

    1973: [JLOI2011]基因补全 Time Limit: 1 Sec  Memory Limit: 256 MB Description 在生物课中我们学过,碱基组成了DNA(脱氧核糖核酸), ...