本發(fā)明涉及軟件項目,具體而言,涉及一種視圖生成方法、裝置、電子設(shè)備及存儲介質(zhì)。
背景技術(shù):
1、隨著汽車系統(tǒng)變得越來越復(fù)雜,而軟件架構(gòu)以直觀、易理解的方式協(xié)助開發(fā)團(tuán)隊提高軟件系統(tǒng)的質(zhì)量和性能。因此架構(gòu)還原可視化的需求日益增加,成為大家關(guān)注的熱點。
2、由于軟件項目愈發(fā)復(fù)雜,開發(fā)團(tuán)隊需要通過更加方便快捷的方式理清邏輯,找到錯誤,增強記憶以及知識共享。uml視圖作為統(tǒng)一建模語言中用來描述系統(tǒng)行為的一種圖表工具,可以幫助開發(fā)團(tuán)隊快速抓取軟件工程中各功能的邏輯。
3、目前架構(gòu)還原工具層出不窮,但是通過現(xiàn)有技術(shù)中生成的視圖不具通用性,在業(yè)界或者公司內(nèi)部執(zhí)行項目過程評估的過程中不被認(rèn)可,且生成的架構(gòu)圖沒有分層顯示,很難獲取軟件項目層級信息,另外,對于非常復(fù)雜的函數(shù)結(jié)構(gòu),比如嵌套循環(huán)體,生成的視圖很難獲取完整的代碼結(jié)構(gòu),容易造成誤解,因此需要一種新的視圖生成方法,以提升生成視圖便捷性,進(jìn)而提升視圖的美觀性、通用性和易理解性。
技術(shù)實現(xiàn)思路
1、鑒于此,本發(fā)明實施例提供了一種視圖生成方法、裝置、電子設(shè)備及存儲介質(zhì),以解決視圖生成存在的便捷性差、美觀性差、通用性差和不易理解的問題。
2、本發(fā)明的一個方面提供了一種視圖生成方法,該方法包括以下步驟:
3、響應(yīng)于視圖生成指令,讀取源碼數(shù)據(jù);
4、對所述源碼數(shù)據(jù),進(jìn)行數(shù)據(jù)轉(zhuǎn)換,得到轉(zhuǎn)換文件;
5、基于所述轉(zhuǎn)換文件中的節(jié)點和節(jié)點內(nèi)容,進(jìn)行內(nèi)容轉(zhuǎn)化和坐標(biāo)計算,得到文本文件對象和每一節(jié)點對應(yīng)子節(jié)點的節(jié)點坐標(biāo);
6、將所述文本文件對象和所述每一節(jié)點對應(yīng)子節(jié)點的節(jié)點坐標(biāo)寫入文本文件,得到目標(biāo)文本文件;
7、基于所述目標(biāo)文本文件,進(jìn)行數(shù)據(jù)結(jié)構(gòu)和形式轉(zhuǎn)換,得到可擴(kuò)展標(biāo)記語言文件;
8、調(diào)用視圖布局工具,并將所述可擴(kuò)展標(biāo)記語言文件輸入到所述視圖布局工具中,以生成目標(biāo)視圖。
9、本發(fā)明的另一方面提供了一種視圖生成裝置,所述裝置包括:
10、獲取模塊,用于響應(yīng)于視圖生成指令,讀取源碼數(shù)據(jù);
11、第一轉(zhuǎn)換模塊,用于對所述源碼數(shù)據(jù),進(jìn)行數(shù)據(jù)轉(zhuǎn)換,得到轉(zhuǎn)換文件;
12、計算模塊,用于基于所述轉(zhuǎn)換文件中的節(jié)點和節(jié)點內(nèi)容,進(jìn)行內(nèi)容轉(zhuǎn)化和坐標(biāo)計算,得到文本文件對象和每一節(jié)點對應(yīng)子節(jié)點的節(jié)點坐標(biāo);
13、寫入模塊,用于將所述文本文件對象和所述每一節(jié)點對應(yīng)子節(jié)點的節(jié)點坐標(biāo)寫入文本文件,得到目標(biāo)文本文件;
14、第二轉(zhuǎn)換模塊,用于基于所述目標(biāo)文本文件,進(jìn)行數(shù)據(jù)結(jié)構(gòu)和形式轉(zhuǎn)換,得到可擴(kuò)展標(biāo)記語言文件;
15、生成模塊,用于調(diào)用視圖布局工具,并將所述可擴(kuò)展標(biāo)記語言文件輸入到所述視圖布局工具中,以生成目標(biāo)視圖。
16、本發(fā)明的又一方面提供了一種電子設(shè)備,所述包括:
17、處理器;
18、用于存儲所述處理器可執(zhí)行指令的存儲器;
19、其中,所述處理器被配置為執(zhí)行所述指令,以實現(xiàn)上述中任一項所述的視圖生成方法。
20、本發(fā)明的又一方面提供了一種計算機(jī)可讀存儲介質(zhì),當(dāng)所述存儲介質(zhì)中的指令由電子設(shè)備的處理器執(zhí)行時,使得所述電子設(shè)備能夠執(zhí)行上述中任一項所述的視圖生成方法。
21、本發(fā)明提供的一種視圖生成方法、裝置、電子設(shè)備及存儲介質(zhì),通過響應(yīng)于視圖生成指令,讀取源碼數(shù)據(jù);進(jìn)而對源碼數(shù)據(jù),進(jìn)行數(shù)據(jù)轉(zhuǎn)換,得到轉(zhuǎn)換文件;提升了讀取源碼數(shù)據(jù)結(jié)構(gòu)的方便性,進(jìn)而提升了生成目標(biāo)視圖的便捷性;進(jìn)一步的,基于轉(zhuǎn)換文件中的節(jié)點和節(jié)點內(nèi)容,進(jìn)行內(nèi)容轉(zhuǎn)化和坐標(biāo)計算,得到文本文件對象和每一節(jié)點對應(yīng)子節(jié)點的節(jié)點坐標(biāo);并將文本文件對象和每一節(jié)點對應(yīng)子節(jié)點的節(jié)點坐標(biāo)寫入文本文件,得到目標(biāo)文本文件;進(jìn)而基于所述目標(biāo)文本文件,進(jìn)行數(shù)據(jù)結(jié)構(gòu)和形式轉(zhuǎn)換,得到可擴(kuò)展標(biāo)記語言文件;通過文件的轉(zhuǎn)換,提升了生成目標(biāo)視圖的便捷性,進(jìn)一步的,調(diào)用視圖布局工具,并將所述可擴(kuò)展標(biāo)記語言文件輸入到所述視圖布局工具中,以生成目標(biāo)視圖,提升了生成目標(biāo)視圖的美觀性、通用性和易理解性。
1.一種視圖生成方法、裝置、電子設(shè)備及存儲介質(zhì),其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對所述源碼數(shù)據(jù),進(jìn)行數(shù)據(jù)轉(zhuǎn)換,得到轉(zhuǎn)換文件包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述轉(zhuǎn)換文件包括目錄轉(zhuǎn)換文件、結(jié)構(gòu)轉(zhuǎn)換文件和控制流轉(zhuǎn)換文件;所述基于所述語法樹,進(jìn)行數(shù)據(jù)劃分,得到所述轉(zhuǎn)換文件包括:
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述轉(zhuǎn)換文件中的節(jié)點和節(jié)點內(nèi)容,進(jìn)行內(nèi)容轉(zhuǎn)化和坐標(biāo)計算,得到文本文件對象和每一節(jié)點對應(yīng)子節(jié)點的節(jié)點坐標(biāo)包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述節(jié)點內(nèi)容包括節(jié)點關(guān)系和子節(jié)點內(nèi)容長度;所述基于所述節(jié)點和所述節(jié)點內(nèi)容,進(jìn)行坐標(biāo)計算,得到所述每一節(jié)點對應(yīng)子節(jié)點的節(jié)點坐標(biāo)包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述對所述源碼數(shù)據(jù),進(jìn)行數(shù)據(jù)轉(zhuǎn)換,得到轉(zhuǎn)換文件之前,所述方法還包括:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,在生成所述目標(biāo)視圖之后,所述方法還包括:
8.一種視圖生成裝置,其特征在于,所述裝置包括:
9.一種電子設(shè)備,其特征在于,包括:
10.一種計算機(jī)可讀存儲介質(zhì),其特征在于,當(dāng)所述存儲介質(zhì)中的指令由電子設(shè)備的處理器執(zhí)行時,使得所述電子設(shè)備能夠執(zhí)行如權(quán)利要求1至7中任一項所述的視圖生成方法。