从Myeclipse到Intelj Idea

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

2:反编译和debug:LIntelj idea自带反编译效果,这样就可以愉快的看源码了,遇到问题可以直接点进去源码看,这对于我们技术的提升大有裨益。而在myeclise中需要安装反编译插件,我使用了myeclipse有一年之久,其中安装反编译插件失败了很多次,配置麻烦。并且idea还有个逆天的功能就是断点可以跑到源码包里显示变量的值,这在myeclipse是不可能做到的.debug中可以直接显示一个对象的字段的值,而myeslipe你需要鼠标移动上去才会jar包中的源码,可以直接点进去查看源码
从Myeclipse到Intelj Idea
 
3:搜索:Intelj idea在全局搜索(ctrl+shirt+F)的时候基本都是秒到的,而myeclipse搜索需要漫长的等待。这对于加快工作效率很重要,因为搜索关键字段这个功能在代码编程中太容易用得到了。而idea在这方面更胜一筹
从Myeclipse到Intelj Idea
 
4:uml图:关于画类的继承结构图,myeclipse中继承了uml工具,可以做到手动画,而在Intelj idea中是可以直接自动完成的,只需要在类上面点击show Digram,直接画出标准的结构类图,层次结构分明,省去了我们很多时间。以下是利用idea自动构建的ArrayList的层次结构UML图:
从Myeclipse到Intelj Idea

5:提示功能:intelj idea的智能提示功能,细节做的很完善,说个小细节,它的自动补全,如果你加了分号,它是不会再给你加的。而在myeclipse中首先你得开起全部字母的匹配提示,因为它默认的只是.触发提示,然后你开启了,假如输入个String变量它非得给你加个后面string,这点很烦人,我曾想过解决方法,百度谷歌一大推,找到了教程也是很麻烦的.以下图是myeclipse的代码提示功能开启,而idea是不需要配置的
从Myeclipse到Intelj 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来回退,想象你退回去了,新的操作又没了,又得重新修改,很麻烦。以下图示本地历史功能的演示,其中可以看到昨天和前几天的修改,都很清楚明了
从Myeclipse到Intelj Idea

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,就像春雨一般润物细无声,悄悄渗透在你的编程的一支支细节之中,提升你在编程中的体验。
上一篇:R语言笔记2--循环、R脚本


下一篇:PHP获取当前服务器信息的基本语句