2024年1月18日发(作者:)
PYTHON
特点:面向对象、解释型
主要用途:
1. 图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理。
2. 数学处理:NumP扩展提供大量与许多标准数学库的接口。
3. 文本处理:python提供的re模块能支持正则表达式,还提供SGMLXML 分析模块,许多程序员利用python进行XMLg序的开发。
4. 数据库编程:程序员可通过遵循 Python DB-API (数据库应用程序编程 接口)规范的模块与 Microsoft SQL Server , Oracle,Sybase, DB2 MySQL SQLite等数据库通信。python自带有一个Gadfly模块,提供 了一个完整的SQL环境。
5. 网络编程:提供丰富的模块支持sockets编程,能方便快速地开发分布 式应用程序。很多大规模软件开发计划例如Zope,Mnet及BitTorrent . Google都在广泛地使用它。
6. Web编程:应用的开发语言,支持最新的 XML技术。
7. 多媒体应用:Python的PyOpenG模块封装了“ OpenGL应用程序编程接
口”,能进行二维和三维 图像处理。PyGam模块可用于编写游戏软件。
8. pymo引擎:PYMO全称为 python memories off ,是一款运行于 Symbian
S60V3,Symbia n3,S60V5, Symbia n3. An droid 系统上的 AVG游戏引擎。
因其基于python2.0平台开发,并且适用于创建 秋之回忆(memories off) 风格的AVG游戏,故命名为PYMO
9. 黑客编程:python有一个hack的库,内置了你熟悉的或不熟悉的函数, 但是缺少成就感。
优点:
1. 简单:PYTHON是一种代表简单主义思想的语言。 阅读一个良好的
PYTHONg序就感觉像是在读英语一样。它使你能够专注于解决问 题而不是去搞明白语言本身。
2. 易学:PYTHON极其容易上手,因为PYTHON有极其简单的说明文档。
3. 速度快:PYTHON的底层是用C语言写的,很多标准库和第三方
库也都是用C写的,运行速度非常快。
4. 免费、开源:PYTHON是 FLOSS(自由/开放源码软件)之一。使
用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它
做改动、把它的一部分用于新的自由软件中。
个团体分享知识的概念。
5. 高层语言:用 PYTHON语言编写程序的时候无需考虑诸如如何管 理你的程序使用的内存一类的底层细节。
6. 可移植性:由于它的开源本质,PYTHONB经被移植在许多平台上
(经过改动使它能够工作在不同平台上) 。这些平台包括 LINUX、
WINDOWS、 FREEBSD、 MACINTOSH、 SOLARIS、 OS/2、 AMIGA、
AROS、 AS/400、 BEOS、 OS/390、
Z/OS、 PALMOS、 QNX、
VMS、 PSION、 ACOMRISCOS、 VXWORKS、 PLAYSTATION、
SHARPZAURUS、 WINDOWSCE、 POCKETPC、 SYMBIAN
以及 GOOGLE基于LINUX开发的
ANDROI[平台。
7. 解释性:一个用编译性语言比如 C或C++写的程序可以从源文
FLOSS是基于一
件(即C或C++语言)转换到一个你的计算机使用的语言(二 进制代码,即 0 和 1)。这个过程通过编译器和不同的标记、选 项完成。
8. 运行程序的时候, 连接 / 转载器软件把你的程序从硬盘复制到内 存中并且运行。而 PYTHON语言写的程序不需要编译成二进制代 码。你可以直接从源代码运行程序。
9. 在计算机内部,PYTHON解释器把源代码转换成称为字节码的中间 形式,然后再把它翻译成计算机使用的机器语言并运行。这使 得使用
PYTHON更加简单。也使得 PYTHONS序更加易于移植。
10. 面向对象:PYTHON既支持面向过程的编程也支持面向对象的
编程。在“面向过程”的语言中,程序是由过程或仅仅是可重
用代码的函数构建起来的。在“面向对象”的语言中,程序是 由数据和功能组合而成的对象构建起来的。
11. 可扩展性: 如果需要一段关键代码运行得更快或者希望某些 算法不公开,可以部分程序用 C或C++编写,然后在PYTHON程序 中使用它们。
12. 可嵌入性:可以把 PYTHON嵌入C/C++程序,从而向程序用户
提供脚本功能。
13. 丰富的库:PYTHON标准库确实很庞大。它可以帮助处理各种
工作, 包括正则表达式、 文档生成、 单元测试、 线程、 数据库、
网页浏览器、 CGI、FTP 电子邮件、XML XML-RPC HTML WAV 文件、密码系统、GUI (图形用户界面)、TK和其他与系统有关 的操作。这被称作 PYTHON的“功能齐全”理念。除了标准库以 夕卜,还有许多其他高质量的库,如
图像库等等。
14. 规范的代码:PYTHON采用强制缩进的方式使得代码具有较好
WPYTHON
TWISTED和 PYTHON
可读性。而PYTHON语言写的程序不需要编译成二进制代码。
缺点
1. 单行语句和命令行输出问题: 很多时候不能将程序连写成一行, 女口
IMPORTSYS;
FORI IN SYS PATH PRINT I。而
PERL禾口
AW!就无此限制, 可以较为方便的在SHELL下完成简单程序,不需要如PYTHON一样, 必须将程序写入一个.PY文件。
2. 独特的语法
3. 这也许不应该被称为局限,但是它用缩进来区分语句关系的方
式还是给很多初学者带来了困惑。即便是很有经验的
PYTHON程
序员,也可能陷入陷阱当中。 最常见的情况是TAB和空格的混用 会导致错误,而这是用肉眼无法分别的。
4. 运行速度慢:这里是指与 C和C++相比。
C
主要用途:
优点:
缺点
C++
特点:
C++支持多种编程范式—面向对象编程、泛型编程和过程化编程。
主要用途:
系统开发,引擎开发
1. C++设计成静态类型、和C同样高效且可移植的多用途程序设计 语言。
2. C++设计直接的和广泛的支持多种程序设计风格 (程序化程序设
计、资料抽象化、面向对象程序设计、泛型程序设计)
3. C++设计无需复杂的程序设计环境。
。
4. C++语言灵活,运算符的数据结构丰富、具有结构化控制语句、
程序执行效率高,而且同时具有高级语言与汇编语言的优点, 与其它语言相比 ,可以直接访问物理地址,与汇编语言相比又 具有良好的可读性和可移植性。
缺点:
C++由于语言本身复杂。C++的编译系统受到 C++的复杂性的影响,
非常难于编写, 即使能够使用的编译器如果存在问题, 可能难于被 发现。 [
C#
特点:
面向对象的、运行于.NET FRAMEWO之上,面向对象
主要用途:
快速地编写各种基于 平台的应用程序,
提供了一系列的工具和服务来最大程度地开发利 用计算与通讯领域。
优点:
1. 更先进的语法体系
2. 强大的周边
缺点
1. 没有考虑代码量
2. 这是一个产品
HTML 主要用途:
优点:
缺点
PHP
特点: 通用开源脚本语言
主要用途:
WEB开发领域
优点:
1. 开放的源代码
2. 免费性
3. 快捷性
4. 跨平台性强
5. 效率高
6. 图像处理
7. 专业专注
缺点
1. 对递归的不良支持
2. 并非线程安全
3. 因商业应用而残废
4. 没有命名空间
5. 不标准的日期格式字符
6. 混乱的许可证
7. 不一致的函数命名规则
JAVA
特点:
JAVA
是一种可以撰写跨平台应用软件的面向对象的程序设计语言。
JAVA
技术具有卓越的通用性、高效性、平台移植性和安全性 主要用途:
WEB浏览器、网络应用系统。
优点:
1. 简单性:风格类似于 C++, JAVA摒弃了 C++中容易引发程序错 误的地方,如指针和内存管理。
2.
对象:JAVA是一种完全面向对象语言。从这点来看,
面向JAVA
类似于SMALLTALK,但其特性、尤其是适用于分布式计算环境的特性 远远超越了 SMALLTALK。
3. 分布式:JAVA包括一个支持 HTTP和FTP等基于TCP/IP协议的
子库。因此,JAVA应用程序可凭借 URL打开并访问网络上的对象, 其访问方式与访问本地文件系统几乎完全相同。
4. 健壮:JAVA致力于检查程序在编译和运行时的错误。类型检查
帮助检查出许多开发早期出现的错误。 JAVA自己操纵内存减少了内
存出错的可能性。
5. 结构中立: JAVA
将程序编译成一种结构中立的中间文件格式
只要有JAVA运行系统的机器都执行这种中间代码。 这种中间语言被
设计在虚拟机上运行,由机器相关的运行调试器实现执行。
6. 安全:
1)删除了香指针和手动释放内存等功能,避免了非法内存操作。
2)当JAVA用来创建浏览器时,语言功能和浏览器本身提供的功能 结合起来。
JAVA在机器上执行前,要经过很多测试,它经过代码校验,检查代
码段的格式, 检测指针操作, 对象操作是否过分以及试图改变一个 对象的类型。
7. 可移植的:同体系结构无关的特性使得 JAVA应用程序可以在配
备JAVA解释器和运行环境的任何计算机系统上运行。任何 JAVA代
码会被解释成一种中间语言, 然后通过不同机子的特定环境 (如机 器指令)运行程序。实现方便移植的特点。
8. 解释性。JAVA解释器能直接运行目标代码指令。链接程序通常 比编译程序所需资源少。
9.
高性能。如果解释器速度不慢,JAVA可以在运行时直接将目标
300,000 代码翻译成机器指令。 SUN
用直接解释器一秒钟内可调用
个过程。
10. 多线程: JAvA
提供的多线程功能使得在一个程序里可同时执
行多个小任务。 多线程带来的更大好处是更好的交互性能和实时控 制性能。
11.动态:动态特性允许程序动态地装入运行过程中所需要的类。
在运行时确定引用的好处是可以使用已被更新的类, 而不必担心会
该 影响原有的代码。如果程序连接了网络中另一系统中的某一类,
类的所有者也可以自由地对该类进行更新,
的程序崩溃。
缺点
1. 存在非对象的数据类型
2. 不能够用一种描述方法来表达各种类(CLASS
3. 无法继承2个以上的类的装配
而不会使任何引用该类
JAVASCRIPT
特点:
直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内
置支持类型
主要用途:
1.
2.
3.
4.
5.
6.
7.
嵌入动态文本于HTM页面。⑷
对浏览器事件做出响应。⑷
读写HTML元素。⑷
在数据被提交到服务器之前验证数据。⑷
检测访客的浏览器信息。⑷
控制cookies,包括创建和修改等。[4]
基于技术进行服务器端编程。[
优点:
1. 减少网络传输
2. 方便地操纵HTML寸象
3. 支持分布式运算和处理 缺点:
1. 不同浏览器支持程度不同
2.
WEB安全性
框架介绍:
(1) .J
QUERY
<1>. 介绍
JQUERY是一款同PROTOTYPE一样优秀JS开发库类,特别是对CSS和
XPATH
的支持,使我们写
JS
变得更加方便!如果你不是个
JS
高手 又想写出优秀的
JS
效果,那么 JQUERY
可以帮你达到目的! 并且简 介的语法和高的效率一直是
JQUERY追求的目标。
<2>. 优点:注重简介和高效,
JS
效果有
YUI-EXT
的选择,因为
YUI-
EXT
重用了很多
J
QUERY
的函数
<3>. 缺点:据说太嫩,历史不悠久。
(2) .EXT
<1>. 介绍
基于 YAHOOUI 的扩展包
YUI
-EXT
是具有 CS 风格的 WEB
用户界面 组件,能实现复杂的LAYOUT布局,界面效果可以和BACKBASE媲美, 而且使用纯
JAVASCRIPT
代码开发。真正的可编辑的表格 EDIT
GRID,
支持XML和JSON数据类型,直接可以迁入
&ID。许多组件实现了 对数据源的支持,例如动态的布局,可编辑的表格控件,动态加载 的TREE控件、动态拖拽效果等等。从 1.0
BETA版开始同JQUERY合 作,推出基于
J
QUERY
的 EXT
1 .0 ,提供了更多有趣的功能。
<2>. 优点:结构化,类似于
JAVA
的结构,清晰明了,底层用到了
JQUER Y的一些函数,使整合使用有了选择,最重要的一点是界面太 让让人震撼了。
<3>. 缺点:太过复杂,整个界面的构造过于复杂。
(3).D
OJO
<1>. 介绍
DOJO
是目前最为强大的 JS 框架,它在自己的 WIKI
上给自己下了一 个定义,DOJO是一个用JAVASCRIPT编写的开源的 DHTMIX具箱。DOJO
很想做一个“大一统”的工具箱,不仅仅是浏览器层面的,野心还 是很大的。
DoJo
包括 AJAX、 BRoWSE、REVENT、 WiDGET
等跨浏览器 Api, 包括了
JS 本身的语言扩展,以及各个方面的工具类库,和比较完 善的 Ui 组件库,也被广泛应用在很多项目中,他的 Ui 组件的特 点是通过给HTML标签增加TAG的方式进行扩展,而不是通过写 JS 来生成, DoJo
的 Api 模仿 JAVA
类库的组织方式。 用 DoJo
写 WEB
OS可谓非常方便。DOJO现在已经4.0 了,DOJO强大的地方在于界 面和特效的封装,可以让开发者快速
构建一些兼容标准的界面。
< 1 >.优点:库相当完善,发展时间也比较长,功能强大,据说利用 DoJo
的
io
.
BiND() 可以实现
CoMET
看见其功能强大非一般,得到 IBM和SUN的支持。
<2>.缺点:文件体积比较大,200多KB,初次下载相当慢,此外,
DOJO
的 类库使 用显 得不 是 那么 易用 , JS 语法 增 强方 面不 如
PROTOTYPE
(4).P
ROTOTYPE
<1>. 介绍
它是一个非常优雅的 JS库,定义了 JS的面向对象扩展,DOM操 作API,事件等等,以 PROTOTYPE为核心,形成了一个外围的各种 各样的
JS 扩展库,是相当有前途的 JS 底层框架,值得推荐,感 觉也是现实中应用最广的库类( RoR 集成的 AJAXJS 库),之上还
有SCRIPTACULOUS实现一些JS组件功能和效果。
<2>. 优点:基本底层,易学易用,甚至是其他一些
JS
特效开发包 的底层,体积算是最小的了。
<3>. 缺点:如果说缺点,可能就是功能是他的弱项
(5).
DSCRIPTACULoUS
<1>. 介绍
SCRIPTACULOUS是基于
PROTOTYPEJS
框架的 JS 效果。包含了 6 个
JS
文件,不同的文件对应不同的
JS
效果,所以说,如果底层用
PROTOTYP啲话,做
JS效果用 SCRIPTACULOUS那是再合适不过的了, 连大名鼎鼎的
DIGG
都在用他,可见不一般
<2>.优点:基于
PROTOTYPE是最大的优点,由于使用
泛性,无疑对用户书锦上添花。
<3>. 缺点:刚刚兴起,需要时间的磨练
PROTOTYPE的广
(6) .M
OCHIKIT
<1>. 介绍
MOCHIKIT
自称为一个轻量级的
JS
框架。 MOCHIKIT
主要受到 PYTHON
和PYTH ON标准库提供的很多便利之处的启发,另外还缓解了浏览 器版本之间的不一致性。其中的 尤其方便,能够以
比原始JAVASCRIPT更友好的方式处理 DOM寸象。大部 分都是针对XHTML文档定制的,如果与MDCHKJT和AJAX结合在一 起,使用XHTML包装的微格式尤其方便。MDCHIKIT可以直接对字符 串或者数字格式化输出,比较实用和方便。它还有自己的
JS
代码 解释器
<2>.优点:这部分很实用,简介也是很突出的
<3>. 缺点:轻量级的缺点
(7) .M
OOTOOLS
<1>. 介绍
MOOTOOLS
是一个简洁,模块化,面向对象的 JAVAScRiPT
框架。它能
够帮助你更快, 更简单地编写可扩展和兼容性强的 JAVAScRiPT
代码。
MDOTOOLS跟PROTOTYPEJS相类似,语法几乎一样。但它提供的功能要
比PROTOTYPEJS多,而且更强大。比如增加了动画特效、拖放操作
—O
<2>.优点:可以定制自己所需要的功能,可以说是
增强版。
<3>. 缺点:不大不小,具体应用具体分析。
PROTOTYPEJS的
(8).M
OO.
FX
<1>. 介绍
MDOFX是一个超级轻量级的JAVASCRIPT特效库(7K),能够与
PROTOTYPEJS或MOOTOOL框架一起使用。它非常快、易于使用、跨浏 览器、符合标准,提供控制和修改任何 HTML元素的CSS属性,
包括颜色。 它内置检查器能够防止用户通过多次或疯狂点击来破坏 效果。MOOFX整体采用模块化设计,所以可以在它的基础上开发你 需要的任何特效。
<2>. 优点:小块头有大能耐
<3>. 缺点:这么小了,已经不错了
PERL
特点:
集成了正则表达式的功能
主要用途:
WEB编程、数据库处理、XML处理以及系统管理
优点:
PERL
追求的是简单 , 解决一个一般的问题用它几行代码就完成了 . 一个稍复杂一点的问题代码也不会超过一屏 ! 在软件测试中, PERL
通常是非常重要的角色。 一般一个测试通用函数库就要分十几个文 件,甚至更多,包含多达上千个定制功能。而这些函数将在主函数 运行时,不定数量的被调用。几乎可以说,一切自动过程都是由
PERL自己完成的,可见其功能的强大和在当今计算机技术高速发展 的时期仍然发挥着重要的作用。
PERL
最初是当做一种 UNIX
的脚本语言设计的,但是它早就移植到 大多数其它操作系统里了。因为 PERL
几乎可以在任何地方运行,
所以 PERL
可以说是当今最具有移植性的编程环境;要想写可移植 的
C/C++ 程序,你得在程序里加上一大堆 #IFDEF
标签来区分不同
的系统;要想写可移植的 JAVA
程序,你必须理解每种新的 JAVA
实 现的特质;要想写可移植的
SHELL,你可能要记住每条命令在每种
操作系统上的语法,走运的时候你可能可以找到一些公共的东西; 要想写
可移植的 VISUAL
BASIC
程序,需要对“移植”有个更灵活的 定义。
让我们很高兴的是 PERL
避免了所有这些问题,同时还保留了这些 语言中的许多优点, 同时还有一些自己的特色。 PERL
的特色来自许 多方面:它的特性集的工具, PERL
社区的创造性, 以及开源运动的 大环境。不过,许多这些特性都是混合的东西; PERL
的身世复杂, 它总是把事物看成是优点的不同方面, 而不是弱点。 PERL
是“背黑 锅我来”的语言。如果你觉得自己陷入一团乱麻之中,非常渴望自 由,那么请使用 PERL。
PERL
是跨文化的。 PERL
的爆炸性增长很大程度上是因为那些前 UNIX
系统程序员的渴望, 他们希望从他们的 “老家” 带着尽可能多 的东西。对于他们而言, PERL
是可移植的 UNIX
文化蒸馏器,是 " 此路不通 "的沙漠中的绿洲。从另外一个角度来看, PERL
还可以从
另外一个方向运转:在 WNDOWS上工作的WEB设计者通常会非常开 心地发现他们的 PERL
程序可以不加修改地在 UNIX
服务器上跑。
尽管 PERL
在系统程序员和
WEB
设计师中间非常流行,但这只是因 为是他们最早发现 PERL的,PERL可以用于更广泛的用途。从 PERL
最早的文本处理语言开始, 它已经发展成为一种非常复杂的, 通用 的编程语言,以及完整的开发环境,包括调试器,调节器,交叉引 用,编译器,库,语法提示编辑器,以及所有其它“真正”的编程 语言所具有的所有挂勾, 只要你
需要。 当然这些东西都是让我们可 能处理难的问题的东西,而且很多其它语言也可以做到这一点。
PERL
之所以成为 PERL
是因为它从来不会因为保持简单事情简单化 而丢失其他方面的特性。
因为 PERL
既强大又好用,所以它被广泛地用于日常生活的方方面 面,从宇航工程到分子生物学,从数学到语言学,从图形处理到文 档处理,从数据库操作到网络管理。很多人用 PERL
进行快速处理
DNA序列,网 那些很难分析或转换的大批量数据,不管你是处理
页,还是猪肚皮的未来都无所谓。实际上,在 PERL
社区有一个笑
话就是,下次股市大崩盘就很有可能是哪个家伙写的脚本里头有
BUG造成的。(不过,乐观点来看就是,任何还在失业的股票分析师 仍然有可以利用的技巧。 )
PERL
的成功有许多原因。 PERL
早在开源软件的名字出现之前就已 经是一个成功的开源项目了。
你可以在任何合适的场合使用
PERL
是自由的,并将永远自由下去。
PERL,只需要遵守一个非常自由的版
权就可以了。如果你在从事商业活动并且还想使用 PERL,那么用就
是了。你可以把 PERL
嵌入到你写的商业软件中而不需要支付任何 费用也没有任何限制。 如果你碰上一个 PERL
社区解决不了的问题, 那你也还有最后的一招:源程序本身。 PERL
社区不会在“升级”
的伪装下租给你它们的商业秘密。 而且 PERL
社区也不会“停业 ”, 更
不会让你孤立无援。
PERL
是自由软件这一点无疑对它是有帮助的。 但这一条并不足以解
释 PERL
现象,因为许多自由软件包没有能繁荣起来。
由;而且好玩。人们觉得自己在
PERL
不仅自
PERL
里可以有创造力,因为它们
有表达的自由: 他们可以选择是为计算机速度优化还是为程序员的
速度优化,是冗长还是简洁,是选择可读性还是可维护性,或者选 择复用性,移植性,接受性和传授性等等。假如你进入一次模糊的 PERL
比赛,甚至你还可以为模糊性做优化。
PERL
可以给予你所有这些自由, 因为它是一门有着分裂人格的语言。
PERL
同时是很简单并且很富有的语言。 PERL
从其它地方拿来好主 意,然后把它们安装到易用的框架里面。 对于只是喜欢她的人来说, PERL
是实用抽取和报表语言 ( PRACTICALEXTRACTOINANDREPORTLANGUAG)E。 对那些热爱她的人而言,她是变态电子垃圾制造者( PATHOLOGICALLY
ELECTRICRJBBISHLISTER)。在少数人眼里,PERL是毫无意义的重复练 习。不过世界需要一点点冗余。精简主义者总是想把事物分隔开。 而我们则总是企图把它们合并到一起。
PERL
之所以是简单的语言是有很多原因的。 比如你用不着知道什么 特殊
的指令就可 以编译 PERL
程序-- 只要把它当做批处理或者
sHELL
脚本执行就可以了。 PERL
的类型和结构很容易使用和理解。
PERL
对你的数据没有任何限制 -- 你的字串和数组可以要多长就多 长(只要你有足够的内存) ,而且它们都会自动增长。 PERL
不会强 迫你学习新的语法和语意, PERL
改从许多其它你已经熟悉的语言里 (比如 c,
AWK,
BAsic 和 PYTHON, 英文,希腊语等)借来语法。实
际上,任何程序员都可以从书写良好的
义。
PERL
代码段中读懂它的含
最重要的是,你不用先学习所有 PERL
的东西就可以开始写有用的 程序。
你可以写很小的 PERL
程序。你也可以象小孩那样写 PERL
程 序,我们保证不会笑话你。或者更准确地说是,我们绝不会笑话小 孩做事情的创造性。 PERL
里的许多观点都是从自然语言中借来的, 其中一条最好的观点就是只要你能把自己的意思表述清楚, 那么你 就可以使用这些语言的一个子集。 PERL
文化可以接受任何熟练程度 的成员。我们不会在你背后放个语言警察。如果你的老板不炒你, 而且你的 PERL
脚本也能完成工作,那么它就是“正确”的。
尽管 PERL
很简单,但它仍然是一种特性很丰富的语言,如果你想 用那些特性的话, 那你就要学习一些东西。 这也是把难题变简单的 学费。虽然你要想把所有 PERL
能做的事情吸收还需要一些时间, 但到你需要这些功
能的时候你就会非常开心地发现
做这些事情了。
PERL
已经可以
由于 PERL
的继承性,就算它只是用做数据归纳语言的时候也有丰 富的特性, PERL
一开始就设计成可以浏览文件, 扫描大量文本并且 生成动态数据以及打印出这些数据的良好格式化的报表。 不过, 随 后
PERL
就开始风行, 于是它就成了可以操作文件系统, 进程管理,
数据库管理,进行 C/S 编程和安全编程,
WEB
信息管理,甚至可以 进行面向对象和面向功能的编程的语言。 而且这些功能并非只是在 PERL
这边,每种新功能都和其它东西交流得很好,别忘了
一开始就是设计成胶水语言的。
PERL
从
而且 PERL
并不仅仅只能黏合它自己的特性。 PERL
是设计成可以用 模块扩展的语言。 你可以用 PERL
快速设计, 编写,调试和部署 PERL
应用,
并且你还可以在需要的时候很方便地扩展这些应用。 你可以
在其它语言里嵌入
PERL,而且你也可以在
PERL里嵌入其它语言。 通过模块输入机制,你可以把这些外部的扩展当做内置于
特性。那些面向对象的外部库在
征。
PERL
的
PeRL
内部仍然保持面向对象的特
PeRL
还在许多其它方面协助你。 和严格的每次执行一条命令的命令 文件
和
SHeLL
脚本不同的是, PeRL
先把你的程序快速编译成一种内 部格式。和其它任何编译器一样,这个时候还进行各种优化,同时 把碰到的任何问题反馈给你。一旦 PeRL
的编译器前端对你的程序
表示满意了, 它就把这些中间代码交给解释器执行 (或者是给其它 的能生成C或者字节码的模块后端)。听起来挺复杂,不过PERL的 编译器和解释器干这些活效率相当高,
程几乎都是以秒计。再加上
我们的编译 -运行 -修改的过
PeRL
的许多其他开发特性,这种快速
的角色转换很适合做快速原型设计。 然后随着你的程序的成熟, 你 可以逐步拧紧身上的螺母, 减少散漫增强纪律。 如果你做得好, PERL
也能帮你这个忙。
PERL
还可以帮你写更安全的程序。 除了其它语言提供的典型的安全 接口之外,PERL还通过一种跟踪数据的机制给你提供预防意外安全 错误的保护,这样就可以在灾害发生之前预防其发生。最后,
还可以让你设置一个特殊的防护隔段运行那些来源不明的
码,以此来杜绝危险操作。
PERL
PERL
代
不过,偏执一点儿说, PERL
帮你的大部分内容和 PERL
本身没有什
么关系,而是和使用 PERL
的人有关。坦率地说,
可以说是地球上最热心的人了。如果
PERL
社区的人们
PERL
运动里面有那么一点点
宗教色彩的话, 那么这就是它的核心了。 LARRY
希望 PERL
社区像一 小片天堂那样运转, 目前看来他的愿望基本上是实现了。 我们也请 你为此
做出自己的努力。
PERL之所以强大,是因为有CPAN,CPANt面有无数的开源模块,从 科学计算到桌面应用到网络等等各个方面都有大量的模块
世界上也还有无数的人在向上面添加模块
! 并且
!如果你想要用PERL实
现某功能,不用自己做,在CPAN上面搜一搜,多半都会得到已有 的结果! CPAIN "THECOMPREHENSIVEERL
ARCHIVENETWORK全面的 PERL 存
档网络)是查找任何 PERL
有关的东西的中心仓库。它包含从整个
PERL
社区收集来的智慧:成百上千的 PERL
模块和脚本,相当于好
几本书的文档,以及整个 PERL
发布。如果有东西是用 PERL
写的, 而且这个东西很有用而且是自由的,
缺点:
也正是因为 PERL
的灵活性和“过度”的冗余语法,也因此获得了
WRITE-
ONLY的“美誉”,因为许多那么它很有可能就在 CPAN上
PERL程序的代码令人难以阅读,实 现但PERL同样可以将 相同功能的程序代码长度可以相差十倍百倍。
代码书写得像PYTHON或
RJBY等语言一样优雅。
很多时候,PERL.
EXE进程会占用很多的内存空间,虽然只是一时, 但是感觉不好。


发布评论