Intellij IDEA 2017 详细图文教程之概述
天天编码 , 版权所有丨本文标题:Intellij IDEA 2017 详细图文教程之概述
转载请保留页面地址:http://www.tiantianbianma.com/intellij-idea-tutorial-overview.html/
我使用Eclipse已经3年之久,我很了解它,我为它编写过简单的插件并真心地喜爱它。从我开始学习Java编程语言,使用的第一个IDE就是Eclipse,我相信绝大数人也是如何。然后,一年前,我进入了一家中型的互联网公司(外资),并被强行要求使用IDEA开发,在经过短短地三个月后,我就意识到为什么IDEA更加敏锐。如今,我已经使用IDEA一年多,我极力地推荐大家使用Intellij IDEA ,提高开发效率并获得更高的工资。
简介
Intellij IDEA 是JetBrains公司研发的又一款伟大的IDE工具,主要面向广大的Java开发人员。为什么说是“又一款伟大的IDE工具”呢?,因为该公司已经生成过 PHPStorm、PyCharm、WebStorm等优秀的开发工具。JetBrains是一家捷克的软件开发公司,该公司位于捷克的布拉格,并在俄国的圣彼得堡及美国麻州波士顿都设有办公室。根据国内的使用习惯,在本教程中,我们将使用IDEA来作为Intellij IDEA的简称。对于IDEA,JetBrans公司提出的最新口号是:Capable and Ergomomic IDE for JVM ,翻译过来就是面向JVM、功能强大且符合人体工程学的IDE。面向JVM的是指该IED支持Java、Scale等运行于JVM之上的所有语言。
IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn、github等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。目前,该软件有两个主要的版本:免费的社区版和付费的旗舰版。免费版只支持Java等少数语言和基本的IDE特性;旗舰版还支持HTML,CSS,PHP,MySQL,Python等语言和更多的工具特性。

优点
主流
虽然IDEA的主要客户是基于JVM开发的人员,但是IDEA支持的语言/平台可以认为是无限的。IDEA像其他的伟大IDE一样,采用了基于插件的架构,为了使IDEA支持一些没有原生集成的语言/平台,只需实现或者查找对应的插件并按照到IDEA中即可。关于IDEA支持的主流语言和平台,我们做一个简单的总结:
| 语言/平台 | 框架 | 构建工具 | 应用容器 | 版本工具 | 其他工具 |
|---|---|---|---|---|---|
| Java、JavaScript | Spring、Spring Boot | Maven、Gradle | Tomcat、JBoss | Git、GitHub | 终端、数据库 GUI |
快捷
虽然IDEA不是唯一一个,也不是第一个支持快捷键的IDE工具,但是IDEA提供的快捷键可以使开发人员远离鼠标,实现沉浸式开发,极大地提高程序员的开发效率。实际的编程经历表明,开发人员经常需要在编辑窗口与工具窗口之间进行切换,为了快速切换并实现沉浸式开发,IEDA提供了在编辑窗口与工具窗口之间的空间键:
| Tool Window | Shortcut | Tool Window | Shortcut |
|---|---|---|---|
| Project | Alt+1 | Version Control | Alt+9 |
| Run | Alt+4 | Debug | Alt+5 |
| Editor | Escape | Terminal | Alt+F12 |
当然,为了加速和方便开发人员的编码速度,IDEA提供了非常多的编辑快捷键,当活动窗口是Editor窗口时,我们可以使用如下的快捷键来加速编码:
| Action | Shortcut | Action | Shortcut |
|---|---|---|---|
| 移动当前行的代码 | Ctrl+Shift+Up/Down | 复制当前行的代码 | Ctrl+D |
| 删除当前行的代码 | Ctrl+Y | 添加/移除当前行的代码注释 | Ctrl+/ |
作为简介,我们在此处只给出部分的快捷键,本教程的后续部分会提供完整的快捷键。
搜索
在实际的项目开发工程中,开发成员进行需要进行搜索特定的代码、文件、资源等。为此,IDEA提供了强大地功能支持,可以实现快速、准确和便利的检索。实际上,Intellij IDEA 引入了索引的概念,通过这个索引机制,开发人员可以快速地对整个项目进行准确地全文检索,这种检索的速度对比与其他的IDE,比如Eclipse等,是非常快速的。当然,项目的索引需要一个建立的过程,在IDEA首次创建或者导入一个项目时,都需要扫描项目的所有文件并建立其该项目的索引结构。所以,IntelliJ IDEA 在首次启动某个项目时,会需要一段比较长的初始化时间,具体表现就是IDEA在创建项目初期会卡住一小段时间。但是,个人认为这个创建索引过程是值得的,在后期的整个项目开发过程中很快就可以获得加倍返还。
高效
为了提升开发人员的效率,Intellij IDEA 除了提供了快速的搜索功能之外,还提供了各种各样高效的导航功能。实际的编程过程中,我们经常需要查看某个类的父类、子类、实现接口、测试类、定义语句、引用位置等,对于源文件,我们可能需要查询其包路径、目录层次结构等。所有的这些查找需要,不经可以通过搜索功能实现,利用IDEA自带的高效导航机制更加方便。
缺点
正如你所预料的那样,Intellij IDEA 在具备这么多强大功能和特性的同时,不可能做到非常轻量。IDEA 是一个比较消耗内存的工具,但是,实际性能并不会比Eclipse差太多。对于利用IDEA作为前端开发工具而言,建议电脑具有4G以上的内存;对于把IDEA作为后端开发工具而言,建议电脑具有8G以上的内存。如果很不幸,你所在公司配备的开发机的性能很低,个人建议你考虑换一家公司。

总结
本文简单地描述了Intellij IDEA工具的一些特点,而没有很深入地去比较IDEA与Eclipse的优缺点,是希望读者大胆尝试和有自己的判断。个人一点不成熟的小建议:如果你是一个正经的Java开发者,你希望利用更快更方便的工具帮你集中注意于解决问题而不是让你分心,推荐你学习本教程,熟练掌握 IDEA。这样就可以提高开发效率,早日升职加薪,当上总 … 。
Intellij IDEA 2017 详细图文教程之概述的更多相关文章
- IntelliJ IDEA 2017新工具
IntelliJ IDEA 2017 教程之概述 图文详解如何安装 Intellij IDEA 2017 深入剖析 IntelliJ IDEA 2017 的目录结构 图文详解如何配置 IntelliJ ...
- IntelliJ IDEA 2017 注册方法
本文使用破解方式注册. JetbrainsCrack-2.6.2.jar适用于ideaIU-2017.2.之前版本,若下载的版本较新破解文件可能无法使用,破解时一闪而退. 其中JetbrainsCra ...
- intellij idea 2017和Jprofiler 10的集成 报错问题
本来想用Jprofiler来分析一下自己写的Java项目,以提高代码执行效率和自己的编码能力.结果,官网和网上很多帖子都写了点出session->IDE integrations->选择i ...
- IntelliJ IDEA 2017.2.6 x64 配置 tomcat 启动 maven 项目
IntelliJ IDEA 2017.2.6 x64 配置 tomcat 启动 maven 项目 1.确认 IDEA 是否启用了 tomcat 插件 2.添加 tomcat 选择 tomcat 存放路 ...
- IntelliJ IDEA 2017.3.1安装步骤
https://www.jetbrains.com/idea/download/#section=windows 下载旗舰版 1.下载完成后,运行安装: 2.next: 3.选择你要安装的目录,nex ...
- Windows10 + IntelliJ IDEA 2017.3.2 + wamp2e + Yii + PHPunit 搭建测试环境
一.环境 系统: windows10 WampServer: wampserver2.2e-php5.3.13-httpd2.2.22-mysql5.5.24-32b.exe IDE: Intel ...
- Windows10 + IntelliJ IDEA 2017.3.2 + wamp2e + xdebug 调试 配置
一.环境 系统: windows10 WampServer: wampserver2.2e-php5.3.13-httpd2.2.22-mysql5.5.24-32b.exe IDE: Intel ...
- IntelliJ IDEA 2017 永久注册方法
https://blog.csdn.net/weixin_39913200/article/details/80859897 在安装的idea下面的bin目录下面有2个文件 : 一个是idea64.e ...
- Idea for Mac 过期 IntelliJ IDEA 2017 完美注册方法(附idea for Mac破解方法)
Idea 不能使用了: 开始破解: (1)首先下载 jar包: https://download.csdn.net/download/engerla/10573069 放到位置: /Applicati ...
随机推荐
- memcached配置
首先是安装libevent库,执行如下的命令 tar vzxf libevent-2.0.21-stable.tar.gz cd libevent-2.0.21-stable ./configure ...
- Java基础——继承
学习Java继承之前,我们想回忆一下Java面向对象需要特别注意的几个关键点. 面向对象是将复杂的事情简单化了,它通过封装的方式使得代码的重用性更高和安全性更强.平时我们要学会用面向对象的方式去思考, ...
- 浅谈卷积神经网络及matlab实现
前言,好久不见,大家有没有想我啊.哈哈.今天我们来随便说说卷积神经网络. 1卷积神经网络的优点 卷积神经网络进行图像分类是深度学习关于图像处理的一个应用,卷积神经网络的优点是能够直接与图像像素进行卷积 ...
- javascript所有的节点和方法
属性: 1.Attributes 存储节点的属性列表(只读) 2.childNodes 存储节点的子节点列表(只读) 3.dataType 返回此节点的数据类型 4.Definition 以DTD或X ...
- WPF编程-WPF体系结构
WPF简介 Windows Presentation Foundation(WPF)是微软新一代图形系统,运行在.NET Framework 3.0架构下,为用户界面.2D/3D 图形.文档和媒体提供 ...
- 马踏棋盘算法递归+回溯法实现 C语言
r为矩阵的行,c为矩阵的列 将结果输出到当前目录下的results.txt. 结果将给出:1.是否存在路径使马可以按要求走遍所有的方格: 2.解的总数: 3.程序执行的时间: #include< ...
- 使用spring mvc返回JSON,chrome可以,firefox不行的问题定位
转载http://ks.netease.com/blog?id=4024 作者:李景 场景: 前端Post请求同一个url地址,在chrome浏览器上有正常返回json,而在 ...
- javascript之ProtoBuf在websocket中的使用
因为ProtoBuf的序列化效率和大小都非常好,所以它在网络通信上面应用越来越多:而webosocket也随着web3.0应用越来越广泛,而将这两个结合在一起的也会慢慢形成一种趋势:本人是为了测试自已 ...
- 构建混合应用方式之WCF中继
使用VPN或者ER服务建立云服务和本地服务网络通道来搭建混合应用的方式,需要网络设备的配合和比较复杂的网络配置,所以不是特别的方便.如果是不希望对本地网络环境做修改,而只是服务层面的混合,那么可以使用 ...
- Spring+Mybatis配置
Spring+Mybatis配置 之前做项目的时候用到了spring+mybatis框架,一直想抽空整理一下 Mybatis: mybatis是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架 ...