ylbtech-开发软件-IntelliJ IDEA:百科

IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn、github等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java等少数语言

1. 特色功能返回顶部
IDEA所提倡的是智能编码,是减少程序员的工作,IDEA的特色功能有以下25点:
● 智能的选取
在很多时候我们要选取某个方法,或某个循环或想一步一步从一个变量到整个类慢慢扩充着选取,IDEA就提供这种基于语法的选择,在默认设置中Ctrl+W,可以实现选取范围的不断扩充,这种方式在重构的时候尤其显得方便。
● 丰富的导航模式
IDEA提供了丰富的导航查看模式,例如Ctrl+E显示最近打开过的文件,Ctrl+N显示你希望显示的类名查找框(该框同样有智能补充功能,当你输入字母后IDEA将显示所有候选类名)。在最基本的project视图中,你还可以选择多种的视图方式。
● 历史记录功能
不用通过版本管理服务器,单纯的IDEA就可以查看任何工程中文件的历史记录,在版本恢复时你可以很容易的将其恢复。
● JUnit的完美支持
● 对重构的优越支持
IDEA是所有IDE中最早支持重构的,其优秀的重构能力一直是其主要卖点之一。
● 编码辅助
Java规范中提倡的toString()、hashCode()、equals()以及所有的get/set方法,你可以不用进行任何的输入就可以实现代码的自动生成,从而把你从无聊的基本方法编码中解放出来。
● 灵活的排版功能
基本所有的IDE都有重排版功能,但仅有IDEA的是人性的,因为它支持排版模式的定制,你可以根据不同的项目要求采用不同的排版方式。
● XML的完美支持
xml全提示支持:所有流行框架的xml文件都支持全提示,谁用谁知道。
● 动态语法检测
任何不符合java规范、自己预定义的规范、累赘都将在页面中加亮显示。
● 代码检查
对代码进行自动分析,检测不符合规范的,存在风险的代码,并加亮显示。
● 对JSP的完全支持
不需要任何的插件,完全支持JSP。
● 智能编辑
代码输入过程中,自动补充方法或类。
● EJB支持
不需要任何插件完全支持EJB(6.0 支持EJB3.0)
● 列编辑模式
用过UtralEdit的肯定对其的列编辑模式赞赏不已,因为它减少了很多无聊的重复工作,而IDEA完全支持该模式,从而更加提高了编码效率。
● 预置模板
预置模板可以让你把经常用到的方法编辑进模板,使用时你只用输入简单的几个字母就可以完成全部代码的编写。例如使用比较高的public static void main(String[] args){}你可以在模板中预设pm为该方法,输入时你只要输入pm再按代码辅助键,IDEA将完成代码的自动输入。
● 完美的自动代码完成
智能检查类中的方法,当发现方法名只有一个时自动完成代码输入,从而减少剩下代码的编写工作。
● 版本控制完美支持
集成了目前市面上常见的所有版本控制工具插件,包括git、svn、github,让开发人员在编程的工程中直接在intellij idea里就能完成代码的提交、检出、解决冲突、查看版本控制服务器内容等等。
● 不使用代码的检查
自动检查代码中不使用的代码,并给出提示,从而使代码更高效。
● 智能代码
自动检查代码,发现与预置规范有出入的代码给出提示,若程序员同意修改自动完成修改。例如代码:String str = "Hello Intellij " + "IDEA"; IDEA将给出优化提示,若程序员同意修改IDEA将自动将代码修改为:String str = "Hello Intellij IDEA";
● 正则表达式的查找和替换功能
查找和替换支持正则表达式,从而提高效率。
● JavaDoc预览支持
支持JavaDoc的预览功能,在JavaDoc代码中Ctrl+Q显示JavaDoc的结果,从而提高doc文档的质量。
● 程序员意图支持
程序员编码时IDEA时时检测你的意图,或提供建议,或直接帮你完成代码。
 
2. 优点返回顶部
最突出的功能自然是调试(Debug),可以对Java代码,JavaScript,JQuery,Ajax等技术进行调试。
其他编辑功能抛开不看,这点远胜Eclipse。
首先查看Map类型的对象,如果实现类采用的是哈希映射,则会自动过滤空的Entry实例。 不像Eclipse,只能在默认的toString()方法中寻找你所要的key。
其次,需要动态Evaluate一个表达式的值,比如我得到了一个类的实例,但是并不知晓它的API,可以通过Code Completion点出它所支持的方法,这点Eclipse无法比拟。
最后,在多线程调试的情况下,Log on console的功能可以帮你检查多线程执行的情况。
 
3. 缺点返回顶部
前面说过了IDEA的好,最后也要来写写IDEA的不足了。
1.太过强大的自动提示会让使用者渐渐的依赖上自动提示
 
4. 版本概述返回顶部
2001年1月发布IntelliJ IDEA 1.0版本,同年七月发布2.0,接下来基本每年发布一个版本(2003除外),当然每年对各个版本都是一些升级。3.0版本之后,IDEA屡获大奖,其中又以2003年的赢得的“Jolt Productivity Award”,“JavaWorld Editors’s Choice Award”为标志,从而奠定了IDEA在IDE中的地位。
目前版本为17.2,2017年6月发布,更新版本为17.3。IDEA的宗旨:“Develop with pleasure”。
IntelliJ IDEA分为Ultimate Edition 旗舰版和Community Edition 社区版本,旗舰版可以免费试用30天,社区版本免费使用,但是功能上对比旗舰版有所缩减。
历史版本 Version:13.1
版本特性: 
  1. 支持Java 8和Java EE 7
  2. 支持Sublime Text风格的多重选择。
  3. 新增 Nashorn调试器(Nashorn是一个基于JVM的轻量级高性能的JavaScript运行环境)。
  4. 新增 后缀自动完成功能。
  5. 集成Heroku 和 OpenShift云服务。
  6. 大幅改进包含XML配置的项目的处理性能。
  7. 新增AngularJS 支持
  8. 新增spy-js 支持
  9. 新增Cucumber js 支持
  10. 新增 Bower 支持。
  11. 改进JavaScript模块的使用。
  12. 新增 Git 和Mercurial 日志。
  13. 改进Mercurial 支持。
  14. 改进 GitHub 支持
  15. 改进JavaScript 调试器。
5. 快捷键返回顶部
1.写代码时用Alt-Insert(Code|Generate…)可以创建类里面任何字段的getter与setter方法。
2.按Ctrl-N再键入类的名字可以快速地在编辑器里打开任何一个类。从显示出来的下拉列表里选择类。同样的方法你可以通过使用Ctrl-Shift-N打开工程中的非Java文件。
3.Ctrl-D复制当前行,Ctrl-Y删除当前行。
4.Ctrl-Shift-U,Ctrl+Shift+Alt+U显示类继承结构图,再按Alt-M。
5.Alt-F1 回到当前文件所在的目录结构。
6.Ctrl-Shift-V 粘贴最近复制过的一些信息。
7.Ctrl-Shift-F7 高亮显示所有该文本,按Esc高亮消失。
8.Ctrl-E 最近打开的文件。
9.Ctrl-P 方法参数提示。
10.Alt+ Up/Down 在方法间快速移动定位。
11.Ctrl+W 选中代码,连续按会有其他效果。
12.Shift + F6 选中目录结构的文件,重命名。
13.Ctrl + Alt + F12 进入当前文件所在磁盘位置。
14.Ctrl + Shift + F搜索文件。
15.Ctrl + Shift + R 搜索指定范围文件,替换文字。
16.Ctrl + Shift +W 返回上一次选择的代码块状态。
17.Ctrl + Shift + J 自动将下一行合并到当前行末尾。
16.Ctrl + Tab Switcher 导航 与 Ctrl + E 类似效果。
17.Ctrl + Shift + C 复制当前文件磁盘路径到剪贴板。
 
6. 系统要求返回顶部
Windows
  • Microsoft Windows 8/7/Vista/2003/XP (incl.64-bit)
  • 1 GB RAM minimum, 2 GB RAM recommended
  • 300 MB hard disk space + at least 1 G for caches
  • 1024×768 minimum screen resolution
  • JDK 1.6 or higher
Mac OS X
  • Mac OS X 10.5 or higher, up to 10.9 (Mavericks)
  • 1 GB RAM minimum, 2 GB RAM recommended
  • 300 MB hard disk space + at least 1 GB for caches
  • 1024×768 minimum screen resolution
  • Java 6
Linux
  • GNOME or KDE desktop
  • 1 GB RAM minimum, 2 GB RAM recommended
  • 300 MB hard disk space + at least 1 GB for caches
  • 1024×768 minimum screen resolution
  • Oracle JDK 6 or JDK 7
7. 总结返回顶部
尽管IDEA目前还有些不足,但作为一个超过10年生命力还如此强劲的IDEA,得到如此的美誉并不简单。更何况IDEA的很多实际功能的确走在时代的前列,至于其存在的问题我们不如包容点,毕竟有些问题在现在的硬件基础上根本就不能算是问题。
当然,无论如何的夸它,都只是别人的体验,若真想了解它,唯一的就是自己亲自去体验。
 
8.返回顶部
 
9.返回顶部
 
10.返回顶部
1、
2、官网
3、
 
11.返回顶部
 
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

开发软件-IntelliJ IDEA:百科的更多相关文章

  1. 开发工具IntelliJ IDEA的安装与操作

    开发工具IntelliJ IDEA的安装与操作 1.1 开发工具概述 IDEA是一个专门针对Java的集成开发工具(IDE),它可以极大地提升我们的开发效率.可以自动编译,检查错误.在公司中,使用的就 ...

  2. 软件-开发软件:Android Studio

    ylbtech-软件-开发软件:Android Studio Android Studio 是谷歌推出的一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT, ...

  3. Psp个人软件开发软件需求分析和用例分析

    Psp个人软件开发软件需求分析和用例分析 一.需求分析 1.业务需求 1.1 应用背景 开发项目进度计划总是那么不明确,延期经常出现,甚至无法给出一个相对比较明确的延迟时间.这样给市场的推广会带来很大 ...

  4. android开发软件

    android开发软件: http://developer.android.com/sdk/index.html#download

  5. Java开发工具IntelliJ IDEA单元测试和代码覆盖率图解

    原文 http://www.cnblogs.com/xiongmaopanda/p/3314660.html Java开发工具IntelliJ IDEA使用教程:单元测试和代码覆盖率 本文将展示如何使 ...

  6. ARM开发软件ADS教程

    ARM开发软件ADS教程 ADS(ARM Developer Suite)是ARM公司推出ARM集成开发环境,操作简单方便,获得广大开发人员的青睐.下面使用ADS v1.2做一个实例教程,帮助大家学会 ...

  7. 在“非软件企业”开发软件的困局 ZT

    软件产品广泛服务于各行业,其开发具有高科技.高投入.高产出.高风险的特点.在项目开发和软件应用中,只有将人员能力的发挥与科学技术的使用应用市场的认识进行最佳的融合,才能发挥软件的效益.普通企业虽涉足软 ...

  8. 10款 Mac 经典原型设计开发软件推荐

    在Mac上有大量强大的开发和设计工具,今天和大家推荐10款Mac上的经典原型设计开发工具,原型设计工具是开发者必备的一款工具,无论是网站开发还是移动APP开发,都需要在前期进行严格细致的原型设计,才能 ...

  9. Java开发软件安装及配置

    2017-6-1 1.jdk 1.8.0_131 安装JDK 选择安装目录 安装过程中会出现两次 安装提示 . 第一次是安装 jdk ,第二次是安装 jre .建议两个都安装在同一个java文件夹中的 ...

随机推荐

  1. CSS基础 布局

    1.布局的基本位置 top         距离上边的距离right       距离右边的距离bottom   距离下边的距离left         距离左边的距离 去掉布局时 html 的3mm ...

  2. Cannot determine value type from string 'xxxxxx'

    Cannot determine value type from string 'xxxxxx' 查了一下,意思就是字段和属性名没有对上. 反复查看代码,字段名和属性名一致. 最后翻阅资料得知是因为构 ...

  3. MySQL数字类型int与tinyint、float与decimal如何选择

    最近在准备给开发做一个mysql数据库开发规范方面培训,一步一步来,结合在生产环境发现的数据库方面的问题,从几个常用的数据类型说起. int.tinyint与bigint 它们都是(精确)整型数据类型 ...

  4. 深度学习之卷积神经网络CNN及tensorflow代码实例

    深度学习之卷积神经网络CNN及tensorflow代码实例 什么是卷积? 卷积的定义 从数学上讲,卷积就是一种运算,是我们学习高等数学之后,新接触的一种运算,因为涉及到积分.级数,所以看起来觉得很复杂 ...

  5. c# 类成员的可访问性

  6. mongodb文件

    https://github.com/mongodb/mongo/tree/master  或 https://www.mongodb.com/download-center?jmp=nav#comm ...

  7. P1004 方格取数[棋盘dp]

    题目来源:洛谷 题目描述 设有N×N的方格图(N≤9),我们将其中的某些方格中填入正整数,而其他的方格中则放入数字0.如下图所示(见样例): A 0 0 0 0 0 0 0 0 0 0 13 0 0 ...

  8. Nginx HTTP服务器配置模板

    https://github.com/h5bp/server-configs-nginx

  9. 获取TableViewer里面的所有TableViewerColumn

    private TableViewerColumn[] getTableViewerColumns(TableViewer tableViewer) { TableColumn[] columns = ...

  10. .net+文件夹上传

    ASP.NET上传文件用FileUpLoad就可以,但是对文件夹的操作却不能用FileUpLoad来实现. 下面这个示例便是使用ASP.NET来实现上传文件夹并对文件夹进行压缩以及解压. ASP.NE ...