IDE的详细介绍-程序员宅基地

技术标签: ide  

IDE(集成开发环境)

就是电脑上编程时用的应用,比如:visual studio(如图), eclipse等。IDE一般包括:代码编辑器、编译器、调试器和图形用户界面等工具。IDE是集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件。
在这里插入图片描述

各个工具在IDE中的作用

名称 作用
编辑器 用来编写代码,并且给代码着色(语法突显),以方便阅读
编译器 将代码翻译成CPU可以读懂的机器语言
代码提示器 输入部分代码,即可提示全部代码,加速代码的编写过程
调试器 观察程序的每一个运行步骤,发现程序的逻辑错误
项目管理工具 对程序所有资源进行管理,包括源文件、图片、第三方库等
用户界面 各种按钮、面板、菜单、窗口等控件整齐排布,操作更方便
PS:各部分详细功能读者可以自行了解。

IDE的优点

1、节省时间和精力。IDE的目的就是要让开发更加快捷方便,通过提供工具和各种性能来帮助开发者组织资源,减少失误,提供捷径。

2、建立统一标准。当一组程序员使用同一个开发环境时,就建立了统一的工作标准,当IDE提供预设的模板,或者不同团队分享代码库时,这一效果就更加明显了。

3、管理开发工作。首先,IDE提供文档工具,可以自动输入开发者评论,或者迫使开发者在不同区域编写评论。其次,IDE可以展示资源,更便于发现应用所处位置,无需在文件系统里面艰难的搜索。

IDE的缺点

占用空间较大,有时候人们更愿意使用像vs code这种轻量级代码编辑器,而不是全特性的IDE。

使用IDE前的预备知识

1、源文件

在开发软件的过程中,我们需要将编写好的代码(Code)保存到一个文件中,这样代码才不会丢失,才能够被编译器找到,才能最终变成可执行文件。这种用来保存代码的文件就叫做源文件(Source File)。

每种编程语言的源文件都有特定的后缀,以方便被编译器识别,被程序员理解。源文件后缀大都根据编程语言本身的名字来命名:

C语言源文件的后缀是.c;
C++语言(C Plus Plus)源文件的后缀是.cpp;

2、工程/项目

一个真正的程序(也可以说软件)往往包含多项功能,每一项功能都需要几十行甚至几千行、几万行的代码来实现,如果我们将这些代码都放到一个源文件中,那将会让人崩溃,不但源文件打开速度极慢,代码的编写和维护也将变得非常困难。

在实际开发中,程序员都是将这些代码分门别类地放到多个源文件中。除了这些成千上万行的代码,一个程序往往还要包含图片、视频、音频、控件、库(也可以说框架)等其它资源,它们也都是一个一个的文件。

为了有效地管理这些种类繁杂、数目众多的文件,我们有理由把它们都放到一个目录(文件夹)下,并且这个目录下只存放与当前程序有关的资源。实际上 IDE 也是这么做的,它会为每一个程序都创建一个专门的目录,将用到的所有文件都集中到这个目录下,并对它们进行便捷的管理,比如重命名、删除文件、编辑文件等。

这个为当前程序配备的专用文件夹,在 IDE 中也有一个专门的称呼,叫做“Project”,翻译过来就是“工程”或者“项目”。

3、工程类型/项目类型

“程序”是一个比较宽泛的称呼,它可以细分为很多种类,例如:

1.有的程序不带界面,完全是“黑屏”的,只能输入一些字符或者命令,称为控制台程序(Console Application),例如 Windows 下的 cmd.exe,Linux 或 Mac OS 下的终端(Terminal)。
2.有的程序带界面,看起来很漂亮,能够使用鼠标点击,称为GUI程序(Graphical User Interface Program),例如 QQ、迅雷、Chrome 等。
3.有的程序不单独出现,而是作为其它程序的一个组成部分,普通用户很难接触到它们,例如静态库、动态库等。

不同的程序对应不同的工程类型(项目类型),使用 IDE 时必须选择正确的工程类型才能创建出我们想要的程序。换句话说,IDE 包含了多种工程类型,不同的工程类型会创建出不同的程序。

4、链接

代码并不是编译后就生成了可执行文件,还有一个链接的步骤。当有多个源文件时,链接生成中间文件。当只有一个源文件时,链接也会起作用:与系统库组合。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Zhang_Oneday/article/details/108963027

智能推荐

STM32芯片的ADC引脚的识别与选择_adc12_in4-程序员宅基地

文章浏览阅读1w次,点赞4次,收藏26次。1、以STM32F103ZET6芯片为例,ADC引脚分布为:2、可以看出,一共有IN0--IN15,16个ADC通道,通道IN0--IN9与芯片的其他功能复用了引脚。通道IN10--IN15是ADC独立的引脚。 且ADC1和ADC2有IN0--IN15 16个ADC通道。 而ADC3只有IN0、IN1、IN2、IN3、IN10、IN11、IN12、IN13通道。 ADC123_IN0表示ADC1、ADC2、ADC3都有通道IN0。 ADC12_IN4表示只有A..._adc12_in4

webpack test-程序员宅基地

文章浏览阅读1.3k次。webpack test_webpack test

java批量修改文件名后缀_java修改文件后缀名-程序员宅基地

文章浏览阅读1.4k次。java批量修改文件后缀名_java修改文件后缀名

jeecgboot按字段分表_jeecgboot 分表-程序员宅基地

文章浏览阅读1.3k次。在jeecgboot 使用mybatis框架,mybatis-plus3.1.1后支持分表,以下是在jeecg项目中实行分表一、修改mybatis-plus版本后,必须要在3.1.1版本后 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-..._jeecgboot 分表

java字符串_gags69zzww-程序员宅基地

文章浏览阅读353次。一、字符串的特性:String 被声明为 final,因此它不可被继承。二、不同JDK版本中String的区别:①: 在 Java 8 中,String 内部使用 char 数组存储数据。②: 在 Java 9 之后,String 类的实现改用 byte 数组存储字符串,同时使用 coder 来标识使用了哪种编码。value 数组被声明为 final,这意味着 value 数组初始化之..._gags69zzww

虚拟机在PE系统下看不到硬盘_pe虚拟系统盘-程序员宅基地

文章浏览阅读9.2k次。故障说明:想在VM虚拟化系统里进入PE重置密码,结果PE系统看不到一个硬盘,空空荡荡的。解决方法:先在虚拟机设置里面看看SCSI控制器的当前类型,如果是准虚拟的情况下,就更改SAS类型即可更改SAS类型最后重新进入PE即可看到硬盘,更改这个参数并不会影响系统。..._pe虚拟系统盘

随便推点

航空航天数值分析matlab算法,数值分析 matlab-程序员宅基地

文章浏览阅读501次。"本书介绍数值方法的基本理论和计算方法,并讲述如何利用MATLAB软件实现各种数值算法。它的突出特点是把经典的数值方法内容与现代MATLAB计算软件相结合,书中每个概念均以实例说明,同时还包含大量习题与编程练习,通过这些实例提高读者的实践能力,并加深对数值计算方法的理解。本书经过缩编后适合一学期课"¥63.96定价:¥487.90(1.32折)1. 精心提炼数百个典型实例,全部源于作者的实际工作和..._数值分析在航空领域的应用

Zookeeper权限管理与Quota管理_zookeeper ip 和quota ip-程序员宅基地

文章浏览阅读598次。1 Zookeeper ACLZooKeeper的权限管理亦即ACL控制功能通过Server、Client两端协调完成:Server端:一个ZooKeeper的节点(znode)存储两部分内容:数据和状态,状态中包含ACL信息。创建一个znode会产生一个ACL列表,列表中每个ACL包括:l 验证模式(scheme)l 具体内容(Id)(当scheme=“digest”时,Id为用户名密码,例..._zookeeper ip 和quota ip

ocr数据集:图片数据集_ocr 图片集-程序员宅基地

文章浏览阅读684次。数据集数据集总数量为370万张图片图片数据集文件介绍测试数据集_ocr 图片集

python识图自动化_聊聊 Python 自动化截图的一些经验-程序员宅基地

文章浏览阅读357次。前言今天想先给大家分享 1 个小白用户的 Airtest 从入门到放弃的故事小 A 是一个自动化的小白,在逛测试论坛的时候,偶然间发现了 Airtest 这个基于图像识别的 UI 自动化框架出于好奇,小 A 试用了这个框架,发现只需要几条简单的截图脚本,就可以对设备进行各种自动化操作,于是小 A 成功种草了这个框架但几天之后,随着小 A 的深入使用,他发现截图脚本并不是他想象中那么“完美”;有时..._python识图框架

python语言的关键字是什么_Python语言的关键字有哪些特点?关键字列举-程序员宅基地

文章浏览阅读272次。在Python中,具有特殊功能的标识符称为关键字。关键字是Python语言自己已经使用的了,不允许开发者自己定义和关键字相同名字的标识符。Python中的关键字如下所示:FalseawaitelseimportpassNonebreakexceptinraiseTrueclassfinallyisretu..._python语言的关键字有哪些

pandas数据处理之groupby的常用用法_pandas怎么处理groupby的结果-程序员宅基地

文章浏览阅读2.8k次。groupby的数据处理简单用法groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, **kwargs)1、by:mapping, function, str, or iterable。用于确定gro..._pandas怎么处理groupby的结果