您好,欢迎访问三七文档
PYTHON特点:面向对象、解释型主要用途:1.图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理。2.数学处理:NumPy扩展提供大量与许多标准数学库的接口。3.文本处理:python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用python进行XML程序的开发。4.数据库编程:程序员可通过遵循PythonDB-API(数据库应用程序编程接口)规范的模块与MicrosoftSQLServer,Oracle,Sybase,DB2,MySQL、SQLite等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。5.网络编程:提供丰富的模块支持sockets编程,能方便快速地开发分布式应用程序。很多大规模软件开发计划例如Zope,Mnet及BitTorrent.Google都在广泛地使用它。6.Web编程:应用的开发语言,支持最新的XML技术。7.多媒体应用:Python的PyOpenGL模块封装了“OpenGL应用程序编程接口”,能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。8.pymo引擎:PYMO全称为pythonmemoriesoff,是一款运行于SymbianS60V3,Symbian3,S60V5,Symbian3,Android系统上的AVG游戏引擎。因其基于python2.0平台开发,并且适用于创建秋之回忆(memoriesoff)风格的AVG游戏,故命名为PYMO。9.黑客编程:python有一个hack的库,内置了你熟悉的或不熟悉的函数,但是缺少成就感。优点:1.简单:PYTHON是一种代表简单主义思想的语言。阅读一个良好的PYTHON程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。2.易学:PYTHON极其容易上手,因为PYTHON有极其简单的说明文档。3.速度快:PYTHON的底层是用C语言写的,很多标准库和第三方库也都是用C写的,运行速度非常快。4.免费、开源:PYTHON是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。5.高层语言:用PYTHON语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。6.可移植性:由于它的开源本质,PYTHON已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。这些平台包括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开发的ANDROID平台。7.解释性:一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。8.运行程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而PYTHON语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。9.在计算机内部,PYTHON解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。这使得使用PYTHON更加简单。也使得PYTHON程序更加易于移植。10.面向对象:PYTHON既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。11.可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以部分程序用C或C++编写,然后在PYTHON程序中使用它们。12.可嵌入性:可以把PYTHON嵌入C/C++程序,从而向程序用户提供脚本功能。13.丰富的库:PYTHON标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、TK和其他与系统有关的操作。这被称作PYTHON的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如WXPYTHON、TWISTED和PYTHON图像库等等。14.规范的代码:PYTHON采用强制缩进的方式使得代码具有较好可读性。而PYTHON语言写的程序不需要编译成二进制代码。缺点1.单行语句和命令行输出问题:很多时候不能将程序连写成一行,如IMPORTSYS;FORIINSYS.PATH:PRINTI。而PERL和AWK就无此限制,可以较为方便的在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#特点:面向对象的、运行于.NETFRAMEWORK之上,面向对象主要用途:快速地编写各种基于MICROSOFT.NET平台的应用程序,MICROSOFT.NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。优点: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可以在运行时直接将目标代码翻译成机器指令。SUN用直接解释器一秒钟内可调用300,000个过程。10.多线程:JAVA提供的多线程功能使得在一个程序里可同时执行多个小任务。多线程带来的更大好处是更好的交互性能和实时控制性能。11.动态:动态特性允许程序动态地装入运行过程中所需要的类。在运行时确定引用的好处是可以使用已被更新的类,而不必担心会影响原有的代码。如果程序连接了网络中另一系统中的某一类,该类的所有者也可以自由地对该类进行更新,而不会使任何引用该类的程序崩溃。缺点1.存在非对象的数据类型2.不能够用一种描述方法来表达各种类(CLASS)3.无法继承2个以上的类的装配JAVASCRIPT特点:直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型主要用途:1.嵌入动态文本于HTML页面。[4]2.对浏览器事件做出响应。[4]3.读写HTML元素。[4]4.在数据被提交到服务器之前验证数据。[4]5.检测访客的浏览器信息。[4]6.控制cookies,包括创建和修改等。[4]7.基于Node.js技术进行服务器端编程。[优点:1.减少网络传输2.方便地操纵HTML对象3.支持分布式运算和处理缺点:1.不同浏览器支持程度不同2.WEB安全性框架介绍:(1).JQUERY1.介绍JQUERY是一款同PROTOTYPE一样优秀JS开发库类,特别是对CSS和XPATH的支持,使我们写JS变得更加方便!如果你不是个JS高手又想写出优秀的JS效果,那么JQUERY可以帮你达到目的!并且简介的语法和高的效率一直是JQUERY追求的目标。2.优点:注重简介和高效,JS效果有YUI-EXT的选择,因为YUI-EXT重用了很多JQUERY的函数3.缺点:据说太嫩,历史不悠久。(2).EXT1.介绍基于YAHOOUI的扩展包YUI-EXT是具有CS风格的WEB用户界面组件,能实现复杂的LAYOUT布局,界面效果可以和BACKBASE媲美,而且使用纯JAVASCRIPT代码开发。真正的可编辑的表格EDITGRID,支持XML和JSON数据类型,直接可以迁入GRID。许多组件实现了对数据源的支持,例如动态的布局,可编辑的表格控件,动态加载的TREE控件、动态拖拽效果等等。从1.0BETA版开始同JQUERY合作,推出基于JQUERY的EXT1.0,提供了更多有趣的功能。2.优点:结构化,类似于JAVA的结构,清晰明了,底层用到了JQUERY的一些函数,使整合使用有了选择,最重要的一点是界面太让让人震撼了。3.缺点:太过复杂,整个界面的构造过于复杂。(3).DOJO1.介绍DOJO是目前最为强大的JS框架,它在自己的WIKI上给自己下了一个定义,DOJO是一个用JAVASCRIPT编写的开源的DHTML工具箱。DOJO很想做一个“大一统”的工具箱,不仅仅是浏览器层面的,野心还是很大的。DOJO包括AJAX、BROWSER、EVENT、WIDGET等跨浏览器API,包括了JS本身的语言扩展,以及各个方面的工具类库,和比较完善的UI组件库,也被广泛应用在很多项目中,他的UI组件的特
本文标题:各主流编程语言对比
链接地址:https://www.777doc.com/doc-4672543 .html