小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

BREW究竟是什么-BREW本質(zhì)之我見[轉(zhuǎn)]

 accesine 2005-10-14
BREW究竟是什么-BREW本質(zhì)之我見

作者: 東方欲曉  發(fā)布日期: 2005-9-18    查看數(shù): 148148   出自: http://expert.
為什么要寫這篇文章:
  接觸BREW已經(jīng)4個多月了,雖然時間不是很長,但是對brew還是有一定的了解,也有一些我自己的見解。我是一個不喜歡單單為了做好工作而只去學(xué)習(xí)對工作有用的東西,我喜歡刨根問底,喜歡知道一樣?xùn)|西究竟是什么?,F(xiàn)在不管是作brew develop的,還是brew oem的,其實存在一個問題,就是不是真正理解brew究竟是個什么東西,當(dāng)然這并不直接影響他們的工作。但是,我個人認為,如果連brew究竟是什么都不知道,而去porting一些接口,用一些接口,是顯得很“空虛”,你不能樂在其中。曾經(jīng)網(wǎng)上看到好多關(guān)于誤解brew的一些帖子,現(xiàn)在我覺得有必要寫一篇闡述brew究竟是什么的文章。當(dāng)然,我的見解也不是權(quán)威,也可能會錯。只是將我理解中的brew呈現(xiàn)給大家,如果對你有幫助,我會很開心。如果有錯誤,請指正,或者相互探討。

高通對brew的定義:
  有很多文檔中都有對brew的定義,我也不想去查證哪一篇文檔上有最權(quán)威的關(guān)于高通對brew的定義。我只是就我看過的一些高通的文檔,總結(jié)歸納出高通對brew的定義。簡單而言,高通對brew的定義就是:brew是一種無線移動網(wǎng)絡(luò)中的端到端的解決方案。
BREW-4字母之我見:
  如上所說,brew是一種解決方案,那brew4個字母究竟是什么意思那。按照我的理解,B是針對j2me的虛擬機(解釋)而言,說明brew的目標文件是二進制代碼,不是中間解釋程序。R說明brew是動態(tài)加載機制,只有當(dāng)需要運行的時候,代碼才加載運行。E代表BREW不僅僅是一些接口API, BREW有自身的內(nèi)核,有自身的執(zhí)行環(huán)境(AEE環(huán)境)。W代表BREW是專門針對無線移動的解決方案。
BREW與操作系統(tǒng):
  經(jīng)??吹接腥四肂REW和操作系統(tǒng)相比較,最多的莫過于和Symbian作比較。“你覺得BREW和Symbian哪個好?”“我覺得BREW沒有 Symbian好”等等,諸如此類。其實,這兩者根本沒有可比性。BREW不是操作系統(tǒng)。本質(zhì)上來說,BREW僅僅是運行于操作系統(tǒng)上的某個task中的一個軟件而已。BREW位于操作系統(tǒng)之上,BREW在手機上的實現(xiàn)需要操作系統(tǒng)服務(wù)的支持。從理論上來說,BREW可以在任何操作系統(tǒng)上被支持起來。所以,不能將BREW和操作系統(tǒng)作比較,不具可比性。就好比你拿windows和vc作比較,那是很可笑的。
BREW和編程語言:
  另外經(jīng)??吹接腥四肂REW和java語言來作比較。這兩者也根本不具有可比性。java是一種編程語言,編程語言用來編出軟件。而BREW,你可以把它看作是軟件,至于是什么編出來的,你無需考慮?!∵@樣的比較,就好比拿bt軟件和python語言(bt軟件的開發(fā)語言)作比較,也是很可笑的。另外補充一點,雖然BREW環(huán)境的實現(xiàn)是用C語言,但是BREW應(yīng)用的開發(fā)。“理論”上來說應(yīng)該可以任何語言,目前主要是c,c++。其實,如果拿BREW和 J2me作比較,那才具有可比性。詳細見下面一節(jié)。
BREW是中間件:
  更多的人是拿BREW和j2me來作比較,因為他們分別是現(xiàn)在聯(lián)通和移動所倡導(dǎo)支持的。為什么具有可比性那。因為就我理解,他們都是中間件技術(shù)。brew是中間件!
  中間件位于操作系統(tǒng)(以及native軟件)與上層應(yīng)用之間。通過它,可以使得應(yīng)用的開發(fā)變得可擴展,靈活和“標準”。
  首先,我們看看沒有中間件出現(xiàn)時的手機開發(fā)模式。
  此時,整個手機的開發(fā)都是oem廠商完成的。他們在手機的操作系統(tǒng)上編寫一個個的task代碼,編寫一個個特定功能的底層api函數(shù)和服務(wù)(我們稱之為native),然后再利用這些native的代碼編寫一些手機應(yīng)用,比如電話簿,短信等等。此時,任何第三方都將無法進入這個行業(yè),因為他們需要了解這個手機的系統(tǒng),以及這些native的api,才能開發(fā)上層應(yīng)用。但是,通常這些都是保密的。所以,那個時候,幾乎沒有develop的存在,只有 oem。
  而中間件技術(shù)出現(xiàn)后,整個手機開發(fā)模式被改變了,我們以brew為例。
  我們把上面所講的開發(fā)模式稱之為純native開發(fā)模式。而一旦handset被porting brew之后,那么在native之上就多了一個中間層,即中間件。中間件(brew)定義了一套標準的接口(環(huán)境),這套標準的接口(環(huán)境)是面向上層的,面向develop的。而這套接口(或者環(huán)境)的實現(xiàn)則是調(diào)用了native(以及操作系統(tǒng))的服務(wù),我們稱之為porting。這樣,中間件屏蔽了底層的差異性和具體實現(xiàn),對上提供標準的接口。從而催生了手機develop這個行業(yè)的出現(xiàn)。因為,他們無需考慮具體手機,只需要利用中間件提供的標準接口(環(huán)境)來開發(fā)可移植的應(yīng)用。這種可移植性的本質(zhì)是因為,對于develop所呈現(xiàn)的“共性”是通過oem的“個性”來呈現(xiàn)的,并且通過中間件這樣一種模式,屏蔽了這種共性和個性之間的聯(lián)系。使得使用和實現(xiàn)分離。達到了可移植性!
  說到中間件技術(shù),其實現(xiàn)在最多提到的就是j2me,brew,mhp。j2me是通過jvm在不同平臺上的porting來提供通用的java接口。 mhp是機頂盒上現(xiàn)在用的很多的中間件標準,具體的我就不是很清楚。另外,brew和j2me還是有區(qū)別的,因為j2me僅僅是一個瘦client型的中間件技術(shù),不涉及端到端的整套方案。而brew不僅僅指handset上的中間件(brew)同時還包括ads(服務(wù)器端),所以brew不僅僅是中間件,完整的說,就是高通的定義,是一種端到端的解決方案。
BREW是設(shè)計模式:
  我對設(shè)計模式僅僅是初學(xué)而已,所以這里僅僅是我的見解而已。我認為,BREW是一種特殊的,可擴展的Facade設(shè)計模式。Facade模式的意圖是簡化現(xiàn)有系統(tǒng)的使用方法,重新定制一種新的接口(或者方式),并呈現(xiàn)給client,使得client更容易的使用現(xiàn)有的系統(tǒng)。在沒有brew出現(xiàn)之前, client(上層應(yīng)用)使用系統(tǒng)(調(diào)用系統(tǒng)服務(wù),達到特定功能)的方式是native的方式(直接調(diào)用操作系統(tǒng)或者native的api),這種使用系統(tǒng)的方式非常復(fù)雜,而且通常對第三者不可用。通過brew,我在native基礎(chǔ)上重新定制了一個新的接口(平臺,環(huán)境,或者方式),并將它呈現(xiàn)給 client(上層應(yīng)用)。這樣,client通過這個新的接口(平臺,環(huán)境,或者方式)同樣實現(xiàn)了某種功能,但是卻更加的方便。
  為什么又說是可擴展的Facade設(shè)計模式那。因為通常Facade模式中所說的定制的新接口所提供的服務(wù)往往是原有系統(tǒng)所能提供服務(wù)的子集。 BREW也如此,只能通過所有的Interface向client提供服務(wù),當(dāng)然不能包括整個handset理論上所能提供的所有服務(wù)。但是,我們知道 BREW本身是可伸縮的,比如可以由oem擴展接口,或者oem裁減掉一些接口,或者隨著brew版本的更新也會擴展一些接口。這樣,對client所提供的服務(wù)也就具有伸縮性,所以我稱之具有可擴展性。
  另外說是特殊的Facade模式,是因為Facade模式?jīng)]有強迫所定制的新的接口需要是“標準”的接口。但是BREW對外提供的確是標準的接口。它使得cilent(應(yīng)用)具有了可移植性,所以我稱之為特殊。
結(jié)束:
  在這么多大蝦的面前,對BREW妄加評論,無他,僅僅分享我的見解而已,如果對你有幫助,則有感一絲欣慰。如果有什么錯誤之處,還請指教。也請大家,相互交流。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多