2022年2022年简介各种程式语言 .pdf

上传人:Che****ry 文档编号:27239186 上传时间:2022-07-23 格式:PDF 页数:17 大小:155.62KB
返回 下载 相关 举报
2022年2022年简介各种程式语言 .pdf_第1页
第1页 / 共17页
2022年2022年简介各种程式语言 .pdf_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《2022年2022年简介各种程式语言 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年简介各种程式语言 .pdf(17页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、简介各种程式语言注在程式语言前划有号者,表示它有重大影响,但不代表它优良适合编写商业程序、对效能有所要求编写商业程序的程式语言,最基本的要求就是不是直译的,令使用者不能看到源码;第二就是有良好的性能、语法,适合编写大程序而效率不会过慢。C/C+ 自从 C 发明了以后,它就取代了汇编语言在操作系统编程的领导地位。从性能上说,除了汇编语言, C 语言是最接近机器的语言。各种操作系统的编程接口的默认语言都是C 语言。因此,用C 语言编程,可以最大限度发挥操作系统的能力。同时,由于绝大部分的商品软件都是 C 或与 C 相容的 C+ 实现的,都有C 编程接口,可以说,没有C 不能实现的功能。C+是 C

2、语言的加强版,C+增加了面向对象和其他有用的功能,但它的效能并没有大减,编程更方便轻松;而C+亦支援大部分C 的程式,令C+和 C 变得近乎不可分割,大部分的 C 编译器也支援C+。假如要在学C 或学 C+选择,学C+是明智的选择。在 Unix-like 的操作系统中,C 具有很好的开放源代码的条件,它有统一的编译器gcc,有强大但比较难掌握的编程环境emaCs,有统一的API:posix 和 Linux 接口。并且大部分编译器和 API 是开放源代码的。在 Unix-like 上编写图形界面程序,有两个选择KDE 和 GnomeKDE 更成熟,但它使用了不是开源的Qt 函式库; Gnome

3、支持多语言和面向对象的程序间的协同,有它的GUI 工具GTK 。在 Windows 环境中,现在通常使用vC,但有一个缺点,Windows 的升级换代太快,从dos环境到 Windows31 ,从 Windows31 到 Windows95 ,到 Windows2000 ,到 .NET。API 常常变换,这样,在Windows 上的程序代码的寿命会比较短。并且vC 的编译器和API 太复杂,难于掌握, 并非开放源代码的工具。其他选择有从Unix-like 系统移植过来的djgpp、mingw 。由于 C/C+具有现代语言的大量特征,现在常常代替Pascal作为教学的编程语言。实际上, 如果不深

4、入学习,C 也是一种很简单的语言。不学 Basic,直接学 C 完全没有问题。和其他语言相比,虽然C 和 C+都已经定下了其标准,但编译器、函式库、操作系统API五花八门,有些又未必全面支援最新的标准,造成学习的难度大、统一性差的问题。Visual Basic( 简称 VB) VB 是快速的界面生成语言,是快速的数据库程序开发语言。vba 是 vb 的应用版,嵌入在MS office 中。编写MS office 上的程序很好用。缺点是只能在Windows 平台运作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -

5、 - - - - - - 第 1 页,共 17 页 - - - - - - - - - Delphi/Kylix 和 vb 一样是快速开发环境,但性能更好,功能更强大,亦可以用于Linux 平台。语法建基于 Pascal,是面向对象的程式语言。Java 相对 C,Java 作为现代语言,具有非常丰富的语法特征,如模块和类,不像C 随操作系统和编译器的不同有极大差异,Java是一个公司的产品,具有唯一的API,因此, Java程序员没有语言隔阂。有人认为Java 根本是一个平台,并非真正的跨平台。相对跨平台的语言来说,Java具有最好的图形界面编程API。Java 所有的 API 都是类库,相对

6、C 的函数来说,是非常大的进步。Java 具有现代语言几乎所有的特征。Java 最大的缺点,是它被一所公司控制着。Ada Ada 语言和 C/C+是一种编译语言,他们最后编译出的执行文件的机器码都很小。因此现在众多的语言只有C/C+能够与 Ada 相提并论。和 C/C+ 相比, Ada 的特点是可靠、可移植。他的可靠是通过比其他语言都强大的类型,每种类型还都可以象数据库字段一样进行强类型、范围的检查。以此来保证在编译中就发现错误。它有强大的标准化组织,严格认证Ada 编译器的标准。有多线程能力。适于编写实时程序。但和 C/C+相比太复杂、罗嗦,因此注定不能流行。Scripting Langua

7、ge 如果不在乎商业机密,应用目标也不是太苛刻的话,编写大型跨平台程序的最佳就是脚本语言。有些脚本语言具有全面的库的支持,有和 C 语言的方便的交互能力。他们和 Java 相比,编程效率更高。同时因为没有编译,程序更方便修改。因为他们的库都是C 实现的,也比Java 有更高性能。同时,他们都是开源的,都是对商业应用友好的,也是简单的、方便定制的。也是不满意Java的不可控制的越来越庞大的库的又一个选择。Basic 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 17 页

8、- - - - - - - - - 现在最着名的Basic 版本是 vb,Basic 是简单的初级语言。Basic 的丑陋在于参数还是默认传地址。太危险。Perl Perl 的最大特点是有强大的字符串模式匹配,是最好的文本文件的读取和生成语言,亦是Unix 系统管理者的好帮手,因为它吸收了awk、sed、grep 等工具的功能。Perl 具有很大的自由性,象英语一样有很大的随意性,在Perl 里基本上无Type Error 这回事,它的”Type”就是纯量和串行。Perl 有一个强大的数据库接口和其他各种接口。Perl 有大量的程序库(CPAN) 。因为 Perl 较早出现,某些功能是后期加上

9、去,显得不协调,例如它的面向对象功能就被视为不是真正的面向对象。Perl 有个着名的缺点是难读懂,维护困难,被认为不适合编写大程序,只适合一千行以下的程式,也有个著名的优点是简练。Python 首先, Python 是和 Basic 一样面向初学者的语言,和英语一样容易懂。Python 有和 Perl 类似的简单性,但没有模式匹配。Python 有和 Lisp 相似的地方,它有将字符串作为程序执行的eval 函数,可以对一个对象的所有数据进行保存,可以把函数作为参数传给另一个函数。Python 具有非常好的扩充性,Python 程序可以和C 程序,以及Java程序很好地结合。Tcl Tcl 具

10、有最简单的语法,最好的和其他程序交互的能力,有编写图形界面程序的Tk。基本上已经没有个人用户学习Tcl 语言,但是中国一些大型的软件公司至今一直使用该语言进行软件测试工作,而且Tcl 的工具包Tk 也是很多Scripting Language 的 GUI 工具。Ruby Ruby 是吸取了所有语言精华的语言。Ruby 虽然是纯面向对象语言,但可以”扮成”程序式的程式语言;它的文件主要都是日文和英文。Ruby 有* Perl 的正则表达式* Python 的语言的简单性可读性、最容易的扩展能力,强大的可移植性。* PHP 的嵌入功能和多种客户端* smalltalk 的纯面向对象语法和单继承*

11、Lisp 的无穷嵌套的语法,也就是函数式的语法。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 17 页 - - - - - - - - - * 用“块”来实现更快捷的数据结构的处理。不知道是不是sCheme 的宏功能。用块能更清楚的实现 Python 的表处理功能。* Java 和 Ada 的线程编程* Java 的安全编程不得不承认Ruby 确实是个精彩的语言,它完全学会了Lisp 的所有编程都是函数的思想,smalltalk 的所有东西都是对象的思想,Perl 的一

12、个目的多种手段的方法,Python 的简单化的“最少惊喜”的原则,Java的多线程和安全控制的功能,Tcl 的容易扩展的功能,PHP 的嵌入功能和强大客户端的功能,最方便的shell 命令的调用。Lua Lua 是一个小巧强大的脚本语言。第一眼看到Lua 的介绍,感觉它象Tcl 的替代品,因为它的主要目的是作为脚本语言。但接下来就看到它不是象Tcl 那样是命令行式的函数语言,它和其它语言一样有语句结构。它实现和 C 程序互动的方式和Python 类似, 具有和 Python 一样的和 C 结合的能力。并且Lua 全部是用ansi C 实现的,可以实现完全的跨平台。然后,看到Lua 的一个显着的

13、特点就是具有对象数据库功能,可以实现变量的永恒存储。这个特点让人首先联想到fish, fish 的最重要的特点也是语言内含一个对象数据库,不过 fish有 outline 的可视界面,和数据库浏览能力。但fish 不是开源的,因此,如果需要一个非内存的变量存储空间可以选择Lua。这种对象数据库都是不但能存储数据,也能存储操作数据的函数。实际Python 也具有一个将整个内存存储在一个磁盘文件的功能,另外,还有zope的 zodb 可以实现专业的永恒变量功能。另外, sCheme天然具有永恒存储能力,它只要把表变量输出到一个文件中就可以了。因为sCheme 是不分数据和程序的,因此可以实现将程序

14、和数据同样存储在文件中。Lua 和 Python 相比规模比较小,因为它是和C 紧密结合的,可以完全使用各种C 库,就不需要有自己的库。Lua 给人的印象是小规模的Python。 Lua 也是动态数据类型,也有内存管理功能。只是Python 自带强大的库,而Lua 只携带一个小型的库,具有字符串和数学计算能力,同时Lua 标准携带一个对象数据库。另外,可以把C 库随时编译到Lua 中。 Lua 引以自豪的是它的速度很快。Lua 的语法比较简单,它把数组、字典、结构等复杂的数据结构都统一为表。另外,Lua 具有正则表达式功能。网页编写客户端程序JavaScript 编写动态网页的最佳工具,可以造

15、到很多效果,亦是Mozilla 扩充套件的语言。VBScript VBScript 是 vb 的脚本语言,可以产生服务器端和客户端的动态网页。客户端的动态网页暂时只有 IE 系列浏览器支援,所以VBScript 相容性很低,不及JavaScript。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 17 页 - - - - - - - - - 服务器端程序PHP PHP 是专门写网页程式的语言,它的语法和Perl 极之接近。 PHP 可以嵌入HTML ,更容易编写服务器端程

16、序。PHP 天然和 web 服务器以及mysql 数据库相结合。PHP 可以动态生成图像。我一直认为PHP 是一个垃圾,因为它只是实现了脚本语言得嵌入,却单独实现一种语言、实现大量得函数库,浪费了大量得开发人员得宝贵时间来重复其他脚本已经实现了得功能,也浪费了PHP 开发人员得大量学习时间,还要单独学一种只能存在于web 服务器得语言,浪费了 Perl、Python 得已有得使用经验。相似得还有pike,一种 C 得脚本语言,没什么新东西,还不如仍然用C 编译器。但我最近看书才了解PHP 独特的开发目标。PHP 为什么不直接用Perl 作脚本语言。是因为Perl 是一种 Unix 语言,带有U

17、nix 传统得字符神秘高深,让人难于学习。而编动态网页得人不见得会用Perl 这种 Unix 工具,他们可能只有 HTML 知识。 PHP 就简化了Perl 得语言,变成了一种简单友好得语言,免去了人们学习 Perl 得困难。PHP 为什么不选Python 作脚本。因为Python 是一种面向对象的语言,大量得功能都要涉及面向对象概念,而web 应用只是简单得实现客户机逻辑和显示功能。没必要涉及面向对象得复杂概念。函数是最简单,最容易理解得,因此,PHP 倾向于所有得功能都用函数来解决,而不是用对象来解决。这有点象C 和 C+之争。应该承认,函数在实现简单功能得时候是最有利得工具,它得语句量最

18、少。PHP 定位于以HTML 为用户界面,充当各种服务器得客户端,实现得是传统得客户端编程得任务。它有pop、smtp、ftp、多种数据库等各种服务器得客户端得函数,也有图片、pdf生成, XML 处理等这种必要得功能。这些都是其他脚本比不上PHP 得地方。其他专门写网页程式的语言有ASP、JSP和 CGI,但它们都不及PHP 强大。Java、.NET 、Zope 在商业开发中流行的是Java和 .NET,其实 zope也是选择之一,zope 的特点就是全部开源,层次少, 简单。 并且集成一个内容管理器和众多的附加产品。附加产品多是开源软件必然的优势。 zope 之前的一些缺点在zope3 中

19、将得到解决。另外,zope 的组件架构和Cmf 开发架构,并不必Java 的组件开发环境差多少(我没接触很多Java,只是评感觉说,其他人可以有不同意见) 。PHP 虽然看起来不适合大程序开发,但在PHP 平台上已经有了很多大规模的程序,比如puke。tiki 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 17 页 - - - - - - - - - 另外, web 服务器已经被很多程序缺省支持,用很多语言都能编写出独立的web 服务器程序。其他Lisp Lisp 的

20、语法非常简单统一,只有简单的函数和参数的语句结构。Lisp 用上极多括号,不太方便。 Lisp 数据和程序的界限模糊。Lisp 可以深度嵌套。prolog prolog 是由 R. Kowalsk 首次提出,全称是Programming in Logic 。1972 年诞生世界上第一个Prolog 系统。它基于逻辑程序设计,能自动实现模式匹配和回溯,且适合于并行处理。PROLOG 以一阶谓词演算为基础。由于采用了合一、置换、回溯和匹配等机制来搜索解答,所以用户不必要编写求解搜索程序,只要把待解决的问题输入计算机系统就可以了。PROLOG 的功能还不如LISP 强,但它具有较好的发展前景,曾被用

21、作第五代计算机开发研究的核心语言。.NET 支持多种语言的统一的API 类库,可以编写webform 程序,即所有的逻辑都在服务器端,传到客户端的是标准的HTML3.0 ,可以被各种浏览器支持。各程序组件间通过soap 交换消息。其他编程概念Turing-complete programming: Brainfuck Functional Programming: Haskell 、Clean 平行处理 : Fortran 各种语言的选择如果编写对性能要求苛刻,或和操作系统结合紧密的程序,必然选择C。如果编写到处可用的程序,选Java。如果编写大程序,可能的话尽量用脚本语言如Python、Ru

22、by,不行了再用Java 和 C。因为脚本语言带来了生产力。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 17 页 - - - - - - - - - 编写文本的处理程序用Perl 或 Ruby。编写知识的处理程序用prolog。编写最灵活,最模糊的程序用Lisp。编写 office 程序用 vba。编写服务器端程序,PHP、 (采用自己熟悉的语言来写,例如Perl、Python、Ruby) CGI、ASP、 (熟悉 Java就用) JSP都是选择。编写数据库程序用vb

23、 或 delphi。各种语言的选择如果要追求性能和程序的能力,要完全发挥操作系统的能力,使用 C/C+语言是合适的。 在Windows 环境下用VC,在 Unix-like 环境下用gcc。如果不是追求和操作系统完美结合,而只是性能,又要追求跨平台性,那么仍然选择C,但可以选择跨平台的库,如 qt、gtk、fox、 wxWindows 。如果要编写游戏也有跨平台选择:SDL。如果不满意C 领域标准的不统一,不满意 C 的容易出错, 不满意 C 的面向对象特征不彻底。如果不在乎跨平台,Windows 平台可以选择C#,maC 平台可以选择CoCo。如果需要跨平台,可以选择Java。如果需要跨平台

24、,又要广泛的支持的话,选择Java。在 Unix-like 下,最方便的工具语言是Perl,它有强大的社区和代码库的支持。如果只作为简单应用的工具语言,Python 和 Ruby 是更好的选择,他们的跨平台移植性好,应用也比较广泛。其中Python 更适合入门和交流,长期使用也不错。Ruby 是对 Python 不满意的另一个选择,它提供了很多额外的功能。如果要选择一个程序的嵌入语言,原来有Lisp、 Basic 和 Java,现在还可以选择Python 和Ruby。如果在要求动态解释执行语言,而又不想学其他语言的话,C 程序员的选择是pike, Java程序员的选择是beanshell。在

25、Java平台,又想用脚本语言的话,可以用jython 。最正统的基于文档的语言或叫动态页面语言是JavaScript。最专门的服务器端语言是PHP,当然也有很多其他选择。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 17 页 - - - - - - - - - XML 语言以 XUL 为最着名, dtml 也算一个, 你自己也可以用XML 作为自己特殊用途的语言。比如jedit 就用 XML 作为一种模式定制语言。XML 语言是一种比较先进的趋势,比现有的语言在特殊领域

26、更高效。要找容易实现的语言,Lisp 和 Tcl 是选择。Lisp 的数据和程序融为一体的能力和自由是其他语言都没有的。现在出现了一个Lisp 的现代化的变种: REBOL 。如果有基于事实的编程的需要的话,prolog 和 Clips 是必然。我为什么选择了Python 首先声明, 我编程只编应用程序,就是代替自己工作的小程序。如果编写系统程序总会用到C 或 Java的。我喜欢脚本语言,脚本语言不用编译就可以运行,非常便于修改, 而编程序是一种经常性的活动,程序编完后总在不断的修改中,没必要搞的很隆重,还要编译。另外,脚本程序每个使用的人都可以随手拿来修改,不会出现还要去找源代码的情况。因此

27、,C/C+ 和 Java就被排除了。我喜欢简单的语言,不喜欢为了编写简单的程序而去学习大量复杂的规定,需要大量的学习才会的语言不是好语言,是把人当机器看。C/C+和 Java 都有严格但罗索的语法,有永远学不完的函数、类、库。让人看到就头大。而Perl 有各种怪里怪气的速记符号,程序常常让人头晕。简单的含义除了容易学,还要功能丰富,常用到的东西要早就准备好,不用每个人都去写同样的数据结构程序等。Python 有丰富的数据类型,有完备的面向对象的结构,有规则表达式等各种方便编程的模块。这个逻辑就是程序做的多,人做的就少, 如果程序做的少,就要人做的多。这就是界面友好的问题。容易上手, 功能丰富是

28、程序设计的很重要的目标,Windows 就是靠这个流行的。而 Python 也很好的体现了这点。而 Perl 象 Unix 的 emaCs之类其它工具一样,功能强大,但太难学,太难懂。是比较违背人性的。关于性能。现在Cpu 已经很强大了。除了很大的程序和系统程序,没必要关心性能。关于功能。如果不是编写系统程序和贴近系统的程序,没必要使用操作系统特别提供的功能。C 是可以干任何事情,但它编程效率低,复杂。至于我为什么不用vb,因为 vb 太庞大了。我没必要实现一个小功能启动这么庞大的程序。太夸张。另外,vb 没有类继承,虽然是应用编程,但如果要编稍微大的程序,总会用到类继承的。Python 得强

29、大得扩展能力使对Python 得学习不会浪费。Python 经过简单得处理能使用各种得 C 和 C+库, 也可以被 C 和 C+调用。 Python 可以直接使用Java 得类, 也可以直接被Java调用。这样,对Python、Java、C 得学习和使用经验都不会被浪费,还能相互补充。Python名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 17 页 - - - - - - - - - 可以提高Java 和 C 得编程效率, Java 和 C 可以补充Python 功能

30、上得不足。Python 还可以和 Tcl 直接交互,这种功能是内置得。期待Python 能简单的调用Perl 和 PHP 得功能。能使用 Lisp 和 prolog 更好。Ruby 和 Python 的比较Python 和 Ruby 的相同点* 都强调语法简单,都具有更一般的表达方式。Python 是缩进, Ruby 是类 Basic 的表达。都大量减少了符号。* 都是动态数据类型。都是有丰富的数据结构。* 都具有C 语言扩展能力,都具有可移植性,比Perl 的可移植性更好。也都可以作为嵌入语言。* 都是面向对象的语言,都可以作为大项目的开发工具。* 都有丰富的库支持。* 也有最宽松的版权许可

31、,除了一些工具属于GNU 世界。* 都有 Lisp 特色的 eval 函数,也都能把函数作为参数。* 也有图形界面的Ruby 的专门编辑器。* 都获得了广泛的C 库的支持。 如 qt、gtk、tk、SDL、FOX 等,Ruby 计划实现SWIG 接口。* 都有完善的文档。和 Python 相比 Ruby 的优点* 具有正则表达式和嵌入HTML的功能。 Python 也有正则表达式,但没有Ruby 的应用方便和广泛。 Python 的嵌入 HTML 项目才刚起步。 Ruby 还有 apaChe 的 mod 模块。 Ruby 本身也实现和很多Unix 工具,如raCC,doCtools。比 Pyt

32、hon 更亲近 Linux 。* 比 Python 功能更完整的面向对象的语法。* Ruby 的整个库都是具有类继承的结构。* 他的基本的数据类型和运算符都是可以重载的。* Ruby 主要的功能都是通过对象的方法调用来实现的,而不是函数。Python 也在向这方面发展,但没有Ruby 做的彻底。* Ruby 的类是更规范的单继承,还有接口等概念的实现。* Python 可以实现在列表内的条件语句、循环语句,而Ruby 用“块”的方式来实现这个功能,比 Python 的更灵活,更具有通用性。* Ruby 具有类似Lisp 的彻底的函数方式的条件语句、循环语句等。语句的表达能力更强。* 附带一些U

33、nix 工具,如raCC 等。和 Python 相比 Ruby 的不足* 最大的不足正是因为Ruby 的强大所引起的。它没有 Python 的简单性好。 比较复杂的面向对象语法、“块”语法的引入、正则表达式的引入、一些简写标记都增加了语言的复杂性。* Python 的缩进表达方式比Ruby 的 Basic 的表达方式更让人悦目,Ruby 程序的满眼的end让人不舒服。当然,Ruby 认为 end 的方式比 Python 更先进。* Ruby 还没有 Python 的“自省”的能力,没有从程序文件中生成文档的能力。* Ruby 支持不及Python 广。国际化支持在Ruby 的计划中。 这是因为

34、 Ruby 的历史比 Python要短造成的。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 17 页 - - - - - - - - - Python 和 Ruby 的语言的选择从简单的就是好的来说,选Python 是没错的。 Python 适合寻找简单语言的人,这很可能造成 Python 更流行,因此也有更多的支持。但如果要追求更强大的语法功能,对编程语言感兴趣,想了解各种编程概念的人,则Ruby 是好的选择。Ruby 和 Python 都想取代Perl,解决 Per

35、l 的缺点面向对象不足,但 Python 用是方法是混合面向对象和程序式的程式语言,Ruby 是允许自己这个面向对象语言扮成程序式的程式语言,方向很不同。多脚本语言的大统一及疑问现在各种脚本语言太多了,有必要进行整合,parrot 是一个好的想法。.NET 也是好的想法。它为各种脚本提供了一个统一的虚机,为各种脚本语言提供了基于“类”的相互调用,为各种脚本提供了统一的类库。现在各种脚本语言只是提供了对C 语言的交互性,这种交互也是费劲的和效果不好的。比如 Python、Perl、Ruby 等都提供了对C 的交互功能。脚本语言之间的交流障碍重重。而类似.NET 的东西,提供了非常容易的各种脚本的

36、相互利用的途径,避免了很多的代码的重复编写。这种标准平台的力量是很大的,这种标准平台为什么没有在开源领域首先出现呢?众多的脚本正是开源的特点和优势,为什么这种问题要微软来解决呢?前面有人提出了类似的问题,在Linux 中为什么至今没有好用的类似ODBC 的东西呢?可能这种整合只有商业公司有能力实现吧。我的理解是, 如果有创新思想的人都拿他的想法去卖钱了,因此, 在开源中只剩下了模仿的人。 kde是模仿 Windows ,koffice 是模仿 office ,Linux 是模仿 Unix ,gcc、bash等也全都是模仿,以及gstep 等,还有 freedos、atheos等也是模仿, wx

37、Windows 、SDL 也是模仿。我想知道开源社区有没有自己的创新?我所知道的创新是zope,但 zope最初也是商业产品,后来才开源的。 Perl 是创新, Python 是创新,但还有什么呢?是不是开源领域只有haCk,没有 Creator?.NET 介绍.NET 所实现的Java的功能可控代码跨平台的虚机和伪码免费赠送命令行编译器纯面向对象语言对 XML和 XML web serviCes 的支持和 jsp 对应的 asp.NET 网页上的程序一套统一的中间件环境。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心

38、整理 - - - - - - - 第 10 页,共 17 页 - - - - - - - - - asp.NET跟 jsp不是同一个层次上的web技术, asp.NET 使用完善的事件响应机制,WinForms类似的WebForm 技术,只有JSF跟 Asp.NET 有可比性。.NET 未实现的Java功能免费的集成开发环境多厂家支持 ,跨平台的成熟度免费的 IDE, #develop , ASP.NET 的有 MS 的 WebMatrix 而免费开源的CLR 实现,有MS 自己的 XP,FreeBSD,MaCOS 下的实现(原理演示不能进行商业应用), Novell 下的 Mono项目,已经

39、发布了Beta1 版本,在2004-6-30 将会发布 Release1; 还有 GNU 的一个 .NET实现! !.NET 实现的 Java不具备的功能多语言支持强大的集成开发环境。在 Windows 上媲美本机程序的速度。对 COM 的支持,对 vs 的继承对 widows form 、web form 、服务器端程序的图形直观编程。相对 vs6 的改进统一了集成开发环境,使C+程序也具有了vb 的友好性。XML 各种技术介绍XML :XML 是统一格式的结构化数据的文本文件。基于 XML的程序,数据结构是开放的,方便不同程序处理同一种文件,这样,程序之间可以达到高水平的协作。XML 现在

40、成为了各行各业统一数据格式的基础。XML 发展出了完善的语法,它用DTD 或 sCheme 来界定 XML 的标记语言。用uri 来唯一确定一个 XML 格式。用Css 或 XLT 来转换 XML 格式, xlink 和 xpointer 等来建立XML 的链接,用xpath 来定位 XML 中的数据。xHTML :是严格符合XML 格式的 HTML 。RDF:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 17 页 - - - - - - - - - 基于 XML 的

41、元数据描述语言。方便交换结构化数据。方便交换知识。RDF 是用主语、谓语、宾语来描述知识的。SVG:XML 格式的矢量图形格式。SMILE :XML 格式的各种多媒体在时间线上的协同。xmath:XML 格式的公式描述语言。XML-rpC和 soap:以 http 协议和 XML 格式来进行网络程序之间的消息通讯。XUL :netsCape的 mazilla 使用的程序界面语言,基于 XML 格式, 比 HTML 强大的多的描述图形界面的 XML 语言。 它用 Css 来换肤, 用 DTD 来实现多语言界面,用 JavasCript 来实现程序逻辑,以此编写跨平台的可方便定制界面的程序,现在这

42、个程序API 功能已经很强大了,整个 mazilla 程序就是基于XUL 的。xaml: MS 在 LongHorn 平台的最新编程语言,将统一 Windows 与 Web 编程,直接使用LongHorn 下的浏览器进行执行,跟 XUL 有类比性最先进的 XML 格式图形界面程序开发工具XUL 大家知道netsCape程序,一个仅次于ie 得浏览器,也有很多人知道Mozilla ,netsCape得开放源代码版本。 但很多人只是使用Mozilla , 不知道 Mozilla 另一个重要得功能程序开发。在 netsCape开放源代码后三年Mozilla 得 1。0 版还没有问世,很多人讥笑他的超

43、慢得开发速度,实际上,Mozilla酝酿出了一个超酷得新产品,可以看作是软件开发工具发展得另一个里程碑。现在基于浏览器得三层开发结构非常流行,微软的 .NET 的思路就是基于这个结构得。另外,不考虑服务器结构,就是基于网页得JavaScript 小程序也对人很有吸引力,这些产品得思路都是以 HTML 为用户界面, 但开发人员常常苦恼于HTML太简陋。 而 Mozilla 得 XUL 解决了这个问题。XUL 是对 HTML的扩展,完全兼容于HTML ,XUL 基于 XML 格式对 HTML 进行了扩展,实现了完整、强大得图形用户界面设计功能。可以设计出复杂得图形界面程序。实际上mazilla 整

44、个就是由XUL 设计的。 XUL 用 Css 来控制界面风格、用DTD 来替代字符串,方便的实现本地化,用JavasCript 来对用户界面的操作作出反应,提供基本的逻辑编程,JavaScript 通过对象文档接口DOM 来动态控制用户界面。同时JavasCript 通过调用Mozilla提供的丰富的底层API 来实现强大的功能。Mozilla 提供了功能强大的API 可以进行文件操名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 17 页 - - - - - - - -

45、 - 作、网络操作、 图形操作等各种操作,并且这种API 是完全跨平台的。最后,Mozilla 用 RDF格式来存储独立于界面的数据。总结: XUL 由于兼容HTML ,提供了最强大的用户界面的定制,DTD 提供了最方便的本地化。 XUL 、JavasCript、RDF 提供了显示、逻辑、数据的分离。Mozilla 的底层 API 提供了跨平台的强大编程能力。希望大家都来关心Mozilla 。最接近人类语言的编程语言REBOL REBOL 的详细资料见www.REBOL.org 。这里谈一下我的印象。REBOL 的缺点是明显的。它是一个商业公司的产品。它只是象Java一样免费使用。但不开放源代

46、码。 并且它的数据库连接的函数库是收费的。但它的优点也十分明显,如果因为不是开放源代码软件而不能放心使用,也可以欣赏和借鉴它的种种特点,并且了解了REBOL 肯定还会忍不住使用它。首先 REBOL 是一个 Lisp 语言的替代品,它能实现Lisp 的所有能力。他具有Lisp 语言的数据和程序同等处理的特点,也有语句和表达式的统一。但大大打破了Lisp 的局限。它允许中缀运算符的形式,没有满眼的括号,和一般编程语言的表达方法完全一样。同时具有丰富的库,有完全的图形界面库,完全的网络库。因为是一个公司的产品,也保证了库的统一。REBOL 自称为网络编程语言,它的网络编程能力很强,一般一个语句就可以

47、下载一个文件,或下载一个网页,或接受一个邮件。REBOL 一个神奇的特点是它的图形界面设计,它的界面编程非常简单,完全不用语句和函数,而是和HTML一样只要表达核心内容就行了。这得益于REBOL 的“方言”能力。REBOL 内置了“方言”能力。就是象yacc 一样的语言解析能力。可以随时扩展“子语言”。REBOL 内置了几十种数据类型,用它编程,语句肯定是最精炼的。REBOL 可以实现Java 一样的网络下载程序运行的能力,也有砂箱功能。它比Java 更进一步,有自己的桌面,在桌面上可以任意启动各个REBOL 程序,它的桌面象HTML一样有丰富的表达形式和超链接。链接到有 REBOL 功能的网

48、站上就可以象浏览网页一样使用各种程序。由于REBOL语言比Java 要简练的多,同时是不用编译的脚本语言,它的程序文件非常小,更适合网络传输。因为REBOL 有这样神奇的功能,它自称internet 操作系统。因名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 17 页 - - - - - - - - - 为 REBOL 是脚本语言,因此它天然是跨平台的。它有很多操作系统的实现。还有一个特点,REBOL 语言自身只是一个几百k 的可执行文件,因此REBOL 程序的发布是非

49、常简单的。最具有现代感的Lisp 解释器 DrScheme Lisp 是一个古老的计算机编程语言,给人的印象是速度慢,输入输出能力弱, 没有图形界面,自身携带的库太少,很多功能不能实现。这一切在DrScheme 手中改变了。DrScheme 具有大量的现代语言具有的功能,比如作为嵌入脚本的能力,图形界面的编程能力,面向对象的能力,组件编程能力,正则表达式能力,XML 能力,作为web 服务器和客户端来输入输出能力及其它网络能力,产生独立可执行文件的能力。一个集成的编辑调试环境。不过它的程序执行速度还是稍慢。当然,它具有所有Scheme的优点,语法的宏定义能力,命名空间能力,数据和程序不分的能力

50、,堆栈式内存管理,无穷嵌套,用“表”来表现所有语句和数据的简单方式,也天然带有程序环境的永恒存在能力。这些特点好像正在最新出现的编程语言中出现。好像目前的编程语言的发展趋势是从C 语言的方式向具有更多Lisp 特点的方向发展。就像 Windows 逐渐具有了越来越多的Unix 早已实现的功能。才知道 Lisp 的编程环境已经这么好了。eiffel 语言印象印象深的是它是全开发周期的语言,并且是在开发周期可回溯的。它的ContraCt 和 Ada 类似。 eiffel 是和 C+类似的编译的面向对象语言,不过更简单,能够多继承。eiffel 是 C 语言的面向对象编程的代替物。名师资料总结 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com