Python企业应用的优缺点
Python是软件开发领域一朵诱人的奇葩:人们经常把Python看作是一种起到缝合作用的严格脚本语言,不过却很少有人意识到Python已经足够强大到应用于工业级软件开发领域。Python的年岁比Java老,到现在,这种语言已经发展出了规模虽然不大但仍然在成长中的自描述企业应用Pythonistas。
虽然人们经常把Python同Perl相比较,把它们看作一种专门应用于Internet的脚本语言,然而,Python已确实在大规模的软件开发领域占据了自己的一席之地。这种脚本编程语言具有以下显著特点:
*面向对象
*解释语言
*交互式
*模块化
*动态性
*高级语言
*可移植
*可用C和C++扩展
Python整合了各种模块、异常、动态输入、高级动态数据类型和类等概念。它同多种系统函数和系统库乃至各类Windows系统建立了接口。
如果说Python并不一定能渗透到任何计算领域的话,至少在企业开发这一行它的处境就是这样。在企业开发领域,Python还被当成一种可以替换Perl的脚本语言。本文就对Python构造企业级应用这一问题做简短阐述。
优点
Python语言的某些特点使其成为企业应用的合理选择:
*免费可用(像Perl一样,Python也是开放源代码软件)。
*稳定(Python目前已发布到2.2版,我刚才已经提到,它的年头比Java还老)。
*良好地支持对象、模块和其他可重用机制。
*采用C和Java语言的集成方便性和扩展性。
以上这些特性非常有利于Python在企业中的应用,不过,Python还具有一些适合企业应用但却不太令人注意的其他合理因素。
开发和维护的成本节约
IT部分通常要完成的任务相当繁重但支撑这些工作的资源却很少,这已经成为公开的秘密。任何承诺提高编码效率、降低软件总成本的IT解决方案都应该进行周到的考虑。Python所具有的一个显著优势就是可以在企业的软件创建和维护阶段节约大量资金,而这两个阶段的软件成本占到了软件整个生命周期中总成本的50%到95%。
Python清晰可读的语法使得软件代码具有异乎寻常的易读性,甚至对那些不是最初接触和开发原始项目的程序员都能具有这样的强烈感觉。虽然某些程序员反对在Python代码中大量使用空格,不过,几乎人人都承认Python代码的可读性远胜于C或者Java,后两者都采用了专门的字符标记代码块结构、循环、函数以及其他编程结构的开始和结束。提倡Python的人还宣称,采用这些字符可能会产生显著的编程风格差异,使得那些负责维护代码的人遭遇代码可读性方面的困难。
Python明晰的语法使其成为一种学习曲线平和的编程语言。有经验的程序员甚至可能在一天之内就掌握Python的基础知识,至多不过一周作用就可以上手,而编程语言的专家则肯定会比他掌握C、C++、Java甚至Perl要快很多。
Python因其语法的明晰而获得的最大好处或许该算是开发时间的大大降低了。一名从事企业级应用程序开发工作的开发人员告诉我,他所在单位的开发时间因为Python的采用而大大节约,同时却并没有给软件性能带来任何负面影响,他说:“就我们的业务而言,快速地开发出新产品比开发出性能惊人的软件产品要重要得多,开发时间相比软件的优化要贵得多(以每小时计算)。
对开发速度采用何种评价标准一直是个很难确定的问题,不过通常情况下,普遍认为开发Python应用程序的速度大约是用Java开发同类应用程序速度的10倍。要是相比C/C++节约的时间就更多了。
内容管理框架
用Python创建的Zope是开放源代码领域使用最广泛和最容易理解的内容管理框架。这种工具可以让了解Python的程序员以相比JSP/ASP更少的时间来创建和部署具有高度交互性的网站,在这种框架下,网站属主可以非常轻松地修改网站的内容而无须程序员的介入。
Zope投入实用已经有若干年的时间了,目前,特别在欧洲地区已经获得了普遍的应用。Zope在美国也赢得了广泛的欢迎,目前对Zope的开发主要集中于简化开发过程和进一步将功能同内容的表示相分离,从而再度增加了Zope的普及率,同Python一样Zope也是开放源代码软件。
Zope确实引入了相当的系统负荷,从而在开发期间降低了系统的性能,但是采用某些技术可以有效地把部署网站时产生的问题最小化。
Jython
在考虑企业中的Python应用时,有一点往往被人们所忽略了,这就是Python的变种Jython。Jython完全用Java语言编写,实现快速地开发和应用程序测试,以远低于Java编辑-编译-测试的开发时间提升Java类库的运用。Jython还紧凑地集成了Python和Java的代码,令两者都可以充分利用对方的优点。而这正是Microsoft.NET的CLR技术所要实现的目标之一,但今天对Python来说这一切已经成为现实。
缺点
显然,Python的企业应用也应该严肃对待反对方的意见。反对Python作为企业级编程可行语言的主要观点如下:
*相比其他编程语言,比如Java,Python的开发人员少很多。
*缺乏真正的多处理器支持。
*缺乏商业支持。
*软件性能(不过各种评测都反复表明Python在大多数应用中堪与Java媲美)。
当然,缺乏商业支持是大多数开放源代码技术都面临的问题。对Python而言,一时也找不出个应景的法子。然而,最近一些关注Python的欧洲公司新组成了一个商务团体,也许这一举动标志着Python发展的一个崭新阶段(请参考Python商务论坛的网站)。
缺乏预包装的解决方案
PHP在企业软件领域赢得了辉煌的成功,主要原因就在于其广泛实用的产品门类,比如讨论板、聊天服务器和分组日历以及即时消息系统等。相比之下,Python提供的解决方案就少多了。Python语言的分发版中确实包含了一些扩展的类库,越来越多的程序员也在致力于开发等价PHP的Python工具,但是考虑到市场的时间紧迫性,而且你所面临的问题已经有现成的PHP解决方案可以对付,那么PHP自然会成为你的首选。
以上内容为大家介绍了Python企业应用的优缺点,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。
相关推荐HOT
更多>>Ppython await是什么?
await的解释:await用来声明程序挂起。比如异步程序执行到某一步时需要等待的时间很长,就将此挂起,去执行其他的异步程序。await后面只能跟异...详情>>
2023-11-06 20:47:43Python企业应用的优缺点
Python是软件开发领域一朵诱人的奇葩:人们经常把Python看作是一种起到缝合作用的严格脚本语言,不过却很少有人意识到Python已经足够强大到应用...详情>>
2023-11-06 18:04:55Python自定义模块导入方法
Python模块是一个Python文件,以.py结尾,包括了Python对象定义和Python语句,能让Python代码段更有逻辑性、更好用、更易懂,既然Python模块有...详情>>
2023-11-06 12:51:53Python中yield的用法详解
首先我要吐槽一下,看程序的过程中遇见了yield这个关键字,然后百度的时候,发现没有一个能简单的让我懂的,讲起来真TM的都是头头是道,什么参...详情>>
2023-11-06 11:43:31