桌面應用程式的實現方法和裝置製造方法
2023-04-25 23:53:26 1
桌面應用程式的實現方法和裝置製造方法
【專利摘要】本發明公開了一種桌面應用程式的實現方法和裝置,所述桌面應用程式的實現方法包括步驟:Web模塊開發並顯示應用界面;Web模塊根據用戶通過所述應用界面發送的操作指令,向Web伺服器模塊發送Http或/和Websocket請求;Web伺服器模塊處理所述Http或/和Websocket請求,將處理結果返回所述Web模塊;Web模塊將所述處理結果顯示於所述應用界面。從而滿足標準的Web規範的桌面應用程式得以實現,既具有業務邏輯和界面分離的特性,以及業務邏輯和界面復用的效果,有利於提高開發效率;又不局限於單一作業系統,可在Windows、Mac、Linux等作業系統上實現,輕鬆實現了跨平臺開發,提高了開發效率;同時學習成本低,在開發人員方面有更多的選擇,降低了開發成本。
【專利說明】桌面應用程式的實現方法和裝置
【技術領域】
[0001]本發明涉及信息【技術領域】,尤其是涉及一種桌面應用程式的實現方法和裝置。
【背景技術】
[0002]傳統的桌面應用程式的實現方法,不能將業務邏輯和應用界面進行分離,同時業務邏輯和應用界面也不能復用。例如傳統的Windows架構,其類似於MVC (Model ViewControlle,模型一視圖一控制器)的架構模型,應用界面用WTL (Windows TemplateLibrary)來搭建,在Controller (控制器)中塞入業務邏輯。在需要向桌面應用程式中加入動畫效果時,往往需要花費很長時間來開發。因此,這種實現方法的開發效率較低。
[0003]另外一種比較流行的解決方案是Directn,其利用XML作為配置文件來描述應用界面,使用C++等高效本地語言來實現業務邏輯,用Lua、Python這樣的腳本來做粘合。從而能夠在保持高性能的同時,提供更漂亮的界面效果。但這種方案是封閉的而非開源的,學習成本比較高,從而提高了開發成本。
【發明內容】
[0004]本發明的主要目的在於提供一種桌面應用程式的實現方法和裝置,旨在提高開發效率,降低開發成本。
[0005]為達以上目的,本發明提出一種桌面應用程式的實現方法,包括步驟:
[0006]Web模塊開發並顯示應用界面;
[0007]Web模塊根據用戶通過所述應用界面發送的操作指令,向Web伺服器模塊發送Http 或 / 和 Websocket 請求;
[0008]Web伺服器模塊處理所述Http或/和Websocket請求,將處理結果返回所述Web模塊;
[0009]Web模塊將所述處理結果顯示於所述應用界面。
[0010]優選地,所述Web模塊開發並顯示應用界面包括:
[0011]Web模塊通過HTML超文本標記語言和CSS層疊樣式表開發應用界面,通過Webkit顯示所述應用界面。
[0012]優選地,所述Web伺服器模塊處理所述Http或/和Websocket請求包括:
[0013]Web伺服器模塊解析所述Http或/和Websocket請求;
[0014]Web伺服器模塊根據解析結果,調用對應的業務邏輯處理所述Http或/和Websocket 請求。
[0015]優選地,所述Web伺服器模塊包括Http伺服器或/和Websocket伺服器。
[0016]優選地,所述Web伺服器模塊的運行方式包括:作為系統伺服器獨立運行、以可執行程序運行或與應用界面關聯運行。
[0017]本發明同時提出一種桌面應用程式的實現裝置,包括Web模塊和Web伺服器模塊,其中:[0018]Web模塊,用於開發並顯示應用界面,根據用戶通過所述應用界面發送的操作指令,向Web伺服器模塊發送Http或/和Websocket請求,並將所述Web伺服器模塊返回的處理結果顯示於所述應用界面;
[0019]Web伺服器模塊,用於處理所述Http或/和Websocket請求,並將處理結果返回所述Web模塊。
[0020]優選地,所述Web模塊用於:通過HTML超文本標記語言和CSS層疊樣式表開發應用界面,通過Webkit顯示所述應用界面。
[0021]優選地,所述Web伺服器模塊用於:解析所述Http或/和Websocket請求,根據解析結果,調用對應的業務邏輯處理所述Http或/和Websocket請求。
[0022]本發明所提供的一種桌面應用程式的實現方法,由前端的Web模塊基於開源的瀏覽器引擎開發並顯示應用界面,並採用基於Http和Websocket的Web技術與後端的Web伺服器模塊進行實時交互,使得滿足標準的Web規範的桌面應用程式得以實現。既具有業務邏輯和界面分離的特性,以及業務邏輯和界面復用的效果,有利於提高開發效率;又不局限於單一作業系統,可在Windows、Mac、Linux等作業系統上實現,輕鬆實現了跨平臺開發,提高了開發效率;同時學習成本低,在開發人員方面有更多的選擇,降低了開發成本。
【專利附圖】
【附圖說明】
[0023]圖1是本發明的桌面應用程式的實現方法一實施例的流程圖;
[0024]圖2是本發明的桌面應用程式的實現裝置一實施例的結構框圖。
[0025]本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。
【具體實施方式】
[0026]應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。
[0027]本發明提出的一種桌面應用程式的實現方法,使用基於Web的方式來開發桌面應用程式,由前端和後端共同完成。後端與前端運行在同一臺PC上,後端可以有三種不同的運行方式:(I)作為系統伺服器獨立運行;(2)以可執行程序運行;(3)與應用界面捆綁在一起,關聯運行。所謂基於Web的方式,就是在整個桌面應用程式內部,絕大部分的應用界面設計和通信模式都和Web應用程式類似,用HTML (Hypertext Markup Language,超文本標記語言)以及CSS (Cascading Style Sheets,層疊樣式表)、JS (JavaScript)來開發界面,通過Ajax等調用來獲取數據。為了提高整個Web體驗,內嵌一個Webkit內核,來保證前端開發的簡易性。
[0028]其中,HTML是用於描述網頁文檔的一種標記語言,是標準通用標記語言下的一個應用;CSS是一種用來表現HTML或XML等文件樣式的計算機語言;JS是一種基於對象和事件驅動並具有相對安全性的客戶端腳本語言,同時也是一種廣泛用於客戶端Web開發的腳本語言,常用來給HTML網頁添加動態功能,比如響應用戶的各種操作;WebKit是一個開源的瀏覽器引擎,包含WebCore排版引擎和JSCore引擎,均是從KDE的KHTML及KJS引擎衍生而來,它們都是自由軟體,在GPL條約下授權,同時支持BSD系統的開發。
[0029]參見圖1,提出本發明的桌面應用程式的實現方法一實施例,所述桌面應用程式的實現方法包括以下步驟:[0030]步驟SlOUWeb模塊開發並顯示應用界面
[0031]本實施例中,前端為Web模塊,後端為Web伺服器模塊。Web模塊內嵌Webkit內核,通過HTML、CSS及JS開發應用界面,通過Webkit顯示應用界面。用戶通過操作應用界面來向Web模塊發送操作指令。
[0032]步驟S102、Web模塊根據用戶的操作指令,向Web伺服器模塊發送Http或/和Websocket 請求
[0033]Web模塊收到用戶的操作指令後,可以採用兩種調用方式。一種是同步調用,將調用封裝成Http (Hypertext Transfer Protocol,超文本傳輸協議)請求發送至Web伺服器模塊;另一種是異步調用,將調用封裝成Websocket請求發送至Web伺服器模塊。所述Http是超文本在網際網路上的傳輸協議。所述WebSocket是HTML5 —種新的協議,WebSocket規範的目標是在瀏覽器中實現和伺服器端雙向通信,從而可以拓展應用類型,例如實時的數據推送(股票行情)、遊戲、聊天等。
[0034]步驟S103、Web伺服器模塊處理Http或/和Websocket請求,將處理結果返回Web模塊
[0035]Web伺服器模塊收到Http或/和Websocket請求後,按照一定的規則對請求進行解析,然後根據解析結果,調用對應的業務邏輯處理Http或/和Websocket請求。Web伺服器模塊對業務邏輯進行了封裝,可以封裝成DLL (Dynamic Link Library,動態連結庫),用任意語言來實現。Web伺服器模塊包括Http伺服器或/和Websocket伺服器,Http伺服器用於解析和處理Http請求,Websocket伺服器用於解析和處理Websocket請求。
[0036]步驟S104、Web模塊將處理結果顯示於應用界面
[0037]從而基於Web的桌面應用程式得以實現,完成對該桌面應用程式的操作。
[0038]據此,本發明的桌面應用程式的實現方法,前端基於Webkit內核,用Html、CSS、JS技術開發應用界面,並採用基於Http和Websocket的Web技術與後端進行實時交互,使得滿足標準的Web規範的桌面應用程式得以實現,因此具有以下優點:
[0039](I)由前端與後端分離協作,採用了 B/S (Browser/Server,瀏覽器/伺服器)結構,具有業務邏輯和界面分離的特性,以及業務邏輯和界面復用的效果。有利於提高開發效率。
[0040](2)採用CSS技術開發的應用界面,美觀且易於換膚,使得開發人員可以高效的完成很炫的界面效果。
[0041](3)採用Html、CSS等Web技術開發應用界面,不局限於單一作業系統,可在Windows, Mac、Linux等作業系統上實現。輕鬆實現了跨平臺開發,提高了應用界面的開發效率。
[0042](4)採用了開源的瀏覽器引擎,學習成本低,在開發人員方面有更多的選擇,降低了開發成本。
[0043]參見圖2,提出本發明的桌面應用程式的實現裝置一實施例,所述桌面應用程式的實現裝置包括前端的Web模塊110和後端的Web伺服器模塊120,前端的Web模塊110採用基於Http和Websocket的Web技術與後端進行實時交互。後端的Web伺服器模塊120與前端的Web模塊110運行在同一臺PC上,後端的Web伺服器模塊120可以有三種不同的運行方式:(1)作為系統伺服器獨立運行;(2)以可執行程序運行;(3)與應用界面捆綁在一起,關聯運行。其中,
[0044]Web模塊110:用於開發並顯示應用界面,根據用戶通過應用界面發送的操作指令,向Web伺服器模塊120發送Http或/和Websocket請求,並將所述Web伺服器模塊120返回的處理結果顯示於應用界面。
[0045]具體的,所述Web模塊110內嵌Webkit內核,通過HTML、CSS及JS開發應用界面,通過Webkit顯示應用界面。Web模塊110根據用戶對應用界面的操作來檢測用戶的操作指令,收到用戶的操作指令後,可以採用兩種調用方式。一種是同步調用,將調用封裝成Http請求發送至Web伺服器模塊120 ;另一種是異步調用,將調用封裝成Websocket請求發送至Web伺服器模塊120。所述Http是超文本在網際網路上的傳輸協議。所述WebSocket是HTML5一種新的協議,WebSocket規範的目標是在瀏覽器中實現和伺服器端雙向通信,從而可以拓展應用類型,例如實時的數據推送(股票行情)、遊戲、聊天等。
[0046]Web伺服器模塊120:用於處理所述Http或/和Websocket請求,並將處理結果返回所述Web模塊110。具體的,Web伺服器模塊120收到Http或/和Websocket請求後,按照一定的規則對請求進行解析,然後根據解析結果,調用對應的業務邏輯處理Http或/和Websocket請求。Web伺服器模塊120對業務邏輯進行了封裝,可以封裝成DLL (DynamicLink Library,動態連結庫),用任意語言來實現。Web伺服器模塊120包括Http伺服器或/和Websocket伺服器,Http伺服器用於解析和處理Http請求,Websocket伺服器用於解析和處理Websocket請求。
[0047]據此,本發明的桌面應用程式的實現裝置,前端的Web模塊110基於Webkit內核,用Html、CSS、JS技術開發應用界面,並採用基於Http和Websocket的Web技術與後端的Web伺服器模塊120進行實時交互,使得滿足標準的Web規範的桌面應用程式得以實現,因此具有以下優點:
[0048](I)由前端與後端分離協作,採用了 B/S (Browser/Server,瀏覽器/伺服器)結構,具有業務邏輯和界面分離的特性,以及業務邏輯和界面復用的效果。有利於提高開發效率。
[0049](2)採用CSS技術開發的應用界面,美觀且易於換膚,使得開發人員可以高效的完成很炫的界面效果。
[0050](3)採用Html、CSS等Web技術開發應用界面,不局限於單一作業系統,可在Windows, Mac、Linux等作業系統上實現。輕鬆實現了跨平臺開發,提高了應用界面的開發效率。
[0051](4)採用了開源的瀏覽器引擎,學習成本低,在開發人員方面有更多的選擇,降低了開發成本。
[0052]應當理解的是,以上僅為本發明的優選實施例,不能因此限制本發明的專利範圍,凡是通過本發明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的【技術領域】,均同理包括在本發明的專利保護範圍內。
【權利要求】
1.一種桌面應用程式的實現方法,其特徵在於,包括步驟: Web模塊開發並顯示應用界面; Web模塊根據用戶通過所述應用界面發送的操作指令,向Web伺服器模塊發送Http或/ 和 Websocket 請求; Web伺服器模塊處理所述Http或/和Websocket請求,將處理結果返回所述Web模塊; Web模塊將所述處理結果顯示於所述應用界面。
2.根據權利要求1所述的桌面應用程式的實現方法,其特徵在於,所述Web模塊開發並顯示應用界面包括: Web模塊通過HTML超文本標記語言和CSS層疊樣式表開發應用界面,通過Webkit顯示所述應用界面。
3.根據權利要求1所述的桌面應用程式的實現方法,其特徵在於,所述Web伺服器模塊處理所述Http或/和Websocket請求包括: Web伺服器模塊解析所述Http或/和Websocket請求; Web伺服器模塊根據解析結果,調用對應的業務邏輯處理所述Http或/和Websocket請求。
4.根據權利要求1-3任一項所述的桌面應用程式的實現方法,其特徵在於,所述Web伺服器模塊包括Http伺服器或/和Websocket伺服器。
5.根據權利要求1-3任一項所述的桌面應用程式的實現方法,其特徵在於,所述Web伺服器模塊的運行方式包括:作為系統伺服器獨立運行、以可執行程序運行或與應用界面關聯運行。
6.一種桌面應用程式的實現裝置,其特徵在於,包括Web模塊和Web伺服器模塊,其中: Web模塊,用於開發並顯示應用界面,根據用戶通過所述應用界面發送的操作指令,向Web伺服器模塊發送Http或/和Websocket請求,並將所述Web伺服器模塊返回的處理結果顯示於所述應用界面; Web伺服器模塊,用於處理所述Http或/和Websocket請求,並將處理結果返回所述Web模塊。
7.根據權利要求6所述的桌面應用程式的實現裝置,其特徵在於,所述Web模塊用於:通過HTML超文本標記語言和CSS層疊樣式表開發應用界面,通過Webkit顯示所述應用界面。
8.根據權利要求6所述的桌面應用程式的實現裝置,其特徵在於,所述Web伺服器模塊用於:解析所述Http或/和Websocket請求,根據解析結果,調用對應的業務邏輯處理所述Http 或 / 和 Websocket 請求。
9.根據權利要求6-8任一項所述的桌面應用程式的實現裝置,其特徵在於,所述Web伺服器模塊包括Http伺服器或/和Websocket伺服器。
10.根據權利要求6-8任一項所述的桌面應用程式的實現裝置,其特徵在於,所述Web伺服器模塊的運行方式包括:作為系統伺服器獨立運行、以可執行程序運行或與應用界面關聯運行。
【文檔編號】H04L29/06GK103605525SQ201310628410
【公開日】2014年2月26日 申請日期:2013年11月29日 優先權日:2013年11月29日
【發明者】陳集 申請人:深圳市中興移動通信有限公司