本申請涉及數(shù)據(jù)處理領(lǐng)域,特別是涉及數(shù)據(jù)處理方法和相關(guān)裝置。
背景技術(shù):
1、在前端的應(yīng)用項目開發(fā)工作中,為了實現(xiàn)各類功能,經(jīng)常需要安裝不同的功能模塊,例如javascript庫、css框架、圖標字體等都屬于不同的功能模塊。這種安裝功能模塊的方式稱為依賴安裝,這些被安裝的功能模塊也可以記為依賴項。在進行功能模塊的安裝之前,首先需要進行該功能模塊的依賴包(也即功能安裝文件)的加載。
2、在開發(fā)設(shè)計時,同一個功能模塊可能會在實現(xiàn)不同功能時均需要被請求安裝,且需要安裝的是不同版本的該功能模塊,例如實現(xiàn)功能a時,需要安裝第一版本的功能模塊c,實現(xiàn)功能b時,需要安裝第二版本的功能模塊c。
3、然而,相關(guān)技術(shù)中,并不能準確記錄依賴安裝中的依賴關(guān)系,導致在需要進行功能模塊的依賴包加載時,經(jīng)常會遇到加載到了非預期版本的功能模塊的情況,導致運行錯誤引發(fā)運行問題。
技術(shù)實現(xiàn)思路
1、為了解決上述技術(shù)問題,本申請?zhí)峁┝艘环N數(shù)據(jù)處理方法和相關(guān)裝置,能準確記錄依賴關(guān)系,提升功能模塊的加載效率和精度。
2、本申請實施例公開了如下技術(shù)方案:
3、一方面,本申請實施例提供了一種數(shù)據(jù)處理方法,包括:
4、獲取目標應(yīng)用在運行過程中需加載的功能模塊集合以及依賴關(guān)系,所述依賴關(guān)系用于標識所述功能模塊集合中的功能模塊與功能模塊的加載方之間的關(guān)系;
5、根據(jù)所述依賴關(guān)系將所述功能模塊集合劃分為直接依賴集合和間接依賴集合,所述直接依賴集合中的功能模塊為所述目標應(yīng)用作為加載方運行時加載的功能模塊,所述間接依賴集合中的功能模塊為所述功能模塊集合中任一功能模塊作為加載方運行時加載的功能模塊;
6、根據(jù)所述直接依賴集合和所述間接依賴集合,構(gòu)建所述功能模塊集合在所述目標應(yīng)用中的地址目錄,所述地址目錄用于標識所述功能模塊集合中功能模塊待加載時加載方的查詢地址,在所述地址目錄中,具有所述依賴關(guān)系的功能模塊的查詢地址之間通過地址層級建立關(guān)聯(lián)關(guān)系;
7、當運行所述目標應(yīng)用的過程中獲取目標加載方的模塊加載請求時,根據(jù)所述目標加載方在所述地址目錄中的目標查詢地址和與所述目標查詢地址具有關(guān)聯(lián)關(guān)系的查詢地址,查詢得到所述模塊加載請求對應(yīng)的待加載功能模塊并進行加載。
8、另一方面,本申請實施例提供了一種數(shù)據(jù)處理裝置,所述裝置包括:獲取模塊、劃分模塊、構(gòu)建模塊及查詢模塊;
9、所述獲取模塊,用于獲取目標應(yīng)用在運行過程中需加載的功能模塊集合以及依賴關(guān)系,所述依賴關(guān)系用于標識所述功能模塊集合中的功能模塊與功能模塊的加載方之間的關(guān)系;
10、所述劃分模塊,用于根據(jù)所述依賴關(guān)系將所述功能模塊集合劃分為直接依賴集合和間接依賴集合,所述直接依賴集合中的功能模塊為所述目標應(yīng)用作為加載方運行時加載的功能模塊,所述間接依賴集合中的功能模塊為所述功能模塊集合中任一功能模塊作為加載方運行時加載的功能模塊;
11、所述構(gòu)建模塊,用于根據(jù)所述直接依賴集合和所述間接依賴集合,構(gòu)建所述功能模塊集合在所述目標應(yīng)用中的地址目錄,所述地址目錄用于標識所述功能模塊集合中功能模塊待加載時加載方的查詢地址,在所述地址目錄中,具有所述依賴關(guān)系的功能模塊的查詢地址之間通過地址層級建立關(guān)聯(lián)關(guān)系;
12、所述查詢模塊,用于當運行所述目標應(yīng)用的過程中獲取目標加載方的模塊加載請求時,根據(jù)所述目標加載方在所述地址目錄中的目標查詢地址和與所述目標查詢地址具有關(guān)聯(lián)關(guān)系的查詢地址,查詢得到所述模塊加載請求對應(yīng)的待加載功能模塊并進行加載。
13、又一方面,本申請實施例提供了一種計算機設(shè)備,計算機設(shè)備包括處理器以及存儲器:
14、存儲器用于存儲計算機程序,并將計算機程序傳輸給處理器;
15、處理器用于根據(jù)計算機程序執(zhí)行以上方面所述的方法。
16、又一方面。本申請實施例提供了一種計算機可讀存儲介質(zhì),計算機可讀存儲介質(zhì)用于存儲計算機程序,計算機程序用于執(zhí)行以上方面所述的方法。
17、又一方面,本申請實施例提供了一種包括計算機程序的計算機程序產(chǎn)品,當其在計算機設(shè)備上運行時,使得計算機設(shè)備執(zhí)行以上方面所述的方法。
18、由上述技術(shù)方案可以看出,針對需要加載功能模塊才能提供正確服務(wù)的目標應(yīng)用,根據(jù)目標應(yīng)用在運行過程中需加載的功能模塊集合以及依賴關(guān)系,將需加載的功能模塊集合劃分為直接依賴集合和間接依賴集合,其中,直接依賴集合中的功能模塊為目標應(yīng)用作為加載方運行時加載的功能模塊,間接依賴集合中的功能模塊為功能模塊集合中任一功能模塊作為加載方運行時加載的功能模塊。通過直接依賴和間接依賴的維度,對功能模塊進行區(qū)分,使得在基于依賴關(guān)系構(gòu)建用于加載功能模塊的地址目錄時,加載方和被加載方的查詢地址可以準確在地址目錄中建立關(guān)聯(lián)關(guān)系,由此在加載方需要加載功能模塊時,可以在地址目錄中基于關(guān)聯(lián)關(guān)系準確的加載到所需功能模塊,而不會加載到與自身不具備依賴關(guān)系的其他功能模塊,使得在加載環(huán)境中涉及多個版本的相同功能模塊時,降低出現(xiàn)加載到非所需版本的功能模塊的可能,從而通過標明關(guān)聯(lián)關(guān)系的地址目錄大大提升了功能模塊的加載效率和精度。
1.一種數(shù)據(jù)處理方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述關(guān)聯(lián)關(guān)系為地址層級的父子關(guān)系,所述根據(jù)所述目標加載方在所述地址目錄中的目標查詢地址和與所述目標查詢地址具有關(guān)聯(lián)關(guān)系的查詢地址,查詢得到所述模塊加載請求對應(yīng)的待加載功能模塊并進行加載,包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述關(guān)聯(lián)關(guān)系為地址層級的父子關(guān)系,所述直接依賴集合中包括第一功能模塊,所述間接依賴集合中包括第二功能模塊和第三功能模塊,在所述依賴關(guān)系中,所述第一功能模塊為所述第二功能模塊的加載方,所述第二功能模塊為所述第三功能模塊的加載方,針對所述第一功能模塊、所述第二功能模塊和所述第三功能模塊,所述根據(jù)所述直接依賴集合和所述間接依賴集合,構(gòu)建所述功能模塊集合在所述目標應(yīng)用中的地址目錄,包括:
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述直接依賴集合和所述間接依賴集合,構(gòu)建所述功能模塊集合在所述目標應(yīng)用中的地址目錄,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述第一目錄層級處于所述地址目錄中針對功能模塊的根目錄下,所述第二目錄層級處于所述根目錄的下一級目錄下。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,當所述目標加載方為所述第一功能模塊,待加載功能模塊為所述第二功能模塊時,所述根據(jù)所述目標加載方在所述地址目錄中的目標查詢地址和與所述目標查詢地址具有關(guān)聯(lián)關(guān)系的查詢地址,查詢得到所述模塊加載請求對應(yīng)的待加載功能模塊并進行加載,包括:
7.根據(jù)權(quán)利要求4所述的方法,其特征在于,當所述目標加載方為所述第二功能模塊,待加載功能模塊為所述第三功能模塊時,所述根據(jù)所述目標加載方在所述地址目錄中的目標查詢地址和與所述目標查詢地址具有關(guān)聯(lián)關(guān)系的查詢地址,查詢得到所述模塊加載請求對應(yīng)的待加載功能模塊并進行加載,包括:
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述功能模塊集合中包括第一版本的目標功能模塊和第二版本的目標功能模塊,在所述地址目錄中,所述第一版本的目標功能模塊的查詢地址攜帶有所述第一版本的標識,所述第二版本的目標功能模塊的查詢地址攜帶有所述第二版本的標識。
9.根據(jù)權(quán)利要求1-8任意一項所述的方法,其特征在于,所述方法還包括:
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,當所述待加載功能模塊是通過所述模塊加載地址進行加載時,所述模塊加載地址為加載位置軟鏈接,用于指向所述待加載功能模塊在所述全局存儲空間中的存儲位置。
11.根據(jù)權(quán)利要求1-8任意一項所述的方法,其特征在于,在所述根據(jù)所述直接依賴集合和所述間接依賴集合,構(gòu)建所述功能模塊集合在所述目標應(yīng)用中的地址目錄之前,所述方法還包括:
12.一種數(shù)據(jù)處理裝置,其特征在于,所述裝置包括:獲取模塊、劃分模塊、構(gòu)建模塊及查詢模塊;
13.一種計算機設(shè)備,其特征在于,所述計算機設(shè)備包括處理器以及存儲器:
14.一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)用于存儲計算機程序,所述計算機程序在被計算機設(shè)備執(zhí)行時實現(xiàn)執(zhí)行權(quán)利要求1-11中任意一項所述的方法。
15.一種包括計算機程序的計算機程序產(chǎn)品,當其在計算機設(shè)備上運行時,使得所述計算機設(shè)備執(zhí)行權(quán)利要求1-11中任意一項所述的方法。