PowerBuilder 11.x 的重要進步和不足
PowerBuilder 11(以下簡稱PB)出來有一段時間了,但很多使用者對PB11的到底有哪些進步還不是很清楚,由於對PB11缺乏瞭解和信心,目前用PB11做出像樣應用的使用者不多,這確實非常遺憾,這裡我講一下我對PB11的重要進步和一些不足的理解,希望能給一些還沒有接觸PB11或正在觀望的使用者一些參考意見。
PB11取得的重要進步:
1、選擇對.NET的全面支援,站對了隊伍
PB11之前,PB做了大量對Java的支援的工作,努力想傍上Java這個神仙,可惜Java這個神仙不食人間煙火,而搞Java的都是一幫“貴族”,強調開源和免費,對開發效率似乎不是最看重的,而且Pb先後想從PowerDynamo和Powersite中找到突破口,結果都無功而返。
PB11這次終於站對了隊伍,因為微軟的.NET和PB一樣,都是要追求開發效率,遮蔽開發細節,讓開發人員把精力專注在業務需求的解決上,從而為企業創造更高的投入產出比,而PB11站在.NET的肩膀上來做,重點在資料庫業務處理上發揮優勢,這次終於修成正果!
2、可以快速開發資料業務處理的B/S應用
PB11開發.NET ASPX WebForm的B/S應用已經基本成熟,PB11.2以後引入了AJAX特性,使開發出的B/S應用Postback大量減少,使用者體驗得到改善,從而達到完全實用狀態,我們的一些Partner已經用Pb11.5開發出像樣的B/S應用。
當然,Pb11開發B/S應用,首先需要明確,只適合用於資料庫業務系統的開發,如果你指望用來開發網站之類的,是明顯不適合的;另外,如果你想讓你的B/S應用更象Web應用,可以不用PB標準的視窗方式,而改用視覺化物件動態建立的方式來實現頁面切換,並且用連結代替按鈕等多種策略。
3、可實現客戶端應用的自動安裝、自動更新
PB開發的C/S應用,客戶端的安裝和更新往往是一個繁重的工作,而這點正是B/S應用的優勢所在(免安裝、免更新),而PB11現在可以藉助.NET的SmartClient技術,實現C/S應用客戶端的網頁啟動、自動下載安裝,自動版本更新,這樣客戶端應用的維護工作量大大減少,從而讓SmartClient WinForm應用同時滿足既好用又好維護的雙重要求。
4、可快速開發基於IIS的WebService
PB11之前要開發WebService,只有先開發一個PB NVO元件釋出到EAServer中,然後把元件(必須是無狀態元件)釋出成WebService(EasySoap標準),因為要用EAServer來支援WebService,如果只是做小規模的應用間整合,成本就不划算。而PB11已經可以開發基於IIS+.NET FrameWork2.0的WebService,開發和部署也非常簡單,因此PB11為開發應用間整合提供了一個低成本的解決方案。
5、可快速開發.NET Assembly, PB和VS.NET互操作
PB11可以透過開發PBNVO而釋出成.NET Assembly(程式集),Assembly有點類似於WIN32中的DLL,但是完全OO(物件導向)的方式。PB11開發出的.NET Assembly,可以在PB(.NET Target)裡面呼叫,也可以在VS.NET裡面呼叫,因此非常適合用於封裝通用功能、業務邏輯等。
另外,PB11裡面還可以直接呼叫VS.NET提供的大量的系統級Assembly,或者VS.NET裡面開發出的Assembly,這大大的擴充了PB的功能(比如,可以用.NET 裡面的HashTable來實現Cache),而在PB11之前,只能用DLL或PBNI技術來擴充PB的功能,DLL和PBNI都是比較難用的,容易出錯的方法。
6、.NET WebForm和WinForm可以訪問J2EE伺服器
PB11實現了從.NET訪問J2EE伺服器的簡單方法(IIOP),從而使實現一種完美的架構成為可能:客戶端採用.NET技術+服務端採用EJB技術,這是一種兼顧客戶端快速開發,美觀實用,和服務端穩定可靠,易於擴充套件雙重優勢的架構,通常在PB11之前,主要是透過IIOP.NET這個開源的產品來實現.NET和J2EE之間的橋樑的。
PB11尚有不足的地方:
1、.NET WebForm下JavaScript最佳化受限
目前Pb11.2以上版本已經引入了AJAX技術,頁面的Postback大大減少了,但DataWindow的最佳化,需要藉助編寫JavaScript或物件的HTML屬性來解決,但,其實還有很多的互動是可以透過JavaScript來實現的(比如,介面按鈕狀態控制、資料輸入檢查等),而這些可能的最佳化措施,PB11目前還沒給出途徑(至少沒這方面的資料)。
2、.NET WebForm下不支援ActiveX控制元件
目前的PB11.x不支援在.NET WebForm中嵌入ActiveX控制元件,這就為要開發能和本機互動的Web應用造成了較大的難度,好在一般的資料庫應用這方面的需求還不是很突出。
3、.NET WebForm下檔案上傳和下載不完善
目前PB11提供的檔案上傳和下載為了強調安全性,結果導致沒法將上傳的檔案,直接透過URL地址在各使用者之間進行共享以供下載,這導致了較大的麻煩,目前只有透過將上傳的檔案存入資料庫的Blob中,然後其他使用者再從Blob中取出的辦法,或者透過COM+或EAServer這種具有伺服器控制許可權的程式來實現檔案的移動儲存來實現,比較繁瑣;當然你也可以自己來用VS.NET重寫一個檔案上傳和下載的功能,同樣比較費事。
4、需要一個有效的開發框架來發揮出威力
PB11提供了很多很好的新特性和功能,但要發揮出這些功能和特性的威力,還有需要做相當的工作,單就一個開發新的B/S架構應用,就面臨著要如何才能開發出“像樣”的B/S應用呢?看起來想Web應用,而不是象C/S應用在瀏覽器裡面跑呢?另外,.NET訪問J2EE伺服器雖然提供了一個實現的基礎技術,但要構造出這樣的應用,還有相當的路程要走。
還好有PB11.5的完美搭檔PBntierBuilder3.1出現!PBntierBuilder是從2001年開始研究的,如今已經非常成熟,PBntierBuilder被Sybase公認為PB裡面最完善的多層開發框架,整合、封裝和發展了PB的多層分散式技術和PB11.x各項最新技術,採用PB11.5+ PBntierBuilder3.1可以開發出各種你需要的架構的應用,具體詳情瀏覽 或 本部落格下一篇文章“PB11.5的完美搭檔:PBntierBuilder3.1”
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21637713/viewspace-1024633/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PowerBuilder 11.x .NET開發影片教程UI
- Oracle RAC入門和進步Oracle
- powerbuilder 11的又一怪事UI
- 指令集的進步——MMX和SSE (轉)
- 專案成本管理的4個重要步驟
- 進行app效能和安全性測試的重要性APP
- asp.net的優勢和不足ASP.NET
- 技術人生-抱怨和進步並存
- GPT-3,深度學習和NLP的巨大進步GPT深度學習
- 進一步改進GPT和BERT:使用Transformer的語言模型GPTORM模型
- 步進電機和伺服電機區別
- 改進oracle utl_mail包的smtp_server設定和密碼驗證不足OracleAIServer密碼
- PowerBuilder DataWindow畫板的更新特性詳解UI
- 再談powerbuilder程式防止破解的辦法UI
- 用PowerBuilder製作指示燈UI
- PowerBuilder11.5破解方法UI
- PowerBuilder11.5破解方法.UI
- 【PB】powerbuilder中xml的應用一例UIXML
- PowerBuilder 郵件會話物件MailSessionUI會話物件AISession
- 開放才能進步!Angular和Wijmo一起走過的日子Angular
- 網站建設中CSS的優勢和不足網站CSS
- MySQL Galera Cluster的特性和不足之處介紹MySql
- 5.1.3 非塞模式套接字的優勢和不足模式
- 亞信安慧AntDB的進步之路
- 我太想進步了
- [計劃]意識到自己的不足後需要循序漸進的補充……
- powerbuilder9 視窗高階配置UI
- PowerBuilder---合併相同單元格UI
- PowerBuilder 9實現FLASH動畫播放(轉)UI動畫
- powerbuilder crosstab資料視窗問題UIROS
- 在PowerBuilder中動態呼叫函式UI函式
- 實踐和思考的重要意義
- RAC重要概念和原理
- 觀點|敖立:智慧家居“智慧”不足閘道器將成運營商重要切入點
- 【PB】powerbuilder呼叫VC編寫的動態連結庫UI
- 在POWERBUILDER中使用WINSOCK控制元件的方法UI控制元件
- 【網路心情】放慢前進的腳步
- Powerbuilder6.0實現 Browser/Server結構的Internet解決方案和工作方式 (轉)UIServer