什么叫源代码(多种说法)

合集下载

郝斌数据结构自学笔记--知识点+程序源代码

郝斌数据结构自学笔记--知识点+程序源代码

郝斌数据结构自学笔记--知识点+程序源代码(总24页)-本页仅作为预览文档封面,使用时请删除本页-郝斌数据结构自学笔记--知识点+程序源代码By-HZM1_什么叫做数据结构数据结构概述定义我们如何把现实中大量而复杂的问题以特定的数据类型和特定的存储结构保存到主存储器(内存)中,以及在此基础上为实现某个功能(比如查找某个元素,删除某个元素,对所有元素进行排序)而执行的相应操作,这个相应的操作也叫算法。

数据结构=个体的存储+个体的关系存储算法=对存储数据的操作2_衡量算法的标准算法解题的方法和步骤衡量算法的标准1)时间复杂度:大概程序执行的次数,而非执行的时间2)空间复杂度:算法执行过程中大概所占用的最大内存3)难易程度4)健壮性3_数据结构的特点数据结构的地位数据结构是软件中最核心的课程程序=数据的存储+数据的操作+可以被计算机执行的语言4_预备知识_指针_15_预备知识_指针_2指针的重要性:指针是C语言的灵魂定义:地址:地址是内存单元的编号,从0开始的非负整数,范围:0-FFFFFFFF【0-4G-1】CPU=====地址线,控制线,数据线=====内存指针:指针就是地址,地址就是指针。

指针变量是存放内存单元地址的变量。

指针的本质是一个操作受限的非负整数。

分类:1.基本类型的指针2.指针和数组的关系变量并不一定连续分配,随机分配内存。

内存:内存是多字节组成的线性一维存储空间。

内存的基本划分单位是字节。

每个字节含有8位,每一位存放1个0或1个1.内存和编号是一一对应的。

软件在运行前需要向操作系统申请存储空间。

在软件运行期间,该软件所占空间不再分配给其他软件。

当软件运行完毕后,操作系统将回收该内存空间(操作系统并不清空该内存空间中遗留下来的数据)。

NOTE:1)指针变量也是变量,普通变量前不能加*,常亮和表达式前不能加&。

2)局部变量只在本函数内部使用。

如何通过被调函数修改主调函数中普通变量的值。

什么叫源代码(多种说法)

什么叫源代码(多种说法)

源代码作为软件的特殊部分,可能被包含在一个或多个文件中。一个程序不必用同一种格式的源代码书写。例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。
了一个新的操作系统,并称之为Linux。托沃兹使用GNU通用公共许可证(它为开放源代码软件提供了很好的法律定义)发布了0.02版本的Linux。全球各地的人下载并开始使用Linux。其中,许多用户是独立的程序员,他们对托沃兹提供的源代码进行了修改。在接下来的3年中,托沃兹从其他程序员那里收到了这些修改后的版本,并将许多改动结合到基础版本中,于1994年发布了Linux的1.0版。 那些想要使用开放源代码软件的最终用户的一个共同顾虑,是这些软件缺乏质量担保和技术支持。因为该软件的许可证鼓励修改和定制,所以几乎无法提供支持。这正是1994年成立的Red Hat Software创建“Official Red Hat Linux”并销售这一通常是“免费”的软件的原因。Red Hat向软件包添加的主要价值是质量担保和技术支持。对于大多数企业而言,技术支持承诺成为促使其购买Linux而不是免费下载它的一个关键因素。除了Red Hat以外,还有其他几家公司将Linux打包(通常带有其他软件)以进行转售。 除了Linux以外,Mozilla(Netscape浏览器核心)、Apache(Web服务器)、PERL(Web脚本语言)和 PNG(图形文件格式)都是非 assembly language, that are not directly readable by a computer)
版权

JAVA单选题参考题库教学提纲

JAVA单选题参考题库教学提纲

J A V A单选题参考题库单选题1、Java属于以下哪种语言?(C)A、机器语言B、汇编语言C、高级语言D、以上都不对2、在JDK安装目录下,用于存放可执行程序的文件夹是?AA、binB、jreC、libD、db3、下列Java命令中,哪一个可以编译HelloWorld.java文件?DA、java HelloWorldB、java HelloWorld.javaC、javac HelloWorldD、javac HelloWorld.java4、以下关于java命令作用的描述中,正确的是AA、它专门负责解析由Java编译器生成的.class文件B、它可以将编写好的Java文件编译成.class文件C、可以把文件压缩D、可以把数据打包5、下面关于配置path环境变量作用的说法中,正确的是(A )A、在任意目录可以使用javac和java命令B、在任意目录下可以使用class文件C、在任意目录可以使用记事本D、在任意目录下可以使用扫雷游戏6、下面关于path和classpath的说法中,错误的是(C)A、path用来指定 java 虚拟机(JVM) 所在的目录B、classpath用来指定我们自己所写的或要用到的类文件(.jar文件) 所在的目录C、在dos命令行中,classpath和path环境变量的查看与配置的方式不相同D、只要设置了classpath 这个环境变量系统就不会再在当前目录下查询某个类7、下面关于classpath的说法中,错误的是(D)。

A、classpath和path环境变量的查看与配置的方式完全相同。

B、为了让Java虚拟机能找到所需的class文件,就需要对classpath环境变量进行设置。

C、从JDK5.0开始,如果classpath环境变量没有进行设置,Java虚拟机会自动将其设置为“.”,也就是当前目录。

D、在命令行窗口中配置了classpath后,重新打开新命令行窗口依然生效8、下面哪种类型的文件可以在Java虚拟机中运行?(D)A、.javaB、.jreC、.exeD、.class9、阅读下段代码片段,选择正确的运行结果A public static void main(String[] args) { {int a = 1;System.out.print(a);}{int a = 2;System.out.print(a);}int a = 3;System.out.print(a);}A、123B、111C、121D、编译不通过10、下面选项中,哪个是短路与运算符( B )A、&B、&&C、|D、||11、关于表达式1234/1000 * 1000的运算结果,下列哪个选项是正确的(B )A、1234B、1000C、1234.0D、以上都不对12、下面的运算符中,用于执行除法运算是哪个?AA、/B、\C、%D、*13、以下哪个选项可以正确创建一个长度为3的二维数组(B )A、new int [2][3];B、new int[3][];C、new int[][3];D、以上答案都不对14、下列选项中,不属于比较运算符的是AA、=B、==C、<D、<=15、下列选项中,用于引入包的关键字是BA、classB、importC、packageD、static16、下列选项中,哪一个不能通过编译(D )A、byte a=1;B、short b=100;C、int c='a';D、long d=8888888888;17、下列选项中,哪一个是多行注释符号?(D )A、//* *//B、/* /*C、/ /D、/* */18、为了能让外界访问私有属性,需要提供一些使用( C )关键字修饰的公有方法。

BOOST入门

BOOST入门

直流传这么一个说法,想成为高手,一定要多读高手写的源代码。

哪些代码是好材料呢?C++标准库的源代码?不,如果您读过,就会发现:要么是各种实现独有的表达方式让人摸不着头脑,要么是恐怖的代码风格(如到处是下划线)憋得人难受。

Boost库的代码则相当清晰,注释合理,命名规范,绝对是适合阅读的典范。

同时,Boost内容广泛,数值计算、泛型编程、元编程、平台API……不妨从容选择自己感兴趣的部分,细细品味。

Boost是什么?一套开放源代码、高度可移植的C++库。

谁发起的?C++标准委员会库工作组。

所以,质量保证,不怕遇到假冒伪劣产品。

有些什么呢?瞧瞧:字符串及文本处理Boost.Regex正则表达式是解决大量模式匹配问题的基础。

它们常用于处理大的字符串,子串模糊查找,按某种格式tokenize字符串,或者是基于某种规则修改字符串。

由于C++没有提供正则表达式支持,使得有些用户被迫转向其它支持正则表达式的语言,如Perl,awk,和sed。

Regex提供了高效和强大的正则表达式支持,基于与STL同样的前提而设计,这使得它很容易使用。

Regex已被即将发布的Library Technical Report接受。

更多的信息,请见"Library5:Regex."Regex的作者是Dr.John Maddock.Boost.SpiritSpirit库是一个多用途的、递归的语法分析器生成框架。

有了它,你可以创建命令行分析器,甚至是语言预处理器[1]。

它允许程序员直接在C++代码里使用(近似于)EBNF的语法来指定语法规则。

分析器非常难写,对于一个特定的问题,它们很快就变得难于维护和看懂。

而Spirit解决了这些问题,而且达到了与手工制作的分析器一样或几乎一样的性能。

[1]Wave库使用Spirit实现了一个与C++高度一致的预处理器,就证明了这一点。

Spirit的作者是Joel de Guzman,以及一组熟练的程序员。

Java高级语言程序设计期末复习资料(1)

Java高级语言程序设计期末复习资料(1)

第1章、Java语言简介第2知识点、Java程序的开发过程【单项选择】1 、下列关于classpath环境变量的说法中,哪一个是正确的(难度系数:易)A、classpath配置一次后可永久使用B、没有classpath环境变量就不能运行Java程序C、classpath环境变量可以让虚拟机找到class文件的目录D、查看当前classpath配置的命令是:classpath参考答案:C答案解析:classpath环境变量可以让虚拟机找到class文件目录,没有配置classpath环境变量时,java虚拟机会自动将其设置为“.”。

查看当前classpath的命令是set classpath;【单项选择】2 、在下列说法中,选出最正确的一项是( )。

(难度系数:易)A、Java语言是以类为程序的基本单位的B、Java语言是不区分大小写的C、多行注释语句必须以//开始D、在Java语言中,类的源文件名和该类名可以不相同参考答案:A【单项选择】3 、Java属于以下哪种语言? (难度系数:易)A、机器语言B、汇编语言C、高级语言D、以上都不对参考答案:C答案解析:Java是一门高级编程语言【单项选择】4 、下列选项中不属于Java虚拟机的执行特点的一项是( )。

(难度系数:易)A、异常处理B、多线程C、动态链接D、简单易学参考答案:D【单项选择】5、下列命令中,可以将文档注释提取出来生成帮助文档的是()(难度系数:易)A、javacB、javaC、javadocD、jar参考答案:C答案解析:可以使用javadoc命令将文档注释提取出来生成帮助文档【单项选择】6 、下列关于Java特点的描述中,错误的是?(难度系数:易)A、Java语言不支持指针B、Java具有自动垃圾回收的机制C、Java只能运行在Window和Linux平台D、Java允许多个线程同时执行参考答案:C答案解析:JAVA是一门面向对象的语言,它没有指针的概念,并提供了自动垃圾回收的机制,具有跨平台,多线程等特点。

软著申请 源代码不加注释

软著申请 源代码不加注释

软著申请源代码不加注释
在软件开发领域,源代码是一种包含程序逻辑和算法的文本文件。

它是开发人员编写的,用于创建计算机程序。

源代码通常使用特定的编程语言编写,例如C++、Java或Python。

源代码是程序的基础构建块,它描述了程序执行的步骤和逻辑。

然而,在编写源代码时,有些开发者可能会选择不加注释。

注释是一种解释源代码目的和功能的文本,它提供了对代码的说明和帮助。

不加注释的源代码可能会给其他开发者带来困惑。

没有注释的代码可能更难理解和维护。

开发者可能需要花费更多的时间和精力来理解源代码的功能和目的。

不加注释的源代码还可能导致团队合作的问题。

如果多个开发者一起工作,没有注释的代码可能会导致误解和错误。

开发者可能会浪费时间试图理解代码的含义,而不是专注于解决问题。

在编写源代码时,加注释是一种良好的编程实践。

通过注释,开发者可以提供对代码目的、功能和实现的详细说明。

注释还可以帮助其他开发者更轻松地理解和维护代码。

然而,有些开发者选择不加注释的原因可能是为了保护代码的商业机密或遵守公司政策。

在这种情况下,开发者通常会使用其他方式来记录代码的目的和功能,例如在项目管理工具中创建任务或文档。

源代码不加注释可能会给开发者带来困惑,增加代码理解和维护的难度。

加注释是一种良好的编程实践,可以提高代码的可读性和可维护性。

在编写源代码时,加注释是一个值得考虑的选择。

网页设计与制作知到章节答案智慧树2023年酒泉职业技术学院

网页设计与制作知到章节答案智慧树2023年酒泉职业技术学院

网页设计与制作知到章节测试答案智慧树2023年最新酒泉职业技术学院第一章测试1.不同的类别使用不同的后缀,以下属于政府类网站后缀名的是()。

参考答案:gov2.以下属于静态网页的URL后缀的有()。

参考答案:xml;htm;html3.以下属于常见的网站结构的有()参考答案:国字型;标题正文式;拐角式;封面式4.以下哪些是属于常用的网页色彩搭配方法。

()参考答案:相近色的应用;对比色的应用;色彩表达方式;网页安全色5.网站是多个网页的集合,按网站内容可将网站分为()和职能网站。

参考答案:个人网站;企业网站;门户网站;专业网站第二章测试1.()用于给文本、段落和图像等设置属性。

参考答案:属性检查器2.将链接的目标文件载入该链接所在的同一框架或窗口中,链接的target属性应设置成()参考答案:self3.网页文件的头部(即标签)元素的主要功能包括?()参考答案:搜索引擎阅读文件头以获取该页面重要信息,便于用户搜索;其他语言的代码,其文档范围声明和子程序都会包含在文件头部分;确定浏览器以什么语言来解释页面4.以下关于网页文件命名的说法错误的是()参考答案:建议使用长文件名或中文文件名,以便更清晰、易值5.使用DreamweaverCC设计网站的第一步是()。

参考答案:定义站点6.以下关于查看源代码的说法正确的是()。

参考答案:可以在DreamweaverCC的“代码”视图中查看网页的源代码7.“页面属性”对话框中的()用于设置将显示在Web浏览器的标题栏上的页面名称。

参考答案:标题/编码8.下面对于CSS样式描述正确的是()。

参考答案:通过CSS,可以精确地控制页面中每个元素的字体样式、背景、排列方式、区域尺寸和边框等;能够简化网页代码格式,使得下载显示的速度加快9.单选2.在Dreamweaver中,怎样才能使用样式表:()参考答案:事先定义10.如果要使一个网站的风格统并便于更新,在使用CSS时最好使用()样式。

第1章 Java开发入门

第1章 Java开发入门

13、下列Java命令中,哪一个可以编译 HelloWorld.java文件?( ) A、java HelloWorld B、java HelloWorld.java C、javac HelloWorld D、javac HelloWorld.java 14、javac.exe命令可用于解析.class文件( )
11.如果想在任意目录下都能使用java命令,需要
将java命令所在的bin目录添加到 中。
12、下面关于classpath的说法中,错误的是 ( )。 A、classpath和path环境变量的查看与配置的 方式完全相同。 B、为了让Java虚拟机能找到所需的class文件, 就需要对classpath环境变量进行设置。 C、从JDK5.0开始,如果classpath环境变量没 有进行设置,Java虚拟机会自动将其设置为“.”, 也就是当前目录。 D、在命令行窗口中配置了classpath后,重新 法中,错误的是?( ) A、Oracle公司提供了多种操作系统的JDK B、开发工具中已经包含了一个JRE,因此可以 选择不再安装公共的JRE环境 C、在安装JDK过程中,源代码指的是Java公共 的API类 D、开发工具是JDK中的核心功能模块,因此无 论是否进行Java程序开发都必须安装 8.在安装JDK的过程中,有三个功能模块可供选 择,它们分别是_________,_________和 _________。 9.公共JRE是Java程序的_________。
1、下列关于Java特点的描述中,错误的是?( A、Java语言不支持指针 B、Java具有自动垃圾回收的机制 C、Java只能运行在Window和Linux平台 D、Java允许多个线程同时执行
)
2、下列关于Java语言的描述中,错误的是?( ) A、Java语言是一门面向对象的编程语言 B、Java是一门与平台无关的编程语言 C、Java具有JavaSE、JavaME和JavaEE三大平台 D、Java是一门介于汇编和高级之间的语言 3、Java语言具体跨平台的特性( ) 4、Java是一种高级计算机语言,具有简单性、安 全性、面向对象等特征( )
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

百度知道版:请参阅Baidu百科的回答:source code源程序是指未编译的文本代码。

验证码主要是为防止暴利破解,所以需要防止图片识别。

所以验证码一般情况下为书写不正规,且有随机的背景杂点,或杂线源代码(也称源程序),是指一系列人类可读的计算机语言指令。

在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。

计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。

作用:源代码主要功用有如下2种作用:生成目标代码,即计算机可以识别的代码。

对软件进行说明,即对软件的编写进行说明。

为数不少的初学者,甚至少数有经验的程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。

但是说明对软件的学习、分享、维护和软件复用都有巨大的好处。

因此,书写软件说明在业界被认为是能创造优秀程序的良好习惯,一些公司也硬性规定必须书写。

需要指出的是,源代码的修改不能改变已经生成的目标代码。

如果需要目标代码做出相应的修改,必须重新编译。

代码组合:源代码作为软件的特殊部分,可能被包含在一个或多个文件中。

一个程序不必用同一种格式的源代码书写。

例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。

较为复杂的软件,一般需要数十种甚至上百种的源代码的参与。

为了降低种复杂度,必须引入一种可以描述各个源代码之间联系,并且如何正确编译的系统。

在这样的背景下,修订控制系统(RCS)诞生了,并成为研发者对代码修订的必备工具之一。

还有另外一种组合:源代码的编写和编译分别在不同的平台上实现,专业术语叫做软件移植。

版权:如果按照源代码类型区分软件,通常被分为两类:自由软件和非自由软件。

自由软件一般是不仅可以免费得到,而且公开源代码;相对应地,非自由软件则是不公开源代码。

所有一切通过非正常手段获得非自由软件源代码的行为都将被视为非法。

质量:对于计算机而言,并不存在真正意义上的“好”的源代码;然而作为一个人,好的书写习惯将决定源代码的好坏。

源代码是否具有可读性,成为好坏的重要标准。

软件文档则是表明可读性的关键。

效率:虽然我们可以通过不同的语言来实现计算机的同一功能,但在执行效率上则存在不同。

普遍规律是:越高级的语言,其执行效率越低。

这也是为什么汇编语言生成的文件比用VB语言生成文件普遍要小的原因。

源代码”在汉英词典中的解释(来源:百度词典):1. [Computer] source code (human-readable program statements, written in a high-levelor assembly language, that are not directly readable by a computer)经世济国版:#include #include class klw { private: static const whcar_t* name = L&quot;ninghuan&quot;; pbluic: klw(); ~klw(); static void show() { printf(name); } }; 这就是[此贴子已经被作者于2003-1-29 10:18:19编辑过]爱问知识人版:源代码(也称源程序),是指一系列人类可读的计算机语言指令。

在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。

计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。

作用源代码主要功用有如下2种作用:生成目标代码,即计算机可以识别的代码。

对软件进行说明,即对软件的编写进行说明。

为数不少的初学者,甚至少数有经验的程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。

但是说明对软件的学习、分享、维护和软件复用都有巨大的好处。

因此,书写软件说明在业界被认为是能创造优秀程序的良好习惯,一些公司也硬性规定必须书写。

需要指出的是,源代码的修改不能改变已经生成的目标代码。

如果需要目标代码做出相应的修改,必须重新编译。

代码组合源代码作为软件的特殊部分,可能被包含在一个或多个文件中。

一个程序不必用同一种格式的源代码书写。

例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。

较为复杂的软件,一般需要数十种甚至上百种的源代码的参与。

为了降低种复杂度,必须引入一种可以描述各个源代码之间联系,并且如何正确编译的系统。

在这样的背景下,修订控制系统(RCS)诞生了,并成为研发者对代码修订的必备工具之一。

还有另外一种组合:源代码的编写和编译分别在不同的平台上实现,专业术语叫做软件移植。

版权如果按照源代码类型区分软件,通常被分为两类:自由软件和非自由软件。

自由软件一般是不仅可以免费得到,而且公开源代码;相对应地,非自由软件则是不公开源代码。

所有一切通过非正常手段获得非自由软件源代码的行为都将被视为非法。

质量对于计算机而言,并不存在真正意义上的“好”的源代码;然而作为一个人,好的书写习惯将决定源代码的好坏。

源代码是否具有可读性,成为好坏的重要标准。

软件文档则是表明可读性的关键。

效率虽然我们可以通过不同的语言来实现计算机的同一功能,但在执行效率上则存在不同。

普遍规律是:越高级的语言,其执行效率越低。

这也是为什么汇编语言生成的文件比用VB语言生成文件普遍要小的原因。

SOSO爱问版:代码就是程序员用开发工具所支持的语言写出来的源文件源代码是相对目标代码和可执行代码而言的。

源代码就是用汇编语言和高级语言写出来的地代码。

目标代码是指源代码经过编译程序产生的能被cpu直接识别二进制代码。

可执行代码就是将目标代码连接后形成的可执行文件,当然也是二进制的。

A.一组有序的数字或字母的排列,是代表客观实体及其属性的符号。

B.记录计算机程序的符号。

代码设计的原则包括惟一确定性、标准化和通用性、可扩充性与稳定性、便于识别与记忆、力求短小与格式统一以及容易修改等。

源代码是代码的一个分支,但在某种意义上来说,源代码是相当于代码的。

[编辑本段]1.理论上的概念源代码是相对目标代码和可执行代码而言的。

源代码就是用汇编语言和高级语言写出来的地代码。

目标代码是指源代码经过编译程序产生的能被cpu直接识别二进制代码。

可执行代码就是将目标代码连接后形成的可执行文件,当然也是二进制的。

[编辑本段]2.最直观的概念在这个网页上右键鼠标,选择查看源文件.出来一个记事本,里面的内容就是此网页的源代码. 关于两者的区别联系: 1.从字面意义上来讲,源文件是指一个文件,指源代码的集合.源代码则是一组具有特定意义的可以实现特定功能的字符(程序开发代码). 2.&quot;源代码&quot;在大多数时候等于&quot;源文件&quot;. 上面说过在这个网页上右键鼠标,选择查看源文件.出来一个记事本,里面的内容就是此网页的源代码.&quot;这句话就体现了他们的关系,此处的源文件是指网页的源文件,而源代码就是源文件的内容,所以又可以称做网页的源代码...从字面意义上来讲,源文件是指一个文件,指源代码的集合.源代码则是一组具有特定意义的可以实现特定功能的字符(程序开发代码). 源代码(也称源程序),是指一系列人类可读的计算机语言指令。

在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。

计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。

作用:源代码主要功用有如下2种作用:生成目标代码,即计算机可以识别的代码。

对软件进行说明,即对软件的编写进行说明。

为数不少的初学者,甚至少数有经验的程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。

但是说明对软件的学习、分享、维护和软件复用都有巨大的好处。

因此,书写软件说明在业界被认为是能创造优秀程序的良好习惯,一些公司也硬性规定必须书写。

需要指出的是,源代码的修改不能改变已经生成的目标代码。

如果需要目标代码做出相应的修改,必须重新编译。

代码组合:源代码作为软件的特殊部分,可能被包含在一个或多个文件中。

一个程序不必用同一种格式的源代码书写。

例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。

较为复杂的软件,一般需要数十种甚至上百种的源代码的参与。

为了降低种复杂度,必须引入一种可以描述各个源代码之间联系,并且如何正确编译的系统。

在这样的背景下,修订控制系统(RCS)诞生了,并成为研发者对代码修订的必备工具之一。

还有另外一种组合:源代码的编写和编译分别在不同的平台上实现,专业术语叫做软件移植。

版权:如果按照源代码类型区分软件,通常被分为两类:自由软件和非自由软件。

自由软件一般是不仅可以免费得到,而且公开源代码;相对应地,非自由软件则是不公开源代码。

所有一切通过非正常手段获得非自由软件源代码的行为都将被视为非法。

质量:对于计算机而言,并不存在真正意义上的“好”的源代码;然而作为一个人,好的书写习惯将决定源代码的好坏。

源代码是否具有可读性,成为好坏的重要标准。

软件文档则是表明可读性的关键。

效率:虽然我们可以通过不同的语言来实现计算机的同一功能,但在执行效率上则存在不同。

普遍规律是:越高级的语言,其执行效率越低。

这也是为什么汇编语言生成的文件比用VB语言生成文件普遍要小的原因。

[编辑本段]开放源代码由源代码的概念引出了开放源代码的概念。

您购买或下载的大多数软件只提供已编译的可运行版本。

“已编译”意味着开发人员创建的实际程序代码(称为源代码)已经由一个称为编译器的特殊程序进行过处理,该程序将源代码转换为计算机可以理解的格式(有关编译器的详细信息,请参见C语言入门教程)。

修改大多数应用程序的已编译版本都是极其困难的,人们几乎不可能知道开发人员究竟是如何创建程序的各个部分的。

大多数商业软件制造商都将这一点视为有利条件,以防止其他公司复制自己的代码并将其用在竞争产品中,同时可以控制其特定产品具有的质量和功能。

开放源代码软件恰恰相反。

源代码随已编译的版本一起提供,而且事实上鼓励人们修改或定制。

支持开放源代码概念的软件开发人员相信,通过允许感兴趣的人修改源代码,应用程序将会更加完善,并且在很长时间内不会出现错误。

相关文档
最新文档