TW202001549A - 應用程式的開發方法和裝置 - Google Patents

應用程式的開發方法和裝置 Download PDF

Info

Publication number
TW202001549A
TW202001549A TW108108596A TW108108596A TW202001549A TW 202001549 A TW202001549 A TW 202001549A TW 108108596 A TW108108596 A TW 108108596A TW 108108596 A TW108108596 A TW 108108596A TW 202001549 A TW202001549 A TW 202001549A
Authority
TW
Taiwan
Prior art keywords
page
application
information
behavior
routing information
Prior art date
Application number
TW108108596A
Other languages
English (en)
Inventor
李春城
劉彥瑋
孫福澤
魏秋明
張果
李敏
Original Assignee
香港商阿里巴巴集團服務有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 香港商阿里巴巴集團服務有限公司 filed Critical 香港商阿里巴巴集團服務有限公司
Publication of TW202001549A publication Critical patent/TW202001549A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申請實施例提供了一種應用程式的開發方法和裝置,所述方法包括:獲取應用程式的路由資訊;根據所述路由資訊,確定所述應用程式的至少一個頁面;呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖;對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式。本實施透過預置的開發框架來實現應用程式的開發,能夠規範業務代碼,使得開發出的應用程式或項目夠能夠保持一致的目錄結構,提高了項目的可讀性和可維護性,簡化了應用程式的開發過程。

Description

應用程式的開發方法和裝置
本申請涉及計算機技術領域,特別是涉及一種應用程式的開發方法和一種應用程式的開發裝置。
框架(Framework)是指整個或部分系統的可重用設計,表現為一組抽象構件及構件實例間互動的方法,也可以被認為是一種被應用開發者定制的應用骨架。一般地,框架又可以分為前端框架和後端框架。 以前端框架為例。由於前端框架中封裝了一些基本的功能,例如html文檔操作,各種漂亮的控件等等,開發人員在使用前端框架進行網頁開發或設計時,能夠簡化網頁開發或設計的過程,降低頁面開發週期,提高頁面的美觀性。 目前,使用較廣泛的一種前端框架便是Dva框架。Dva框架是一種輕量級的JS(JavaScript,一種直譯式腳本語言)框架,可以快速地實現項目的初始化,無需進行繁瑣的配置。但是,Dva框架創造了很多概念,例如redux、react router、subscriptions、effects、reducers等等,如果開發者不理解這些概念,就很難上手使用Dva框架。
鑒於上述問題,提出了本申請實施例以便提供一種克服上述問題或者至少部分地解決上述問題的一種應用程式的開發方法和相應的一種應用程式的開發裝置。 為了解決上述問題,本申請公開了一種應用程式的開發方法,包括: 獲取應用程式的路由資訊; 根據所述路由資訊,確定所述應用程式的至少一個頁面; 呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖; 對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式。 可選地,所述獲取應用程式的路由資訊的步驟包括: 獲取應用程式的配置資訊; 從所述配置資訊中提取所述應用程式的路由資訊,所述路由資訊包括頁面的路徑資訊、所述頁面的命名資訊,以及,所述頁面對應的控制器類的資訊。 可選地,所述根據所述路由資訊,確定所述應用程式的至少一個頁面的步驟包括: 確定所述頁面的路徑資訊的條數; 根據所述條數,確定所述應用程式的至少一個頁面;其中,任一頁面具有唯一的一條路徑資訊。 可選地,所述頁面模型由多個頁面行為構成,所述呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖的步驟包括: 確定所述頁面的多個頁面行為; 呼叫預置的Bone Web開發框架,生成所述多個頁面行為; 基於所述多個頁面行為,渲染出頁面視圖。 可選地,所述基於所述多個頁面行為,渲染出頁面視圖的步驟包括: 獲取各個頁面行為的狀態資訊; 呼叫所述Bone Web開發框架中的React組件; 基於所述狀態資訊,採用所述React組件渲染出所述頁面視圖。 可選地,所述對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式的步驟包括: 根據所述頁面對應的控制器類的資訊,呼叫所述Bone Web開發框架中對應的控制器類; 透過所述控制器類,對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式。 可選地,還包括: 透過所述控制器類,對所述多個頁面行為進行監聽; 當監聽到任一頁面行為執行完成時,更新所述頁面視圖。 為了解決上述問題,本申請公開了一種應用程式的開發方法,包括: 獲取應用程式的配置資訊,所述配置資訊包括頁面路由資訊; 確定與所述頁面路由資訊相對應的網頁頁面和所述網頁頁面中包括的多個頁面行為; 呼叫預置的Bone Web開發框架,生成所述多個頁面行為; 基於所述多個頁面行為,渲染出頁面視圖; 當監聽到任一頁面行為執行完成時,更新所述頁面視圖。 為了解決上述問題,本申請公開了一種應用程式的開發裝置,包括: 獲取模組,用於獲取應用程式的路由資訊; 確定模組,用於根據所述路由資訊,確定所述應用程式的至少一個頁面; 生成模組,用於呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖; 關聯模組,用於對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式。 可選地,所述獲取模組包括: 配置資訊獲取子模組,用於獲取應用程式的配置資訊; 路由資訊提取子模組,用於從所述配置資訊中提取所述應用程式的路由資訊,所述路由資訊包括頁面的路徑資訊、所述頁面的命名資訊,以及,所述頁面對應的控制器類的資訊。 可選地,所述確定模組包括: 路徑資訊條數確定子模組,用於確定所述頁面的路徑資訊的條數; 頁面確定子模組,用於根據所述條數,確定所述應用程式的至少一個頁面;其中,任一頁面具有唯一的一條路徑資訊。 可選地,所述頁面模型由多個頁面行為構成,所述生成模組包括: 頁面行為確定子模組,用於確定所述頁面的多個頁面行為; 頁面行為生成子模組,用於呼叫預置的Bone Web開發框架,生成所述多個頁面行為; 頁面視圖渲染子模組,用於基於所述多個頁面行為,渲染出頁面視圖。 可選地,所述頁面視圖渲染子模組包括: 狀態資訊獲取單元,用於獲取各個頁面行為的狀態資訊; React組件呼叫單元,用於呼叫所述Bone Web開發框架中的React組件; 頁面視圖渲染單元,用於基於所述狀態資訊,採用所述React組件渲染出所述頁面視圖。 可選地,所述關聯模組包括: 控制器類呼叫子模組,用於根據所述頁面對應的控制器類的資訊,呼叫所述Bone Web開發框架中對應的控制器類; 關聯子模組,用於透過所述控制器類,對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式。 可選地,所述裝置還包括: 監聽模組,用於透過所述控制器類,對所述多個頁面行為進行監聽; 更新模組,用於在監聽到任一頁面行為執行完成時,更新所述頁面視圖。 為了解決上述問題,本申請公開了一種應用程式的開發裝置,包括: 獲取模組,用於獲取應用程式的配置資訊,所述配置資訊包括頁面路由資訊; 確定模組,用於確定與所述頁面路由資訊相對應的網頁頁面和所述網頁頁面中包括的多個頁面行為; 生成模組,用於呼叫預置的Bone Web開發框架,生成所述多個頁面行為; 渲染模組,用於基於所述多個頁面行為,渲染出頁面視圖; 更新模組,用於在監聽到任一頁面行為執行完成時,更新所述頁面視圖。 與背景技術相比,本申請實施例包括以下優點: 本申請實施例,透過獲取應用程式的路由資訊,並根據上述路由資訊,可以確定應用程式的至少一個頁面,然後呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖,進而在對上述頁面模型和頁面視圖進行關聯後,可以完成應用程式的開發。本實施透過預置的開發框架來實現應用程式的開發,能夠規範業務代碼,使得開發出的應用程式或項目夠能夠保持一致的目錄結構,提高了項目的可讀性和可維護性,簡化了應用程式的開發過程。
為使本申請的上述目的、特徵和優點能夠更加明顯易懂,下面結合附圖和具體實施方式對本申請作進一步詳細的說明。 參照圖1,示出了本申請一個實施例的一種應用程式的開發方法的步驟流程示意圖,具體可以包括如下步驟: 步驟101,獲取應用程式的路由資訊; 需要說明的是,本方法可以應用於基於瀏覽器的網頁應用程式的開發。上述瀏覽器可以是基於Trident內核的瀏覽器,也可以是基於Gecko內核的瀏覽器,還可以是基於Webkit內核或其他內核的瀏覽器,本實施例對瀏覽器的具體類型不作限定。 通常,在開發或創建一個應用程式前,需要首先配置該應用程式的各種基本資訊。例如,該應用程式的ID、應用程式各個頁面的路由資訊等等。 在本申請實施例中,可以首先獲取待開發的應用程式的路由資訊。 步驟102,根據所述路由資訊,確定所述應用程式的至少一個頁面; 在本申請實施例中,應用程式的路由資訊可以用於指定該應用程式包括的一個或多個頁面。 通常,應用程式的路由資訊可以包括頁面的路徑資訊,頁面的命名資訊,以及,上述頁面對應的控制器類的資訊。一般地,一條路徑可以與唯一的一個頁面相對應。 因此,在獲取到應用程式的路由資訊後,可以透過識別該路由資訊中包含多少條路徑資訊,來確定該應用程式包括有多少個頁面。 步驟103,呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖; 在本申請實施例中,預置的開發框架可以是Bone Web開發框架。Bone Web開發框架是一種專注於web 應用的前端開發框架,包括有完整易用的框架、組件、工具鏈支撐。透過應用Bone Web開發框架,可以方便開發人員使用簡單自然的研發流程及穩定高效的基礎服務,從而快速地開發出功能強勁的各種網頁應用程式。 Bone Web開發框架基於開源的React庫,整合了生態中優質的設計方案,透過化繁為簡,形成易用、可擴展、能力豐富的Bone框架,能夠為應用開發提供合理的架構層設計。Bone Web開發框架同時提供了豐富、規範、易用、設計良好的UI組件,可以實現網頁應用程式的快速搭建。 在本申請實施例中,可以呼叫上述Bone Web開發框架,創建各個頁面的頁面模型和頁面視圖。 通常,應用程式中所有的業務邏輯(如對資料的增加、刪除、修改、查找,或者,資料的清理與組裝等等)都可以放在頁面模型中,而頁面視圖則主要是用來描述當前頁面的UI。可以透過在頁面視圖中直接呼叫頁面模型中的reducer方法來處理應用程式所涉及到的業務邏輯。reducer方式是開源項目Redux(一種前端架構)中的一種概念,可以在開發應用程式時用於處理各種業務邏輯。 步驟104,對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式。 在本申請實施例中,Bone Web開發框架中還包括控制器類,上述控制器類是應用程式中具體頁面的控制層,可以透過該控制器類對頁面模型和頁面視圖進行關聯,從而生成應用程式,完成該應用程式的開發過程。 需要說明的是,控制器類除了可以對頁面模型和頁面視圖進行關聯及初始化外,還可以實現事件的監聽、頁面參數的獲取,以及,業務邏輯的封裝等功能。 在本申請實施例中,透過獲取應用程式的路由資訊,並根據上述路由資訊,可以確定應用程式的至少一個頁面,然後呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖,進而在對上述頁面模型和頁面視圖進行關聯後,可以完成應用程式的開發。本實施透過預置的開發框架來實現應用程式的開發,能夠規範業務代碼,使得開發出的應用程式或項目夠能夠保持一致的目錄結構,提高了項目的可讀性和可維護性,簡化了應用程式的開發過程。 參照圖2,示出了本申請一個實施例的另一種應用程式的開發方法的步驟流程示意圖,具體可以包括如下步驟: 步驟201,獲取應用程式的配置資訊; 需要說明的是,本方法可以應用於基於各類瀏覽器的網頁應用程式的開發。例如,基於Trident內核的瀏覽器的網頁應用程式的開發過程,基於Gecko內核的瀏覽器的網頁應用程式的開發過程,或者,基於Webkit內核及其他內核的瀏覽器的網頁應用程式的開發過程,本實施例對瀏覽器的具體類型不作限定。 通常,在開發或創建一個應用程式前,需要首先配置該應用程式的各種基本資訊。 因此,在本申請實施例中,可以首先獲取待開發的應用程式的配置資訊。上述配置資訊可以包括應用程式的ID、應用程式各個頁面的路由資訊以及其他資訊等等。 步驟202,從所述配置資訊中提取所述應用程式的路由資訊,所述路由資訊包括頁面的路徑資訊、頁面的命名資訊,以及,頁面對應的控制器類的資訊; 在本申請實施例中,當獲取到應用程式的配置資訊後,可以從上述配置資訊中提取出相應的路由資訊。應用程式的路由資訊可以用於指定該應用程式包括的一個或多個頁面。上述路由資訊可以包括頁面的路徑資訊、頁面的命名資訊,以及,頁面對應的控制器類的資訊。 步驟203,根據所述路由資訊,確定所述應用程式的至少一個頁面; 在本申請實施例中,如果待開發的應用程式包括多個頁面,則可以透過路由資訊來指定多個頁面。 在本申請實施例中,可以透過獲取到的路由資訊中路徑資訊的條數來確定該應用程式包括多少個頁面。 在具體實現中,可以首先確定頁面的路徑資訊的條數,然後根據上述條數,確定待開發的應用程式的至少一個頁面。通常,任一頁面具有唯一的一條路徑資訊。 步驟204,確定所述頁面的多個頁面行為,所述多個頁面行為構成所述頁面的頁面模型; 在本申請實施例中,在獲取到應用程式的配置資訊,並根據配置資訊中的路由資訊確定出該應用程式包括多少個頁面後,可以開始各個頁面的開發工作。 在本申請實施例中,各個頁面均可以包括三部分,即頁面本身的控制器類、頁面所對應的頁面模型,以及,頁面視圖。 其中,頁面本申請的控制器類是頁面的控制器,可以用於對當前頁面對應的頁面模型和頁面視圖進行關聯外,還可以實現事件的監聽、頁面參數的獲取,以及,業務邏輯的封裝等功能。 頁面模型則包括該應用程式所有的業務邏輯或頁面行為,是一個頁面的具體的業務邏輯的實現,頁面模型抽象了當前頁面中的各個業面行為,是頁面行為的函數集合,多個頁面行為共同構成了當前頁面的頁面模型。當任一頁面行為執行完成後,可以更新當前頁面的頁面狀態或頁面視圖。 而頁面視圖則主要是用來描述當前頁面的UI,可以透過在頁面視圖中直接呼叫頁面模型中的reducer方法來處理應用程式所涉及到的業務邏輯或頁面行為。 步驟205,呼叫預置的Bone Web開發框架,生成所述多個頁面行為; 在本申請實施例中,在確定出各個頁面的頁面行為後,可以呼叫預置的Bone Web開發框架進行頁面行為的開發。Bone Web開發框架是一種專注於web 應用的前端開發框架,包括有完整易用的框架、組件、工具鏈支撐。透過應用Bone Web開發框架,可以方便開發人員使用簡單自然的研發流程及穩定高效的基礎服務,從而快速地開發出功能強勁的各種網頁應用程式。 如圖3所示,是本申請一個實施例的一種Bone Web開發框架的示意性基礎結構圖。在圖3中,Page(頁面)、Layout(佈局),以及,Widget(微件)均表示一種組件,各個組件均可以透過Controller(控制器類)綁定一個頁面模型(Model),從而使得這類組件都能夠自己關聯一些資料。 因此,圖3中的結構可以看作是Controller + Page、Contorller + Layout,以及,Controller + Widget等部分。 圖3中所示的initWithAction是Controller的一個方法,該方法會在初始化後執行。在initWithAction方法裡,可以將Model轉換為redux架構中的reducer,並且可以設置當前頁面的初始狀態。這樣,在組件的實際運行時,就變成了標準的react+redux的運行方式。 對於Page、Layout,以及,Widget等組件上的View (視圖)和SubView(子視圖)等,則與Page、Layout,以及,Widget等組件共同構成了一個樹形的組件嵌套結構。在開發過程中,View和SubView可以獲得Page、Layout,以及,Widget等組件傳遞下來的資料,並根據這些資料進行渲染。 如圖4所示,是本申請一個實施例的一種組件關係示意圖。圖4具體表示了Layout、Page、Widget這三種組件之間的一種嵌套關係,其中,Page可以是Layout的子組件,Widget可以是Page的子組件,一個Layout組件下可以有多個Page組件,一個Page組件下也可以有多個Widget組件。 需要說明的是,Widget組件實際上是一個綁定有獨立資料的組件,由於它關聯的資料在全域是單例存在的(即在整個應用中是唯一的),所以,Widget組件在渲染到各個頁面的時候,操作和顯示的資料都是一樣的。 在本申請實施例中,上述組件與資料可以按照如下方式進行互動: 首先,將資料傳入組件,由組件對資料進行渲染,並產生事件,然後,組件發出一個action(動作),action經過資料中間件(Data Middleware)的處理,在redux的reducer中(也就是Model的方法中)更新資料,最後將更新後的資料再傳入組件,並循環上述過程。其中,Data Middleware可以是知redux架構中的middleware(中間件),在Bone Web開發框架中,可以直接將middleware交給redux去處理。 以計數器應用為例,頁面行為可以包括計數器加1和計數器減1兩個頁面行為,可以呼叫Bone Web開發框架對上述兩個頁面行為進行開發。 步驟206,基於所述多個頁面行為,渲染出頁面視圖; 在本申請實施例中,頁面視圖中包含有頁面的渲染邏輯,可以根據頁面的狀態,渲染出當前頁面的頁面視圖。 在具體實現中,可以首先獲取各個頁面行為的狀態資訊,然後呼叫Bone Web開發框架中的React組件,並基於上述狀態資訊,採用React組件渲染出當前頁面的頁面視圖。 同樣以計數器應用為例,可以透過React組件在頁面中渲染出兩個按鈕和一個文本。兩個按鈕中其中一個為加操作按鈕,另一個為減操作按鈕,而文本則用於顯示當前的計數值。 步驟207,根據所述頁面對應的控制器類的資訊,呼叫所述Bone Web開發框架中對應的控制器類; 在本申請實施例中,各個頁面中均包括相應的控制器類的資訊,因此,可以根據該資訊,呼叫Bone Web開發框架中對應的控制器類來進行頁面模型和頁面視圖的關聯及初始化處理。 步驟208,透過所述控制器類,對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式; 在本申請實施例中,當透過控制器類完成頁面模型和頁面視圖的關聯後,便完成了上述應用程式的開發過程。 如圖5所示,是本申請的一種計數器應用的運行界面示意圖。在圖5中,包括兩個按鈕和一個文本。兩個按鈕中其中一個為加操作按鈕,另一個為減操作按鈕,而文本則用於顯示當前的計數值。 步驟209,透過所述控制器類,對所述多個頁面行為進行監聽; 在本申請實施例中,控制器類還可以用於對各種事件或頁面行為的監聽。例如,在計數器應用中,可以透過控制器類監聽是否完成了一次加1操作或減1操作。 步驟210,當監聽到任一頁面行為執行完成時,更新所述頁面視圖。 在本申請實施例中,當控制器類監聽到任一頁面行為執行完成後,可以對頁面視圖進行更新。 例如,在計數器應用中,當控制器類監聽到完成了一次加1操作後,該應用的文本中顯示的計數值可以加1;當控制器類監聽到完成了一次減1操作後,該應用的文本中顯示的計數值可以減1。 在本申請實施例中,透過呼叫預置的Bone Web開發框架進行應用程式的開發,能夠規範業務代碼,使得開發出的應用程式或項目夠能夠保持一致的目錄結構,提高了項目的可讀性和可維護性,簡化了應用程式的開發過程。 參照圖6,示出了本申請一個實施例的又一種應用程式的開發方法的步驟流程示意圖,具體可以包括如下步驟: 步驟601,獲取應用程式的配置資訊,所述配置資訊包括頁面路由資訊; 需要說明的是,本方法可以應用於網頁應用程式的開發。在進行網頁應用程式的開發時,可以首先獲取該應用程式的配置資訊。例如,應用程式的ID、應用程式的頁面路由資訊等等。 步驟602,確定與所述頁面路由資訊相對應的網頁頁面和所述網頁頁面中包括的多個頁面行為; 通常,當應用程式包括多個頁面時,可以透過上述頁面路由資訊指定多個網頁頁面,各個網頁頁面中可以包括多個頁面行為。 例如,在一款網頁計數器應用中,包括一個網頁頁面,該網頁頁面中可以包括計數器加1和計數器減1兩個頁面行為。 步驟603,呼叫預置的Bone Web開發框架,生成所述多個頁面行為; 在本申請實施例中,在確定出各個網頁頁面包括的頁面行為後,可以呼叫Bone Web開發框架對上述頁面行為進行開發,多個頁面行為可以共同構成當前網頁頁面的頁面模型。 步驟604,基於所述多個頁面行為,渲染出頁面視圖; 在本申請實施例中,可以基於生成的多個頁面行為,呼叫Bone Web開發框架中的React組件,並採用上述React組件渲染出當前頁面的頁面視圖。 例如,在上述網頁計數器應用中,頁面視圖可以包括兩個按鈕和一個文本。 步驟605,當監聽到任一頁面行為執行完成時,更新所述頁面視圖。 在本申請實施例中,可以透過控制器類對各種事件或頁面行為的監聽,當監聽到任一頁面行為執行完成後,可以對頁面視圖進行更新。 例如,在計數器應用中,可以透過控制器類監聽是否完成了一次加1操作或減1操作。當監聽到完成了一次加1操作後,該應用的文本中顯示的計數值可以加1;當控制器類監聽到完成了一次減1操作後,該應用的文本中顯示的計數值可以減1。 由於本實施例中步驟601-步驟605與前述實施例中步驟101-步驟104以及步驟201-步驟210類似,本實施例描述得比較簡單,相關實現細節可以參閱前述實施例中的描述。 需要說明的是,對於方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請實施例並不受所描述的動作順序的限制,因為依據本申請實施例,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作並不一定是本申請實施例所必須的。 參照圖7,示出了本申請一個實施例的一種應用程式的開發裝置的示意性結構框圖,具體可以包括如下模組: 獲取模組701,用於獲取應用程式的路由資訊; 確定模組702,用於根據所述路由資訊,確定所述應用程式的至少一個頁面; 生成模組703,用於呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖; 關聯模組704,用於對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式。 在本申請實施例中,所述獲取模組701具體可以包括如下子模組: 配置資訊獲取子模組,用於獲取應用程式的配置資訊; 路由資訊提取子模組,用於從所述配置資訊中提取所述應用程式的路由資訊,所述路由資訊可以包括頁面的路徑資訊、所述頁面的命名資訊,以及,所述頁面對應的控制器類的資訊。 在本申請實施例中,所述確定模組702具體可以包括如下子模組: 路徑資訊條數確定子模組,用於確定所述頁面的路徑資訊的條數; 頁面確定子模組,用於根據所述條數,確定所述應用程式的至少一個頁面;其中,任一頁面具有唯一的一條路徑資訊。 在本申請實施例中,所述頁面模型可以由多個頁面行為構成,所述生成模組703具體可以包括如戲子模組: 頁面行為確定子模組,用於確定所述頁面的多個頁面行為; 頁面行為生成子模組,用於呼叫預置的Bone Web開發框架,生成所述多個頁面行為; 頁面視圖渲染子模組,用於基於所述多個頁面行為,渲染出頁面視圖。 在本申請實施例中,所述頁面視圖渲染子模組具體可以包括如下單元: 狀態資訊獲取單元,用於獲取各個頁面行為的狀態資訊; React組件呼叫單元,用於呼叫所述Bone Web開發框架中的React組件; 頁面視圖渲染單元,用於基於所述狀態資訊,採用所述React組件渲染出所述頁面視圖。 在本申請實施例中,所述關聯模組704具體可以包括如下子模組: 控制器類呼叫子模組,用於根據所述頁面對應的控制器類的資訊,呼叫所述Bone Web開發框架中對應的控制器類; 關聯子模組,用於透過所述控制器類,對所述頁面模型和頁面視圖進行關聯,以生成所述應用程式。 在本申請實施例中,所述裝置還可以包括如下模組: 監聽模組,用於透過所述控制器類,對所述多個頁面行為進行監聽; 更新模組,用於在監聽到任一頁面行為執行完成時,更新所述頁面視圖。 參照圖8,示出了本申請一個實施例的另一種應用程式的開發裝置的示意性結構框圖,具體可以包括如下模組: 獲取模組801,用於獲取應用程式的配置資訊,所述配置資訊包括頁面路由資訊; 確定模組802,用於確定與所述頁面路由資訊相對應的網頁頁面和所述網頁頁面中包括的多個頁面行為; 生成模組803,用於呼叫預置的Bone Web開發框架,生成所述多個頁面行為; 渲染模組804,用於基於所述多個頁面行為,渲染出頁面視圖; 更新模組805,用於在監聽到任一頁面行為執行完成時,更新所述頁面視圖。 對於裝置實施例而言,由於其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。 本說明書中的各個實施例均採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。 本領域內的技術人員應明白,本申請實施例的實施例可提供為方法、裝置、或計算機程式產品。因此,本申請實施例可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本申請實施例可採用在一個或多個其中包含有計算機可用程式代碼的計算機可用儲存媒體(包括但不限於磁碟儲存器、CD-ROM、光學儲存器等)上實施的計算機程式產品的形式。 在一個典型的配置中,所述計算機設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和內存記憶體。內存記憶體可能包括計算機可讀媒體中的非永久性儲存器,隨機存取記憶體(RAM)及/或非揮發性內存記憶體等形式,如唯讀記憶體(ROM)或閃存(flash RAM)。內存記憶體是計算機可讀媒體的示例。計算機可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是計算機可讀指令、資料結構、程式的模組或其他資料。計算機的儲存媒體的例子包括,但不限於相變內存記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、只讀儲存器(ROM)、電可擦除可編程只讀記憶體(EEPROM)、快閃記憶體或其他內存記憶體技術、只讀光碟只讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁碟儲存或其他磁性儲存設備或任何其他非傳輸媒體,可用於儲存可以被計算設備存取的資訊。按照本文中的界定,計算機可讀媒體不包括非持續性的電腦可讀媒體(transitory media),如調變的資料信號和載波。 本申請實施例是參照根據本申請實施例的方法、終端設備(系統)、和計算機程式產品的流程圖及/或方框圖來描述的。應理解可由計算機程式指令實現流程圖及/或方框圖中的每一流程及/或方框、以及流程圖及/或方框圖中的流程及/或方框的結合。可提供這些計算機程式指令到通用計算機、專用計算機、嵌入式處理機或其他可編程資料處理終端設備的處理器以產生一個機器,使得透過計算機或其他可編程資料處理終端設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程及和/或方框圖一個方框或多個方框中指定的功能的裝置。 這些計算機程式指令也可儲存在能引導計算機或其他可編程資料處理終端設備以特定方式工作的計算機可讀儲存器中,使得儲存在該計算機可讀儲存器中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程及/或方框圖一個方框或多個方框中指定的功能。 這些計算機程式指令也可裝載到計算機或其他可編程資料處理終端設備上,使得在計算機或其他可編程終端設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程終端設備上執行的指令提供用於實現在流程圖一個流程或多個流程及/或方框圖一個方框或多個方框中指定的功能的步驟。 儘管已描述了本申請實施例的優選實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優選實施例以及落入本申請實施例範圍的所有變更和修改。 最後,還需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要素。 以上對本申請所提供的一種應用程式的開發方法和一種應用程式的開發裝置,進行了詳細介紹,本文中應用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本申請的方法及其核心思想;同時,對於本領域的一般技術人員,依據本申請的思想,在具體實施方式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本申請的限制。
701‧‧‧獲取模組 702‧‧‧確定模組 703‧‧‧生成模組 704‧‧‧關聯模組 801‧‧‧獲取模組 802‧‧‧確定模組 803‧‧‧生成模組 804‧‧‧渲染模組 805‧‧‧更新模組
圖1是本申請一個實施例的一種應用程式的開發方法的步驟流程示意圖; 圖2是本申請一個實施例的另一種應用程式的開發方法的步驟流程示意圖; 圖3是本申請一個實施例的一種Bone Web開發框架的示意性基礎結構圖; 圖4是本申請一個實施例的一種組件關係示意圖; 圖5是本申請一個實施例的一種計數器應用程式的運行界面示意圖; 圖6是本申請一個實施例的又一種應用程式的開發方法的步驟流程示意圖; 圖7是本申請一個實施例的一種應用程式的開發裝置的示意性結構框圖; 圖8是本申請一個實施例的另一種應用程式的開發裝置的示意性結構框圖。

Claims (10)

  1. 一種應用程式的開發方法,其特徵在於,包括: 獲取應用程式的路由資訊; 根據該路由資訊,確定該應用程式的至少一個頁面; 呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖; 對該頁面模型和頁面視圖進行關聯,以生成該應用程式。
  2. 根據申請專利範圍第1項所述的方法,其中,所述獲取應用程式的路由資訊的步驟包括: 獲取應用程式的配置資訊; 從該配置資訊中提取該應用程式的路由資訊,該路由資訊包括頁面的路徑資訊、該頁面的命名資訊,以及,該頁面對應的控制器類的資訊。
  3. 根據申請專利範圍第2項所述的方法,其中,所述根據該路由資訊,確定該應用程式的至少一個頁面的步驟包括: 確定該頁面的路徑資訊的條數; 根據該條數,確定該應用程式的至少一個頁面;其中,任一頁面具有唯一的一條路徑資訊。
  4. 根據申請專利範圍第2項所述的方法,其中,該頁面模型由多個頁面行為構成,該呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖的步驟包括: 確定該頁面的多個頁面行為; 呼叫預置的Bone Web開發框架,生成該多個頁面行為; 基於該多個頁面行為,渲染出頁面視圖。
  5. 根據申請專利範圍第4項所述的方法,其中,所述基於該多個頁面行為,渲染出頁面視圖的步驟包括: 獲取各個頁面行為的狀態資訊; 呼叫該Bone Web開發框架中的React組件; 基於該狀態資訊,採用該React組件渲染出該頁面視圖。
  6. 根據申請專利範圍第4項所述的方法,其中,所述對該頁面模型和頁面視圖進行關聯,以生成該應用程式的步驟包括: 根據該頁面對應的控制器類的資訊,呼叫該Bone Web開發框架中對應的控制器類; 透過該控制器類,對該頁面模型和頁面視圖進行關聯,以生成該應用程式。
  7. 根據申請專利範圍第4項所述的方法,其中,還包括: 透過該控制器類,對該多個頁面行為進行監聽; 當監聽到任一頁面行為執行完成時,更新該頁面視圖。
  8. 一種應用程式的開發方法,其特徵在於,包括: 獲取應用程式的配置資訊,該配置資訊包括頁面路由資訊; 確定與該頁面路由資訊相對應的網頁頁面和該網頁頁面中包括的多個頁面行為; 呼叫預置的Bone Web開發框架,生成該多個頁面行為; 基於該多個頁面行為,渲染出頁面視圖; 當監聽到任一頁面行為執行完成時,更新該頁面視圖。
  9. 一種應用程式的開發裝置,其特徵在於,包括: 獲取模組,用於獲取應用程式的路由資訊; 確定模組,用於根據該路由資訊,確定該應用程式的至少一個頁面; 生成模組,用於呼叫預置的開發框架,分別生成各個頁面的頁面模型和頁面視圖; 關聯模組,用於對該頁面模型和頁面視圖進行關聯,以生成該應用程式。
  10. 一種應用程式的開發裝置,其特徵在於,包括: 獲取模組,用於獲取應用程式的配置資訊,該配置資訊包括頁面路由資訊; 確定模組,用於確定與該頁面路由資訊相對應的網頁頁面和該網頁頁面中包括的多個頁面行為; 生成模組,用於呼叫預置的Bone Web開發框架,生成該多個頁面行為; 渲染模組,用於基於該多個頁面行為,渲染出頁面視圖; 更新模組,用於在監聽到任一頁面行為執行完成時,更新該頁面視圖。
TW108108596A 2018-06-07 2019-03-14 應用程式的開發方法和裝置 TW202001549A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810580623.9 2018-06-07
CN201810580623.9A CN110580153B (zh) 2018-06-07 2018-06-07 一种应用程序的开发方法和装置

Publications (1)

Publication Number Publication Date
TW202001549A true TW202001549A (zh) 2020-01-01

Family

ID=68770789

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108108596A TW202001549A (zh) 2018-06-07 2019-03-14 應用程式的開發方法和裝置

Country Status (3)

Country Link
CN (1) CN110580153B (zh)
TW (1) TW202001549A (zh)
WO (1) WO2019233292A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111638880B (zh) * 2020-05-29 2023-10-13 浪潮通用软件有限公司 节点信息展示方法、装置、存储介质和计算机可读介质
CN112115395A (zh) * 2020-09-04 2020-12-22 上海悦易网络信息技术有限公司 一种用于实现页面路由跳转时的动画配置的方法与设备
CN112068879B (zh) * 2020-09-10 2023-10-13 中国工商银行股份有限公司 基于配置化的客户端应用程序开发框架构建方法及装置
CN113722026A (zh) * 2020-10-23 2021-11-30 北京沃东天骏信息技术有限公司 通信方法、装置、设备和计算机可读介质
CN112597413A (zh) * 2020-12-29 2021-04-02 深圳贝特莱电子科技股份有限公司 一种新型嵌入式系统框架及设备
CN114691128A (zh) * 2020-12-29 2022-07-01 苏州国双软件有限公司 一种前端页面生成方法、装置、电子设备及存储介质
CN113703743B (zh) * 2021-08-30 2023-12-26 贝壳找房(北京)科技有限公司 配置页面的方法和装置、渲染页面方法、客户端及服务器

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050278708A1 (en) * 2004-06-15 2005-12-15 Dong Zhao Event management framework for network management application development
CN101799754A (zh) * 2009-12-17 2010-08-11 中国电力科学研究院 一种web应用开发方法及系统
US9195477B1 (en) * 2012-10-09 2015-11-24 Sencha, Inc. Device profiles, deep linking, and browser history support for web applications
CN105094753A (zh) * 2014-04-18 2015-11-25 阿里巴巴集团控股有限公司 一种线框图的绘制方法、装置和系统
CN105760159A (zh) * 2016-02-01 2016-07-13 四川长虹电器股份有限公司 网站开发方法及其系统
CN106020849A (zh) * 2016-06-14 2016-10-12 浪潮软件股份有限公司 一种基于web开发框架的多主题实现方法

Also Published As

Publication number Publication date
CN110580153B (zh) 2022-05-27
CN110580153A (zh) 2019-12-17
WO2019233292A1 (zh) 2019-12-12

Similar Documents

Publication Publication Date Title
TW202001549A (zh) 應用程式的開發方法和裝置
CN107463367B (zh) 转场动画实现方法及装置
CN107291438B (zh) 自动化脚本的生成方法、装置及电子设备
US10585548B2 (en) Software robots for programmatically controlling computer programs to perform tasks
CN106874174B (zh) 接口测试及功能测试的实现方法和装置
WO2017124952A1 (zh) 一种网页脚本加载方法和装置
TWI683225B (zh) 腳本生成方法與裝置
CN108156022A (zh) 一种服务调用方法、装置及电子设备
JP2022130612A (ja) 状態管理永続性
TW201732626A (zh) 一種應用資源獲取方法及裝置
JP6016808B2 (ja) Webアクセスを実装するための方法およびサーバシステム
CN109460546A (zh) 表单生成方法、装置及电子设备
CN109426415B (zh) 一种生成级联选择器的方法及装置
CN110069734B (zh) 一种页面组件的展现方法和装置
CN109241026A (zh) 数据管理的方法、装置及系统
CN106610845B (zh) 信息管理方法、装置、服务器及系统
TWI744216B (zh) 提供提示資訊的方法及裝置
CN108241620B (zh) 查询脚本的生成方法及装置
CN113568697A (zh) 一种pc端页面转换为移动端页面的方法、系统及介质
CN111209028B (zh) 一种数据处理方法、装置、电子设备及存储介质
EP3779697A1 (en) Data processing method, device and apparatus
US9575734B2 (en) System and method for improved light-weight business process modeling in offline mode using browser resources
CN110837367B (zh) 用户界面处理方法、装置及电子设备
US9898314B2 (en) Javascript extension tool
CN115390835A (zh) 一种小程序标签化搜索框的构建方法及设备