登录/注册 帐户

中间件

什么是IDE?

集成开发环境(IDE)是一种用于构建应用程序的软件,可将常用的开发人员工具合并到单个图形用户界面(GUI)中.IDE通常由以下几个部分组成:

  • 源代码编辑器:一个旨在帮助开发人员轻松编写软件代码的文本编辑器,特色功能包括:视觉提示突出显示语法,特定编程语言的自动补全功能,检查正在编写的代码是否存在错误。
  • 本地构建版本自动化:这些实用工具可以在创建软件的本地构建版本时自动执行简单的可重复任务,如将计算机源代码编译成二进制代码,封装二进制代码,运行自动测试。
  • 调试器:一个用于测试其他程序的程序,它能以图形方式显示原始代码中的错误位置。

开发人员为什么要使用IDE?

有了IDE,开发人员可以快速着手为新应用编写代码,而无需在设置时手动配置和集成多个实用工具。此外,由于各个实用工具集成在了同一个工作台中,开发人员再也无需针对不同的工具分别花费数小时来学习它们的使用方法。这大大造福了开发新手,使其可以借助 IDE 快速掌握团队的标准工具和工作流程。事实上,IDE 中的大多数功能都专为节约时间而生,比如智能代码补全功能和自动代码生成功能,它们可使开发人员无需完整输入字符序列。

其他的常见IDE功能则旨在帮助开发人员梳理工作流程,高效解决相关问题.IDE可在代码编写过程中就进行解析,从而实时识别人为原因所导致的错误。实用工具全都集中显示在单个图形用户界面中,所以开发人员无需切换应用程序即可执行操作。语法突出显示功能也是大多数IDE中的常见功能,它可利用视觉提示来区分文本编辑器中的语法。部分IDE还包含类和对象浏览器,以及某些语言的类层次结构图。

即使没有IDE,也能开发应用。或者说,基本上,每个开发人员都能手动将各种实用工具与轻巧的文本编辑器(如Vim的或Emacs的)进行集成,构建自己的IDE。对于开发人员而言,突出的自定义和操控能力足以赋能增效。然而,在企业环境中,相较于其他的优势,现代化IDE带来的时间节约,环境标准化和自动化功能往往更为重要。

当前,大多数企业开发团队都会选用最适合其特定用例的预配置IDE,所以他们面临的问题已不再是要不要采用IDE,而是要选择哪种IDE。

热门IDE

IDE有很多不同的技术和业务用例,这也意味着市场上有很多专有和开源的IDE可供选择不同IDE之间最主要的区别通常包括:

  • 支持的编程语言数量:。有些IDE专用于一种编程语言,因此更适用于特定的编程范式例如,的IntelliJ主要作为一种的Java IDE而广为人知另一些IDE则可支持多种编程语言,例如Eclipse的IDE支持的Java,XML,蟒蛇等编程语言。
  • 支持的操作系统:开发人员所用的操作系统会限制可用的IDE(除非IDE基于云);另外,如果正在开发的应用面向的是使用特定操作系统(如安卓或iOS的)的最终用户,这也可能会成为限制因素。
  • 自动化功能:大多数IDE都包含3个关键功能(文本编辑器,构建版本自动化和调试器),很多IDE还支持其他功能,如重构,代码搜索,持续集成和持续部署(CI / CD)工具。
  • 对系统性能的影响:如果开发人员想要同时运行其他的内存密集型应用,IDE的内存占用率就会成为重要的考虑因素。
  • 插件和扩展:某些IDE支持自定义工作流程,满足开发人员的需求和偏好。

移动开发IDE

专为智能手机和平板电脑设计的应用已越来越普遍,几乎改变了所有的行业,导致很多公司除了要开发传统的网页版应用之外还要开发移动端应用。平台的选择,是移动端应用开发中的关键要素之一。例如,如果某个新应用要跨的iOS,安卓系统和网页上使用的,那么最好就从能够跨平台支持多个操作系统的IDE入手。

云端IDE

相较于本地开发环境,作为基于软件即服务(SaaS)的提供的IDE具有很多独特的优势。首先,与所有的SaaS产品一样,使用这类IDE时,开发人员既不需要下载软件,也不需要配置本地环境和依赖项,因此可以快速着手推进项目。这还能使各个团队成员的环境实现一定程度的标准化,从而避免常见的“为什么在我的机器上能正常工作,到了你的机器却不正常”之类的问题。此外,由于开发环境会进行集中管理,所以不会有代码驻留在各个开发人员的计算机上,从而帮助解决知识产权和安全问题。

各种进程对于本地机器所造成的影响也是各不相同的。像运行构建版本和进行套件测试之类的进程通常都属于计算密集型进程,这意味着开发人员可能无法在进程运行时继续使用工作站.SaaS IDE可以分派需要长时间运行的作业,而不会独占本地机器的计算资源。云端IDE通常还适用于各种平台,能够连接到不同的云供应商。

您下一个应用开发项目的致胜起点

红帽Codeready产品标志

红帽®CodeReady工作室是一款经认证,基于Eclipse的IDE的,用于开发,测试和部署各种网络应用,移动网络应用,交易型企业应用和微服务。只需单个工具,红帽CodeReady工作室就能为整个开发生命周期提供卓越支持。

红帽®CodeReady工作区基于开放的Eclipse车项目构建而成,可以为开发人员提供多个工作区,涵盖了编写代码,构建,测试,运行和调试应用所需的各种工具和依赖项。整个产品都会在托管于本地或云端的OpenShift集群中运行,无需在本地机器上进行安装。

进一步了解应用开发