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

開發(fā)J2ME應(yīng)用程序準(zhǔn)則揭秘

開發(fā) 前端
本文我們一起看一下在使用J2SE編譯J2ME應(yīng)用程序時調(diào)用編譯器的方法,最后我們將探究打包和部署,以及在這個過程中提前驗(yàn)證所扮演的角色。

這里向大家描述一下開發(fā)J2ME應(yīng)用程序準(zhǔn)則,同其它的Java應(yīng)用程序一樣,您在打包和部署應(yīng)用程序之前要先進(jìn)行編譯。盡管有了J2ME,您仍然使用J2SE編譯器并且需要用適當(dāng)?shù)倪x項(xiàng)來進(jìn)行調(diào)用。

開發(fā)J2ME應(yīng)用程序準(zhǔn)則

1.介紹

在這一章中,我們將復(fù)習(xí)一下在為小型設(shè)備開發(fā)J2ME應(yīng)用程序時需要牢記的一些注意事項(xiàng)。我們將看一下在使用J2SE編譯J2ME應(yīng)用程序時調(diào)用編譯器的方法。最后我們將探究打包和部署,以及在這個過程中提前驗(yàn)證所扮演的角色。

設(shè)計(jì)開發(fā)小型設(shè)備應(yīng)用程序要注意的事項(xiàng)

為小型設(shè)備開發(fā)應(yīng)用程序,需要您在設(shè)計(jì)階段制定某種策略。最好是在開始編寫代碼之前,戰(zhàn)略性地為小型設(shè)備設(shè)計(jì)應(yīng)用程序。由于無法考慮到所有的"gotchas",在開發(fā)應(yīng)用程序之前更正代碼是一件很痛苦的工作。

2.下面是一些可以考慮的設(shè)計(jì)策略:

保持程序簡單。除去不必要的功能,如果可能的話,將它們做成獨(dú)立的、次要的應(yīng)用程序。

程序越小越好。這一點(diǎn)對所有的開發(fā)者來說應(yīng)該是顯而易見的。越小的程序占用的設(shè)備內(nèi)存越少,并且花費(fèi)的安裝時間越少??煽紤]將您的Java應(yīng)用程序打包,作為壓縮的Java檔案(jar)文件。

運(yùn)行時占用最少的內(nèi)存。為盡可能減少運(yùn)行時占用的內(nèi)存,使用標(biāo)量類型代替對象類型。同時,不依賴?yán)占绦?。您?yīng)該在使用完對象時將對象引用置空,這樣可有效管理內(nèi)存。另外一種減少運(yùn)行時所需內(nèi)存的方法是使用“惰性”實(shí)例,它僅在必需時才分配對象。其它一些減少小型設(shè)備上過量和峰值內(nèi)存使用的方法有快速釋放資源、重新使用對象以及避免異常。

3.設(shè)計(jì)開發(fā)移動設(shè)備應(yīng)用程序的注意事項(xiàng)

開發(fā)移動設(shè)備應(yīng)用程序的規(guī)則與我們前面提及的開發(fā)小型設(shè)備的相同:先設(shè)計(jì)再編碼。讓我們檢查一下開發(fā)移動設(shè)備應(yīng)用程序時可考慮的一些設(shè)計(jì)建議:

讓服務(wù)器做大部分的工作。將計(jì)算性較強(qiáng)的任務(wù)放到服務(wù)器上,讓服務(wù)器為您做這些工作。讓移動設(shè)備處理界面和最少的計(jì)算工作,而讓服務(wù)器做繁重的工作。當(dāng)然,您為其開發(fā)應(yīng)用程序的移動設(shè)備對設(shè)備連接到服務(wù)器上的難易程度和頻率有重要影響。
謹(jǐn)慎地選擇編程語言。J2ME仍然處于成長期,可能還不是最好的選擇。根據(jù)您的需要,選擇其它的面向?qū)ο笳Z言,如C++,可能會更好。

4.性能注意事項(xiàng)

為性能而編碼。下面有一些以獲得最優(yōu)性能為目標(biāo)的編碼方法:

使用局部變量。訪問局部變量比訪問類成員更快。

避免字符串串聯(lián)。字符串串聯(lián)不僅會降低性能,而且會增加應(yīng)用程序的內(nèi)存峰值占用量。

使用線程,避免同步。任何運(yùn)行時間超過1/10秒的操作都需要一個獨(dú)立的線程。避免同步同樣能提高性能。

5.編譯注意事項(xiàng)

同其它的Java應(yīng)用程序一樣,您在打包和部署應(yīng)用程序之前要先進(jìn)行編譯。盡管有了J2ME,您仍然使用J2SE編譯器并且需要用適當(dāng)?shù)倪x項(xiàng)來進(jìn)行調(diào)用。

特別的,您需要使用-bootclasspath選項(xiàng)來指示編譯器使用J2ME類,而不是J2SE類。不要在編譯器的CLASSPATH中設(shè)置配置類。這樣將導(dǎo)致運(yùn)行時錯誤,因?yàn)椴还蹸LASSPATH中有什么,編譯器將首先自動搜索J2SE的核心類。換句話說,編譯器將無法引用特定J2ME配置中缺少的類或方法,結(jié)果導(dǎo)致在嘗試運(yùn)行應(yīng)用程序時出現(xiàn)運(yùn)行時錯誤。

6.打包和部署注意事項(xiàng)

由于J2ME是為內(nèi)存有限的小型設(shè)備設(shè)計(jì)的。大部分常用的Java提前驗(yàn)證已經(jīng)從虛擬機(jī)中除去以形成一個較小的覆蓋區(qū)域。結(jié)果,在配置之前提前驗(yàn)證J2ME應(yīng)用程序就很有必要。在運(yùn)行時會附加一個檢查以確保這個類在提前驗(yàn)證之后還沒有改變過。

如何嚴(yán)格執(zhí)行提前驗(yàn)證或者檢查類的正確性依靠的是工具包。CLDC提供一個稱為提前驗(yàn)證的命令行實(shí)用程序,它能夠進(jìn)行實(shí)際的驗(yàn)證并且可以把一些額外的信息插入到類文件中去。MIDP使用無線工具包,這種工具包提供一種GUI工具,也可從命令行運(yùn)行這種工具。

部署工作取決于您要部署的平臺。應(yīng)用程序必須以一種適合J2ME設(shè)備類型的格式進(jìn)行打包和配置,就如簡表定義的那樣。

【編輯推薦】

  1. J2ME應(yīng)用程序架構(gòu)模型詳解
  2. J2ME應(yīng)用程序架構(gòu)模型
  3. J2ME應(yīng)用程序內(nèi)存優(yōu)化的幾種途徑
  4. 技術(shù)分享 如何識別控制DHTML和JS中的頁面元素
  5. 深入學(xué)習(xí)JavaScript中Function對象語法 
責(zé)任編輯:佚名 來源: javaeye.com
相關(guān)推薦

2010-09-29 09:54:09

J2ME應(yīng)用程序

2009-03-12 10:22:27

EclipseJ2MEJDT

2010-09-30 13:39:52

2010-09-30 16:13:13

J2ME應(yīng)用程序

2010-09-29 09:45:01

J2ME應(yīng)用程序

2010-09-29 08:57:04

J2ME前景

2010-09-29 09:19:39

J2ME開發(fā)工具

2009-06-23 11:30:16

RMSJ2ME

2010-09-29 13:09:48

OTAJ2ME程序

2010-09-30 13:48:10

J2ME游戲引擎

2010-09-29 13:50:31

J2MEJ2SE

2010-02-04 13:15:59

Android J2M

2010-09-29 12:45:50

J2ME

2010-09-29 09:13:48

J2ME開發(fā)環(huán)境

2009-06-15 15:35:00

netbeansj2me

2010-09-29 09:28:59

J2ME開發(fā)環(huán)境

2009-06-08 18:17:00

適應(yīng)中國網(wǎng)絡(luò)J2ME連網(wǎng)程序

2010-10-09 15:40:19

CookieJ2ME

2010-09-30 11:11:07

J2ME

2010-09-30 13:06:33

Myeclipse J
點(diǎn)贊
收藏

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