[發明專利]一種程序代碼的處理方法和裝置在審
| 申請號: | 201711447799.9 | 申請日: | 2017-12-27 |
| 公開(公告)號: | CN109976991A | 公開(公告)日: | 2019-07-05 |
| 發明(設計)人: | 魏浩 | 申請(專利權)人: | 北京奇虎科技有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京市隆安律師事務所 11323 | 代理人: | 權鮮枝;何立春 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 程序代碼 代碼數據塊 抽象語法樹 保存 計算機可讀存儲介質 方法和裝置 電子設備 用戶體驗 出錯率 冗余 比對 | ||
1.一種程序代碼的處理方法,其中,該方法包括:
獲取程序代碼的抽象語法樹;
根據所述抽象語法樹,分離出所述程序代碼中指定類的代碼數據塊;
將分離出的各代碼數據塊分別進行命名后保存;
對所保存的各代碼數據塊,將其與所保存的一個或多個代碼數據塊進行比對,確定所述程序代碼中該指定類的內容相同的代碼數據塊。
2.如權利要求1所述的方法,其中,所述將分離出的各代碼數據塊分別進行命名包括:
將分離出的各代碼數據塊以類、方法名和參數信息進行命名。
3.如權利要求1所述的方法,其中,所述對所保存的各代碼數據塊,將其與所保存的一個或多個代碼數據塊進行比對包括:
使用Karp-Rabin字符串匹配算法,對所保存的各代碼數據塊,將其與所保存的一個或多個代碼數據塊進行比對。
4.如權利要求1所述的方法,其中,
所述指定類的代碼數據塊是指方法類的代碼數據塊。
5.如權利要求1所述的方法,其中,該方法進一步包括:
為所述程序代碼中的各代碼數據塊分別設置一標識碼;
所述程序代碼運行時,根據所述程序代碼的運行進度,將各代碼數據塊的標識碼輸出到所述程序代碼運行日志中;
當所述程序代碼運行出錯時,根據所述程序代碼運行日志中的所述標識碼,確定所述程序代碼運行出錯的位置。
6.如權利要求5所述的方法,其中,該方法進一步包括:
設置一標識開關;
所述程序代碼運行時,根據所述程序代碼的運行進度,將各代碼數據塊的標識碼輸出到所述程序代碼運行日志中包括:
所述程序代碼運行時,判斷所述標識開關當前所處的狀態;
當所述標識開關當前處于開的狀態時,根據所述程序代碼的運行進度,將各代碼數據塊的標識碼輸出到所述程序代碼運行日志中。
7.如權利要求1所述的方法,其中,該方法進一步包括:
提供網頁編輯接口;
根據所述網頁編輯接口接收網頁樣式編輯參數,根據接收的所述網頁樣式編輯參數生成網頁的樣式程序代碼。
8.一種程序代碼的處理裝置,其中,該裝置包括:
獲取單元,適于獲取程序代碼的抽象語法樹;
分離單元,適于根據所述抽象語法樹,分離出所述程序代碼中指定類的代碼數據塊;
保存單元,適于將分離出的各代碼數據塊分別進行命名后保存;
比對單元,適于對所保存的各代碼數據塊,將其與所保存的一個或多個代碼數據塊進行比對,確定所述程序代碼中該指定類的內容相同的代碼數據塊。
9.一種電子設備,其中,該電子設備包括:
處理器;以及,
被安排成存儲計算機可執行指令的存儲器,所述可執行指令在被執行時使所述處理器執行根據權利要求1~7中任一項所述的方法。
10.一種計算機可讀存儲介質,其中,所述計算機可讀存儲介質存儲一個或多個程序,所述一個或多個程序當被處理器執行時,實現權利要求1~7中任一項所述的方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司,未經北京奇虎科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711447799.9/1.html,轉載請聲明來源鉆瓜專利網。





