源代碼精簡方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種源代碼精簡方法及裝置。
【背景技術(shù)】
[0002] 在開發(fā)源代碼文件的過程中,為了保證源代碼的可讀性和整潔性,開發(fā)人員會在 源代碼文件中加入注釋、空格和空行等冗余信息。這些冗余信息對該源代碼文件的功能沒 有任何影響,通常會在發(fā)布源代碼文件之前,將這些內(nèi)容從源代碼文件中精簡掉,以減少源 代碼文件的文件體積。
[0003] 常用的源代碼精簡方法為:在發(fā)布源代碼文件之前,各個(gè)開發(fā)人員將包括冗余信 息的源代碼文件使用在線精簡工具進(jìn)行精簡,得到不包括冗余信息的源代碼文件;然后,各 個(gè)開發(fā)人員將不包括冗余信息的源代碼文件上傳到自動化發(fā)布系統(tǒng),自動化發(fā)布系統(tǒng)對該 多個(gè)不包括冗余信息的源代碼文件進(jìn)行發(fā)布。
[0004] 在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:上述方法不僅 需要開發(fā)人員手動對源代碼文件進(jìn)行精簡,操作繁瑣;而且由于是在發(fā)布之前就已經(jīng)進(jìn)行 精簡,導(dǎo)致如果在發(fā)布過程中發(fā)現(xiàn)任何問題,都難以基于精簡后的源代碼文件進(jìn)行調(diào)試。因 為精簡后的源代碼文件沒有注釋、空格和空行等冗余信息,難以閱讀和進(jìn)行問題定位。
【發(fā)明內(nèi)容】
[0005] 為了解決現(xiàn)有技術(shù)不僅需要開發(fā)人員手動對源代碼文件進(jìn)行精簡,操作繁瑣;而 且由于是在發(fā)布之前就已經(jīng)進(jìn)行精簡,導(dǎo)致如果在發(fā)布過程中發(fā)現(xiàn)任何問題,都難以基于 精簡后的源代碼文件進(jìn)行調(diào)試。因?yàn)榫喓蟮脑创a文件沒有注釋、空格和空行等冗余信 息,難以閱讀和進(jìn)行問題定位的問題,本發(fā)明實(shí)施例提供了一種源代碼精簡方法及裝置。所 述技術(shù)方案如下:
[0006] -方面,提供了一種源代碼精簡方法,所述方法包括:
[0007] 獲取待發(fā)布的至少一個(gè)源代碼文件;
[0008] 在發(fā)布過程中,對該至少一個(gè)源代碼文件進(jìn)行精簡,得到精簡后的源代碼文件;
[0009] 根據(jù)該精簡后的源代碼文件進(jìn)行發(fā)布。
[0010] 另一方面,提供了 一種源代碼精簡裝置,所述裝置包括:
[0011] 獲取模塊,用于獲取待發(fā)布的至少一個(gè)源代碼文件;
[0012] 精簡模塊,用于在發(fā)布過程中,對該至少一個(gè)源代碼文件進(jìn)行精簡,得到精簡后的 源代碼文件;
[0013] 發(fā)布模塊,用于根據(jù)該精簡后的源代碼文件進(jìn)行發(fā)布。
[0014] 本發(fā)明實(shí)施例提供的技術(shù)方案帶來的有益效果是:
[0015] 通過獲取待發(fā)布的源代碼文件,在發(fā)布過程中對該源代碼文件進(jìn)行精簡,進(jìn)而對 其進(jìn)行發(fā)布;解決了現(xiàn)有技術(shù)需要開發(fā)人員手動對源代碼文件進(jìn)行精簡,操作繁瑣的問題; 不僅將自動化發(fā)布過程和精簡過程結(jié)合為1個(gè)過程,不需要開發(fā)人員手動精簡,且當(dāng)在發(fā) 布過程中發(fā)現(xiàn)錯(cuò)誤時(shí),可以基于精簡前的源代碼文件對其進(jìn)行定位,因此問題定位容易,提 高了源代碼文件的可調(diào)試性。
【附圖說明】
[0016] 為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。
[0017] 圖1是本發(fā)明各個(gè)實(shí)施例提供的源代碼精簡方法所涉及的一種實(shí)施環(huán)境的結(jié)構(gòu) 不意圖;
[0018] 圖2是本發(fā)明一個(gè)實(shí)施例提供的源代碼精簡方法的方法流程圖;
[0019] 圖3是本發(fā)明另一實(shí)施例提供的源代碼精簡方法的方法流程圖;
[0020] 圖4是本發(fā)明另一實(shí)施例提供的檢測源代碼文件是否需要精簡且尚未精簡的源 代碼文件的方法的方法流程圖;
[0021] 圖5是本發(fā)明另一實(shí)施例提供的一種配置文件的示意圖;
[0022] 圖6是本發(fā)明另一實(shí)施例提供的對源代碼文件進(jìn)行精簡的方法的方法流程圖;
[0023] 圖7是本發(fā)明另一實(shí)施例提供的一種需要精簡且尚未精簡的源代碼文件的示意 圖;
[0024] 圖8是本發(fā)明另一實(shí)施例提供的一種對圖7所示的源代碼文件進(jìn)行精簡后的源代 碼文件的示意圖;
[0025] 圖9是本發(fā)明另一實(shí)施例提供的生成精簡報(bào)告的方法的方法流程圖;
[0026] 圖10是本發(fā)明另一實(shí)施例提供的一種精簡日志的示意圖;
[0027] 圖11是本發(fā)明另一實(shí)施例提供的一種發(fā)布結(jié)果郵件效果的示意圖;
[0028] 圖12是本發(fā)明一個(gè)實(shí)施例提供的源代碼精簡裝置的結(jié)構(gòu)示意圖;
[0029] 圖13是本發(fā)明另一實(shí)施例提供的源代碼精簡裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0030] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明實(shí)施方 式作進(jìn)一步地詳細(xì)描述。
[0031] 請參考圖1,其示出了本發(fā)明各個(gè)實(shí)施例提供的源代碼精簡方法所涉及的一種實(shí) 施環(huán)境的結(jié)構(gòu)示意圖。該實(shí)施環(huán)境包括至少一個(gè)終端120和至少一個(gè)服務(wù)器140,由該至少 一個(gè)終端120和至少一個(gè)服務(wù)器140組成本發(fā)明各實(shí)施例的執(zhí)行主體自動化發(fā)布系統(tǒng)160。
[0032] 終端120,可以是具有源代碼文件開發(fā)及上傳功能的電子設(shè)備。該電子設(shè)備可以是 智能手機(jī)、平板電腦、電子書閱讀器、膝上型便攜計(jì)算機(jī)或者臺式計(jì)算機(jī)等等。
[0033] 終端120與服務(wù)器140之間可以通過有線網(wǎng)絡(luò)、無線網(wǎng)絡(luò)或者局域網(wǎng)相連。
[0034] 服務(wù)器140,可以是一臺服務(wù)器,或者由若干臺服務(wù)器組成的服務(wù)器集群,或者是 一個(gè)云計(jì)算服務(wù)中心。該服務(wù)器140是可以接收終端120上傳的源代碼文件,通過執(zhí)行精 簡腳本對該終端120上傳的源代碼文件進(jìn)行自動精簡,并在精簡過程中對該源代碼文件進(jìn) 行發(fā)布,得到對應(yīng)的應(yīng)用程序的服務(wù)器。
[0035] 請參考圖2,其示出了本發(fā)明一個(gè)實(shí)施例提供的源代碼精簡方法的方法流程圖。本 實(shí)施例以該源代碼精簡方法應(yīng)用于圖1所示出的服務(wù)器140中來舉例說明。該方法包括:
[0036] 201、獲取待發(fā)布的至少一個(gè)源代碼文件。
[0037] 202、在發(fā)布過程中,對該至少一個(gè)源代碼文件進(jìn)行精簡,得到精簡后的源代碼文 件。
[0038] 203、根據(jù)該精簡后的源代碼文件進(jìn)行發(fā)布。
[0039] 綜上所述,本發(fā)明實(shí)施例提供的源代碼精簡方法,通過獲取待發(fā)布的源代碼文件, 在發(fā)布過程中對該源代碼文件進(jìn)行精簡,進(jìn)而對精簡后的源代碼文件進(jìn)行發(fā)布;解決了現(xiàn) 有技術(shù)需要開發(fā)人員手動對源代碼文件進(jìn)行精簡,操作繁瑣的問題;不僅將自動化發(fā)布過 程和精簡過程結(jié)合為1個(gè)過程,不需要開發(fā)人員手動精簡,且當(dāng)在發(fā)布過程中發(fā)現(xiàn)錯(cuò)誤時(shí), 可以基于精簡前的源代碼文件對其進(jìn)行定位,因此問題定位容易,提高了源代碼文件的可 調(diào)試性。
[0040] 可選地,對于每個(gè)源代碼文件,檢測該源代碼文件是否為需要精簡且尚未精簡的 源代碼文件;
[0041] 如果該源代碼文件是需要精簡且尚未精簡的源代碼文件,則對該源代碼文件進(jìn)行 精簡。
[0042] 可選地,該對于每個(gè)源代碼文件,檢測該源代碼文件是否為需要精簡且尚未精簡 的源代碼文件,包括:
[0043] 對于每個(gè)源代碼文件,獲取該源代碼文件的文件路徑;
[0044] 檢測該源代碼文件的文件路徑是否命中配置文件中的文件路徑,該配置文件包括 預(yù)先配置的需要進(jìn)行精簡的源代碼文件的文件路徑。
[0045] 可選地,該對該源代碼文件進(jìn)行精簡,包括:
[0046] 對該源代碼文件執(zhí)行指定的精簡腳本,得到精簡后的源代碼文件,該指定的精簡 腳本為預(yù)先配置的用于對該源代碼文件進(jìn)行精簡的腳本;
[0047] 使用該精簡后的源代碼文件覆蓋該源代碼文件。
[0048] 可選地,該對該至少一個(gè)源代碼文件進(jìn)行精簡,得到精簡后的源代碼文件之后,還 包括:
[0049] 在精簡過程中,統(tǒng)計(jì)該源代碼文件的精簡參數(shù),該精簡參數(shù)包括精簡率和精簡耗 時(shí);
[0050]