从Eclipse切换到IntelliJ IDEA for Android开发的好处

时间:2011-02-10 23:59:38

标签: android eclipse intellij-idea

我一直在使用Eclipse进行Android开发,并且没有问题(我也在Linux下使用它进行Web服务和C ++开发)但是我想给IntelliJ IDEA一个机会,因为它似乎有好评如潮。现在很容易发现IDEA 10已经在社区版中启用了Android支持。

我看过IDEA,它看起来非常好,唯一不足的是缺少.xml文件编辑的UI(例如AndroidManifest.xml)和ADT 9.0提供的用户界面构建器。

有没有人可以分享IntelliJ IDEA和Android开发的经验?

编辑:谢谢大家;我坚持使用Eclipse,因为我非常了解它,它允许我做任何事情(Java相关),我喜欢免费。我不应该在口中看到礼物马!

11 个答案:

答案 0 :(得分:74)

对我来说唯一的好处是:你的编码和公式1一样快:)。真。如果您习惯于在.NET编程中使用Resharper,那么您将以与.NET相同的速度编写代码。更快。

糟糕的事情:缺少一些Eclipse工具(浏览my questions以获取详细信息)并且似乎 Eclipse的编译器 - 您可以从IntelliJ中使用 - 也更好。由于缺少某些工具,您不得不使用许多第三方工具。

底线是:如果你没有Eclipse的问题,那么坚持下去。我讨厌Eclipse的缓慢,这就是我转向IntelliJ的原因。

编辑2013年1月23日

IntelliJ已经改进很多。他们现在拥有UI可视化编辑器,与Android SDK的良好连接,此时我无法想到Eclipse拥有的任何功能和IDEA所没有的功能。更好的是,我会再次说IDEA比Eclipse有更多的功能。

编辑2014年3月11日

IntelliJ再次改进。凭借其用于XML布局的可视化UI编辑器以及自身作为Google Android Studio的基础,它仍然是最好的IDE。

Android开发人员的唯一缺陷是恕我直言:

  • 它仍然无法完全导入依赖项(库),因此您必须手动修复内容

  • 它无法完全识别其他项目(模块),有时您必须手动添加这些模块

  • 对Google Glass的支持不存在

所有这些都是指在导入Eclipse中生成的项目时,这种情况经常发生在从事多个Android项目的任何人身上。

答案 1 :(得分:40)

我用过两者,他们并没有那么不同。很多都是你习惯的。就个人而言,如果您对Eclipse没有任何问题,我不会建议切换。没有任何优势值得学习曲线。

答案 2 :(得分:20)

我切换到IDEA进行Android开发。

  • Intellisense实际上有效
  • IDEA快得多
  • 重构很顺利,“检查”抓住了很多重构有意义的地方

我想念的事情:

  • Android 3.0的新版面查看器。我总是修改布局xml,但很高兴能够切换并了解在不运行应用程序的情况下它会是什么样子。当我进行大量的布局编辑时,我会因为这个原因加载eclipse。
  • 悬停文档。在intelliJ中,你必须按ctrl + Q来获取现有方法调用的javaDoc(在编码时弹出intellisense)。

答案 3 :(得分:15)

我知道eclipse是免费的,但是来吧,我不知道人们是如何使用这些狗屎来构建软件的。我喜欢开源和下一个人一样,我只是喜欢“高质量的开源”,这可能是矛盾的。

我想完成工作而不是对抗工具,无论它有多免费。

在Eclipse上进行了2年的Android开发后,我终于放弃了。我恨它,因为:
1。 Eclipse很慢。
2。搜索和自动填充功能很差。
3。要求记忆力很大。
4。不断崩溃和悬挂。
5。关闭Eclipse的正确或错误方式可能会导致工作空间和设置崩溃。

  

Eclipse:每次我使用时提醒我为什么我通常不使用它。 -   罗曼盖伊

您可以查看一些有趣的IntelliJ IDEA功能here

enter image description here

答案 4 :(得分:8)

谷歌已经为Android开发推出了新的基于intellij的IDE(如果你不想支付intellij),你可以在这里找到更多信息http://developer.android.com/sdk/installing/studio.html

答案 5 :(得分:4)

我也对这个问题感兴趣。对我来说,随着更多插件的安装,eclipse开始变慢:CDT,aptana,pydev,ADT ....

IDEA似乎是一个轻量级和有趣的替代品。由于缺少布局xml编辑,您可以使用http://www.droiddraw.org/或其桌面版本进行编辑。阅读droiddraw教程后非常简单。

我没有足够的IDEA经验,所以无法帮助很多。希望更多人对此问题有所了解。

谢谢, 弗兰克

答案 6 :(得分:2)

我认为Eclipse具有IDE应该拥有的所有功能。 但是从我的观点来看,它以错误的方式完成所有事情(我是Visual Studio粉丝)。

在我尝试了IDEA之后,我不得不意识到它可以被定制为与VS几乎相同,所以它是一个非常好的IDE。

版本12具有适用于Android的UI编辑器。

我可以说尝试比较他们的IntelliSense(或任何你称之为),调试器(包括手表)和编辑器。日常使用更好,更智能,更快。

IDEA终极版不是免费的,但如果您想通过编程赚钱,我认为您可以使用专业工具更轻松。

我永远不会为Eclipse买单。

答案 7 :(得分:2)

作为一名新的IDEA用户,我发现IDE起初有点压倒性。 IDE包含的选项比我想象的要多,可能会带来疑问 - “你可以在屏幕上放置多少个复选框”。一旦震惊过去,我就能完成一个小项目,我就爱上了。对不起Eclipse,但你有点不稳定,会有不可预知的行为。 IDEA坚如磐石。

作为一名程序员,我想要坚如磐石的工具,有时候“你得到你付出的代价”这句话是有效的。

答案 8 :(得分:2)

谷歌的Android Studio是建立在IDEA之上的,假设当它达到1.0时它将成为“官方”开发者工具,通过学习IDEA可能值得加快速度。 它还内置了一个“黑暗”主题,因此您不必乱用Eclipse插件。

答案 9 :(得分:1)

快速比较

在eclipse 4.3.2和intellij 13.0.2之间:

我将引用intellij idea作为下面的缩写(例如I12表示intellij idea 12)

两者都很好。 Pro Intellij是:

  • 更快的编译器模式:(在I12中引入)与eclipse完全一样,现在Intellij在后台连续编译所有内容,并向您显示不使用红色曲折编译的文件。正如Eclipse,但更重,更敏感。

  • Android UI编辑器:(在I11中引入)甚至比eclipse ADT插件更好:它显示了更多属性如android:layout_span,即。 Eclipse UI编辑器中隐藏的高级属性强制您从Layout XML编辑它们,可以从Intellij UI编辑器轻松编辑。此外,当Eclipse UI编辑器在选择多个组件然后编辑一个公共属性时挂起,这在Intellij UI编辑器中非常快速和简单。它还可以在编辑XML代码时向您显示预览,这是您在eclipse中无法做到的。

  • 最佳内容辅助:当您输入下一个限制器(空格或分号或括号或点)时,它自动完成您无需按Enter键,然后按下一个限制器,与Visual Studio Intellisense完全相同。 Intellij也将最相关的结果放在首位。 I12中引入的另一个功能是搜索匹配是否可以从中间获得而不是从开始。

  • 快速:intellij比Eclipse快得多。 Eclipse 3.8很慢,Eclipse 4.2由于一些错误而更慢,在Eclipse 4.2.1和4.2.2版本中逐渐修复。

  • 比eclipse更稳定。在Eclipse中,滚动时,一行布局属性编辑器可能会粘在屏幕上,这是一个非常糟糕的UI故障。与eclipse x86或Intellij相比,Eclipse x64也经常崩溃,可能是因为JDK x64中的错误。

  • 添加框架支持:( I13新增功能)一个添加框架支持的向导

  • 截至intellij 13,它有像eclipse adt插件那样的向导(New-> Android-> Android Activity),也许唯一的区别是intellij向导可能会强迫你使用更高的最低SDK版本,而eclipse没有。

Con Intellij:

  • Gradle:Android项目向导:( I13新增功能)当你创建一个你可以在gui wizerd中定义的app:min sdk,target sdk,icons和theme(所有这些填补了eclipse和之前的差距)是)和支持模式(优于eclipse的优势)。虽然这可能被认为是一个优势,但gradle在管理android项目时添加了很多错误,intellij在intellij 12中变得无法使用。大多数错误都需要更改配置和从Internet更新maven repo,或者导航到文件夹和从终端运行命令。

  • 不支持NDK(用于C / C ++开发的Native Development Kit)

答案 10 :(得分:0)

我使用IDEA进行专业Android开发近一年,它比Eclipse好得多,因为:

  1. IDE更快更稳定
  2. 优秀的界面设计师
  3. 其他良好的增强功能,如XML中的颜色选择器,创建资源目录和创建字符串资源。
  4. IDEA对于Android开发来说要好得多,你肯定会提高你的工作效率,Google知道这一点,这就是为什么Android Studio建立在IDEA之上