[發明專利]一種程序代碼的處理方法和裝置在審
| 申請號: | 201711447799.9 | 申請日: | 2017-12-27 |
| 公開(公告)號: | CN109976991A | 公開(公告)日: | 2019-07-05 |
| 發明(設計)人: | 魏浩 | 申請(專利權)人: | 北京奇虎科技有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京市隆安律師事務所 11323 | 代理人: | 權鮮枝;何立春 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 程序代碼 代碼數據塊 抽象語法樹 保存 計算機可讀存儲介質 方法和裝置 電子設備 用戶體驗 出錯率 冗余 比對 | ||
本發明公開了一種程序代碼的處理方法、裝置、電子設備和計算機可讀存儲介質。該方法包括:獲取程序代碼的抽象語法樹;根據抽象語法樹,分離出程序代碼中指定類的代碼數據塊;將分離出的各代碼數據塊分別進行命名后保存;對所保存的各代碼數據塊,將其與所保存的一個或多個代碼數據塊進行比對,確定程序代碼中該指定類的內容相同的代碼數據塊。通過本技術方案,可以確定程序代碼中的內容相同的代碼數據塊,以便消除程序代碼中的冗余,降低程序代碼運行的出錯率,增強用戶體驗。
技術領域
本發明涉及計算機技術領域,具體涉及一種程序代碼的處理方法、裝置、電子設備和計算機可讀存儲介質。
背景技術
在一個應用程序或者一個系統的程序代碼開發階段,為了程序代碼的正常運行,會將實現指定功能的一個代碼塊添加到開發中的程序代碼中,以便進行調用。但是,一個程序代碼的開發可能會經手多個開發人員,又因為程序代碼的行數較多,當需要實現指定功能時,每個開發人員無法遍歷已完成的程序代碼的全部,而是自己再編寫一個代碼塊以便實現相應的功能。這樣,在一個程序代碼中,實現同一個功能的代碼塊可能會有多個,造成了程序代碼的冗余。
發明內容
鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的程序代碼的處理方法、裝置、電子設備和計算機可讀存儲介質。
根據本發明的一個方面,提供了一種程序代碼的處理方法,其中,該方法包括:
獲取程序代碼的抽象語法樹;
根據所述抽象語法樹,分離出所述程序代碼中指定類的代碼數據塊;
將分離出的各代碼數據塊分別進行命名后保存;
對所保存的各代碼數據塊,將其與所保存的一個或多個代碼數據塊進行比對,確定所述程序代碼中該指定類的內容相同的代碼數據塊。
可選地,所述將分離出的各代碼數據塊分別進行命名包括:
將分離出的各代碼數據塊以類、方法名和參數信息進行命名。
可選地,所述對所保存的各代碼數據塊,將其與所保存的一個或多個代碼數據塊進行比對包括:
使用Karp-Rabin字符串匹配算法,對所保存的各代碼數據塊,將其與所保存的一個或多個代碼數據塊進行比對。
可選地,
所述指定類的代碼數據塊是指方法類的代碼數據塊。
可選地,該方法進一步包括:
為所述程序代碼中的各代碼數據塊分別設置一標識碼;
所述程序代碼運行時,根據所述程序代碼的運行進度,將各代碼數據塊的標識碼輸出到所述程序代碼運行日志中;
當所述程序代碼運行出錯時,根據所述程序代碼運行日志中的所述標識碼,確定所述程序代碼運行出錯的位置。
可選地,該方法進一步包括:
設置一標識開關;
所述程序代碼運行時,根據所述程序代碼的運行進度,將各代碼數據塊的標識碼輸出到所述程序代碼運行日志中包括:
所述程序代碼運行時,判斷所述標識開關當前所處的狀態;
當所述標識開關當前處于開的狀態時,根據所述程序代碼的運行進度,將各代碼數據塊的標識碼輸出到所述程序代碼運行日志中。
可選地,該方法進一步包括:
提供網頁編輯接口;
根據所述網頁編輯接口接收網頁樣式編輯參數,根據接收的所述網頁樣式編輯參數生成網頁的樣式程序代碼。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司,未經北京奇虎科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711447799.9/2.html,轉載請聲明來源鉆瓜專利網。





