自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

與Java相比Jython性能表現(xiàn)

開發(fā) 后端
本文介紹了Jython性能,并列舉了與Java語言相比Jython性能最出色的優(yōu)點(diǎn),

為什么需要Jython,由于繼承了Java和Python二者的特性,Jython性能顯得很優(yōu)秀。

對(duì)Java類的無縫存取。

在Java中實(shí)現(xiàn)Python可以看到有趣的Java反射API的作用。反射使Jython能無縫地使用任何Java類。Jython從CPython中繼承了很多優(yōu)越性能,但CPython不像別的專為Python所寫的一樣,在C和Python之間有一些問題限制了C庫函數(shù)的使用。在Jython中真正解決了這個(gè)問題,使編程的效率和生產(chǎn)力得到了很大改善,Jython性能有了很大提高。

由于與Java的無縫集成,Jython使任何部署了Java應(yīng)用和框架的公司受益而不需要額外的工作。接受任何一種部門的編程語言,對(duì)任何一個(gè)公司而言都是不容易的,需要深思熟慮,因?yàn)檫@牽涉到整體結(jié)構(gòu)、服務(wù)器和外圍的工具。Jython作為Java的一個(gè)無縫集成的語言,可以在已存在的Java應(yīng)用上無縫增加而不需要重大抉擇。很多公司都花費(fèi)了很多資金來建立Java的應(yīng)用,這使采用CPython、Perl、Ruby、PHP和其他不能透明地集成已有Java實(shí)現(xiàn)的高級(jí)語言的效益降低,吸引力下降。而Jython對(duì)已存在的Java框架進(jìn)行補(bǔ)充,且二者能無縫地結(jié)合,由此能看到Jython性能的優(yōu)秀表現(xiàn)。

效率

計(jì)算編程語言的效率是一個(gè)很廣泛的課題,它要考慮程序員的時(shí)間、總體復(fù)雜性、代碼的行數(shù)、可用性、可維護(hù)性和運(yùn)行效率。當(dāng)然很多人不同意賦予這些變量的權(quán)重,經(jīng)常是在不同的情況下偏重有所不同。Jython性能中,運(yùn)行速度是可以與其他高級(jí)語言相比的,但速度并不是高級(jí)語言的目標(biāo)和特點(diǎn)。區(qū)別在于當(dāng)加速一個(gè)需要的應(yīng)用時(shí),將Jython代碼翻譯成Java更有效,這是由于Jython與Java的無縫集成性。另外對(duì)所有有效的Jaya類的直接訪問增加了改進(jìn)已存在的類的可能性。

動(dòng)態(tài)類型

在Jython中你不必像在Java中那樣聲明類型,因?yàn)轭愋褪窃谶\(yùn)行時(shí)決定的。Jython的列表和映射類型是高級(jí)的多態(tài)的Java類的實(shí)例。多態(tài)意味著對(duì)象能對(duì)不同的數(shù)據(jù)類型工作。例如Jython的list類型可以是一個(gè)數(shù)字的序列、字符串的序列、字符的序列或它們的組合。動(dòng)態(tài)和多態(tài)性的列是對(duì)編程的極大的貢獻(xiàn),從很多已放棄顯式的靜態(tài)類型定義的高級(jí)語言中可看出它減少了代碼的行數(shù),降低了復(fù)雜性,提高了程序的效率,這是Jython性能又一優(yōu)秀表現(xiàn)。

內(nèi)省和動(dòng)態(tài)執(zhí)行

Jython性能的優(yōu)秀還表現(xiàn)在,Jython有一些允許方便的對(duì)象內(nèi)省和代碼的動(dòng)態(tài)執(zhí)行的內(nèi)部函數(shù)。內(nèi)省是發(fā)現(xiàn)一個(gè)對(duì)象信息的能力,而動(dòng)態(tài)執(zhí)行是執(zhí)行在運(yùn)行時(shí)產(chǎn)生的代碼的能力。該功能很大程度上減少了代碼的行數(shù)并增加了程序的可靠性,使其更加方便維護(hù)。這也能使數(shù)據(jù)和程序結(jié)構(gòu)或邏輯更好的集成而不影響重用性,因?yàn)樗械臇|西都是在運(yùn)行時(shí)決定的。

***類函數(shù)和函數(shù)編程

Jython與Python一樣有***類函數(shù)。***類函數(shù)是指能像變量一樣的可調(diào)用的對(duì)象。***類函數(shù)在對(duì)事件處理和其他情況下有意義,這導(dǎo)致增加了Java內(nèi)部類的功能。雖然Java的內(nèi)部類與***類函數(shù)類似,但它在方便性與靈活性方面有很大的不足,這是由于Jython中的***類函數(shù)減少了Jython中的語法開銷,大大提高了Jython性能。

Jython也包括了所有函數(shù)編程所需要的工具。這意味著強(qiáng)制的面向?qū)ο蟮暮瘮?shù)編程在Jython中得到支持。這顯然在教學(xué)上很有意義,它使Jython程序員能選擇最適合于特定問題的編程語言而不是由語言強(qiáng)加。函數(shù)化的工具如列表包含、lambda表單、map、filter和reduce也對(duì)減少代碼的行數(shù)、降低復(fù)雜性和名字重綁定數(shù)(名字重綁定有很大副作用)起到很大的作用。

學(xué)習(xí)周期短

任何Java程序員在數(shù)日內(nèi)就能熟悉Jython。由于有很多內(nèi)容,關(guān)鍵在于細(xì)節(jié)的學(xué)習(xí),但僅僅用幾天的時(shí)間就能擁有Jython的快速開發(fā)功能確實(shí)是很有價(jià)值的。對(duì)于那些從事測(cè)試和技術(shù)支持的小組通常并沒有很多時(shí)間去學(xué)習(xí)復(fù)雜的Java代碼,但通過對(duì)Jython的學(xué)習(xí)能在開銷很少的情況下很快提高公司的技術(shù)水平和效率。

寫一次,處處可用

由于Jython是用Java編寫的且由于其可編譯成Java字節(jié)碼,因此Jython也具有Java的“寫一次,處處可用”的特點(diǎn)。Jython能運(yùn)行在任何可兼容的Java1.1‘或更高的Java虛擬機(jī)(JVM)版本的平臺(tái)上,具有非常好的性能。另外你可將Jython應(yīng)用編譯成自足的字節(jié)碼,它能運(yùn)行在任何兼容的JVM上。在Linux上編譯的應(yīng)用能運(yùn)行在有兼容JVM的任何其他平臺(tái)上。

Java安全性

Java的安全性是特別的而且越來越重要。從沙箱到信號(hào),Jython有能力使用Java的特別的安全框架。

代碼清晰性

代碼的清晰性是Python***的優(yōu)點(diǎn),當(dāng)然也是Jython性能的***的優(yōu)點(diǎn)。不必要的標(biāo)點(diǎn)和行都避免了。Jython代碼在可讀性和清晰性方面近似于自然語言。這起源于Python對(duì)代碼塊和語句的簡(jiǎn)單描繪的承諾??s排標(biāo)記代碼塊,換行符標(biāo)記新的語句,在此之上,語法通常支持。

【編輯推薦】

  1. 在代碼中深入學(xué)習(xí)Jython語法
  2. 在Eclipse下配置Jython的簡(jiǎn)易流程
  3. 使用Jython腳本管理WebSphere資源
  4. 如何在Java中調(diào)用Jython
  5. 略談Jython語言:什么是Jython?
責(zé)任編輯:佚名 來源: IBM中國
相關(guān)推薦

2009-07-14 18:45:26

Jython開發(fā)特性

2009-07-15 18:03:40

Jython功能

2009-07-17 13:45:39

Jython性能測(cè)評(píng)

2009-10-09 15:18:05

Jython

2009-07-10 13:09:53

.Net與Java S

2011-06-09 09:28:24

LevelDB

2009-07-10 17:33:39

jython語言什么是JythonJython

2009-07-16 13:09:46

Jython安裝

2012-05-18 10:14:47

JythonJavaJVM

2012-04-16 15:18:15

JythonJVM

2009-07-14 15:20:25

Jython腳本Jython解釋器

2009-07-10 17:54:15

Java中調(diào)用JythJython

2017-03-22 09:25:26

MySQLPostgreSQL對(duì)比

2009-03-28 16:56:55

NehalemIntel服務(wù)器

2009-07-15 16:29:39

Jython連接JavJavaUtils模塊

2018-06-07 15:15:36

PHPPythonJava

2009-07-10 18:10:18

Jython編寫SerJython

2011-11-18 15:01:32

筆記本評(píng)測(cè)

2013-04-01 09:50:15

Web框架Web

2013-10-23 17:17:31

Node.jsdoT
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)