国产女人大黑β片在线观看_国产成人亚洲精品无码Av大片l_亚洲成人无码手机播放_强奸暴虐视频在线观看

您當(dāng)前位置: 唯學(xué)網(wǎng) » IT認(rèn)證培訓(xùn) » IT認(rèn)證培訓(xùn)教育新聞 »

Java初期學(xué)者程序性能容易的問(wèn)題測(cè)試

Java初期學(xué)者程序性能容易的問(wèn)題測(cè)試

唯學(xué)網(wǎng) • 教育培訓(xùn)

2016-9-23 16:43

IT認(rèn)證

唯學(xué)網(wǎng) • 中國(guó)教育電子商務(wù)平臺(tái)

加入收藏

你想應(yīng)聘Java的工作,你肯定會(huì)遇到Java初期學(xué)者程序性能容易的問(wèn)題測(cè)試,下面小編分享給大家。

1 介紹

在開(kāi)發(fā)中,性能測(cè)試是設(shè)計(jì)初期容易忽略的問(wèn)題,開(kāi)發(fā)人員會(huì)為了解決一個(gè)問(wèn)題而“不擇手段”,所參與的項(xiàng)目中也遇到了類(lèi)似問(wèn)題,字符串拼接、大量的調(diào)用和數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)等等都對(duì)系統(tǒng)的性能產(chǎn)生了影響,可是大家不會(huì)關(guān)心這些問(wèn)題,“CPU速度在變快”,“內(nèi)存在變大”,并且,“好像也沒(méi)有那么慢吧”。

有很多商業(yè)的性能測(cè)試軟件可供使用,如Jprofiler、JProbe Profiler等,但在開(kāi)發(fā)當(dāng)中顯得有些遙遠(yuǎn)而又昂貴。

2 目標(biāo)

將講述如何利用語(yǔ)言本身提供的方法在開(kāi)發(fā)中進(jìn)行性能測(cè)試,找到系統(tǒng)瓶頸,進(jìn)而改進(jìn)設(shè)計(jì);并且在盡量不修改測(cè)試對(duì)象的情況下進(jìn)行測(cè)試。

3 預(yù)備知識(shí)

面向?qū)ο缶幊掏ㄟ^(guò)抽象繼承采用模塊化的來(lái)求解問(wèn)題域,但是模塊化不能很好的解決所有問(wèn)題。有時(shí),這些問(wèn)題可能在多個(gè)模塊中都出現(xiàn),像日志功能,為了記錄每個(gè)方法進(jìn)入和離開(kāi)時(shí)的信息,你不得不在每個(gè)方法里添加log("in some method")等信息。如何解決這類(lèi)問(wèn)題呢?將這些解決問(wèn)題的功能點(diǎn)散落在多個(gè)模塊中會(huì)使冗余增大,并且當(dāng)很多個(gè)功能點(diǎn)出現(xiàn)在一個(gè)模塊中時(shí),代碼變的很難維護(hù)。因此,AOP(Aspect Oriented Programming)應(yīng)運(yùn)而生。如果說(shuō)OOP(Aobject Oriented Programming)關(guān)注的是一個(gè)類(lèi)的垂直結(jié)構(gòu),那么AOP是從水平角度來(lái)看待問(wèn)題。

動(dòng)態(tài)代理類(lèi)可以在運(yùn)行時(shí)實(shí)現(xiàn)若干接口,每一個(gè)動(dòng)態(tài)代理類(lèi)都有一個(gè)Invocation handler對(duì)象與之對(duì)應(yīng),這個(gè)對(duì)象實(shí)現(xiàn)了InvocationHandler接口,通過(guò)動(dòng)態(tài)代理的接口對(duì)動(dòng)態(tài)代理對(duì)象的方法調(diào)用會(huì)轉(zhuǎn)而調(diào)用Invocation handler對(duì)象的invoke方法,通過(guò)動(dòng)態(tài)代理實(shí)例、方法對(duì)象和參數(shù)對(duì)象可以執(zhí)行調(diào)用并返回結(jié)果。

說(shuō)到AOP,大家首先會(huì)想到的是日志記錄、權(quán)限和事務(wù),是的,AOP是解決這些問(wèn)題的好辦法。根據(jù)AOP的思想,通過(guò)動(dòng)態(tài)代理來(lái)解決一類(lèi)新的問(wèn)題——性能測(cè)試(performance testing)。

性能測(cè)試主要包括以下幾個(gè)方面:

計(jì)算性能:可能是人們首先關(guān)心的,簡(jiǎn)單的說(shuō)就是執(zhí)行一段代碼所用的時(shí)間

內(nèi)存消耗:程序運(yùn)行所占用的內(nèi)存大小

啟動(dòng)時(shí)間:從你啟動(dòng)程序到程序正常運(yùn)行的時(shí)間

可伸縮性(scalability)

用戶(hù)察覺(jué)性能(perceived performance):不是程序?qū)嶋H運(yùn)行有多快,而是用戶(hù)感覺(jué)程序運(yùn)行有多快.

主要給出了計(jì)算性能測(cè)試和內(nèi)存消耗測(cè)試的可行辦法。

以上內(nèi)容是關(guān)于Java初期學(xué)者程序性能容易的問(wèn)題測(cè)試的介紹,要想了解更多相關(guān)信息、教育培訓(xùn)內(nèi)容,請(qǐng)隨時(shí)關(guān)注唯學(xué)網(wǎng),小編會(huì)第一時(shí)間為大家更新、跟進(jìn)最新信息。

0% (0)
0% (10)
已有條評(píng)論