代碼片段的添加方法和裝置制造方法
【專利摘要】本發(fā)明公開了一種代碼片段的添加方法和裝置。該代碼片段的添加方法采用確定多個待添加代碼文件;將多個待添加代碼文件添加到目標文件夾中;遍歷目標文件夾中的待添加代碼文件,將多個待添加代碼文件依次轉(zhuǎn)化為標記類代碼文件,得到多個標記類代碼文件;在待應用類文件中應用多個標記類代碼文件中的一個或多個標記類代碼文件,其中,待應用類文件為標記類代碼文件應用的文件;根據(jù)應用的標記類代碼文件將多個待添加代碼文件中的一個或多個待添加代碼文件添加到待應用類文件中。通過本發(fā)明,解決了現(xiàn)有技術(shù)為代碼片段添加標記類文件效率低的問題。
【專利說明】代碼片段的添加方法和裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,具體而言,涉及一種代碼片段的添加方法和裝置。
【背景技術(shù)】
[0002] 隨著計算機技術(shù)的快速發(fā)展,軟件編程工具Visual Studio提供了代碼片段 CodeSnippet的功能,解決了需要重復輸入相同代碼片段的問題,從而提高了開發(fā)效率。 CodeSnippet的本質(zhì)就是可擴展標記語言(extensible Markup Language,簡稱為XML) 文件,在XML文件中包含一段可重用的代碼片段,該代碼片段中大部分代碼每次輸入的內(nèi) 容是相同的,只有小部分是不同的。如果手動輸入整個代碼片段,會存在比如煩、易出錯、 效率低下等問題。因此,對于需要重復輸入代碼的場景,使用CodeSnippet可以實現(xiàn)將代 碼片段中不同的部分提取為參數(shù),使用占位符替換,由用戶輸入這些參數(shù)。當用戶輸入代 碼片段后將參數(shù)所在位置替換為用戶輸入,用戶不需要輸入重復代碼,只需要插入特定的 CodeSnippet輸入?yún)?shù)。CodeSnippet添加代碼比較方便,但是對代碼的修改比較繁瑣,重 復的內(nèi)容需要進行多處修改?,F(xiàn)有技術(shù)通過定義標記類Attribute,將代碼片段中的參數(shù)部 分提取為標記類Attribute的屬性,在待應用的類上應用該標記類Attribute,并為該標記 類Attribute的屬性賦值就可以實現(xiàn)代碼片段的自動生成,同時使得在修改代碼片段時只 需要修改一處。但是,現(xiàn)有技術(shù)對每個CodeSnippet都需要手動添加一個Attribute定義, 這樣將會降低編程效率。
[0003] 針對現(xiàn)有技術(shù)為代碼片段添加標記類文件效率低的問題,目前尚未提出有效的解 決方案。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的主要目的在于提供一種代碼片段的添加方法和裝置,以解決現(xiàn)有技術(shù)為 代碼片段添加標記類文件效率低的問題。
[0005] 為了實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種代碼片段的添加方法。
[0006] 該代碼片段的添加方法包括:確定多個待添加代碼文件;將多個待添加代碼文件 添加到目標文件夾中;遍歷目標文件夾中的待添加代碼文件,將多個待添加代碼文件依次 轉(zhuǎn)化為標記類代碼文件,得到多個標記類代碼文件;在待應用類文件中應用多個標記類代 碼文件中的一個或多個標記類代碼文件,其中,待應用類文件為標記類代碼文件應用的文 件;根據(jù)應用的標記類代碼文件將多個待添加代碼文件中的一個或多個待添加代碼文件添 加到待應用類文件中。
[0007] 進一步地,遍歷目標文件夾中的待添加代碼文件,將多個待添加代碼文件依次轉(zhuǎn) 化為標記類代碼文件,得到多個標記類代碼文件包括:獲取目標文件夾中的多個待添加代 碼文件;分別為多個待添加代碼文件生成以預設字符串開頭的多個標記類代碼文件;將以 預設字符串開頭的多個標記類代碼文件添加到目標文件夾中。
[0008] 進一步地,待添加代碼文件中包括參數(shù)列表和代碼段,其中,參數(shù)列表是用戶輸入 參數(shù)的列表,參數(shù)列表中的參數(shù)可以替換代碼段中占位符之間的字符串,其中,分別為多個 待添加代碼文件生成以預設字符串開頭的多個標記類代碼文件包括:分別獲取以預設字符 串開頭的多個標記類代碼文件中標記類代碼文件的屬性值,其中,屬性值為待添加代碼文 件的參數(shù)列表中的參數(shù);分別獲取以預設字符串開頭的多個標記類代碼文件中標記類代碼 文件的代碼段,其中,分別獲取以預設字符串開頭的多個標記類代碼文件中標記類代碼文 件包括:獲取標記類代碼文件中的代碼段獲取函數(shù);通過調(diào)用代碼段獲取函數(shù)從待添加代 碼文件中獲取待添加代碼文件的代碼段。
[0009] 進一步地,根據(jù)應用的標記類代碼文件將多個待添加代碼文件中的一個或多個待 添加代碼文件添加到待應用類文件中包括:獲取應用標記類文件的待應用類文件;從待應 用類文件中篩選出以預設字符串開頭的多個標記類代碼文件;獲取以預設字符串開頭的多 個標記類代碼文件中標記類代碼文件的屬性值;獲取以預設字符串開頭的多個標記類代碼 文件中標記類代碼文件的代碼段;分別將以預設字符串開頭的多個標記類代碼文件中標記 類代碼文件的代碼段中占位符之間的字符串用以預設字符串開頭的多個標記類代碼文件 中標記類代碼文件的屬性值替換。
[0010] 進一步地,獲取應用標記類文件的待應用類文件包括:獲取目標文件夾中的所有 子文件夾;遍歷目標文件夾中的所有子文件夾,分別獲取每個子文件夾中的代碼文件;將 代碼文件添加到預設集合中;從預設集合中篩選出應用以預設字符串開頭的多個標記類代 碼文件中標記類代碼文件的待應用類文件。
[0011] 為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種代碼片段的添加裝置。 [0012] 該代碼片段的添加裝置包括:確定模塊,用于確定多個待添加代碼文件;第一添 加模塊,用于將多個待添加代碼文件添加到目標文件夾中;轉(zhuǎn)化模塊,用于遍歷目標文件夾 中的待添加代碼文件,將多個待添加代碼文件依次轉(zhuǎn)化為標記類代碼文件,得到多個標記 類代碼文件;應用模塊,用于在待應用類文件中應用多個標記類代碼文件中的一個或多個 標記類代碼文件,其中,待應用類文件為標記類代碼文件應用的文件;第二添加模塊,用于 根據(jù)應用的標記類代碼文件將多個待添加代碼文件中的一個或多個待添加代碼文件添加 到待應用類文件中。
[0013] 進一步地,轉(zhuǎn)化模塊包括:獲取模塊,用于獲取目標文件夾中的多個待添加代碼文 件;生成模塊,用于分別為多個待添加代碼文件生成以預設字符串開頭的多個標記類代碼 文件;第一添加子模塊,用于將以預設字符串開頭的多個標記類代碼文件添加到目標文件 夾中。
[0014] 進一步地,待添加代碼文件中包括參數(shù)列表和代碼段,其中,參數(shù)列表是用戶輸入 參數(shù)的列表,參數(shù)列表中的參數(shù)可以替換代碼段中占位符之間的字符串,其中,生成模塊包 括:第一獲取子模塊,用于分別獲取以預設字符串開頭的多個標記類代碼文件中標記類代 碼文件的屬性值,其中,屬性值為待添加代碼文件的參數(shù)列表中的參數(shù);第二獲取子模塊, 用于分別獲取以預設字符串開頭的多個標記類代碼文件中標記類代碼文件的代碼段,其 中,分第二獲取子模塊包括:第三獲取子模塊,用于獲取標記類代碼文件中的代碼段獲取函 數(shù);第二添加子模塊,用于通過調(diào)用代碼段獲取函數(shù)從待添加代碼文件中獲取待添加代碼 文件的代碼段。
[0015] 進一步地,第二添加模塊包括:第四獲取子模塊,用于獲取應用標記類文件的待應 用類文件;第一篩選模塊,用于從待應用類文件中篩選出以預設字符串開頭的多個標記類 代碼文件;第五獲取子模塊,用于獲取以預設字符串開頭的多個標記類代碼文件中標記類 代碼文件的屬性值;第六獲取子模塊,用于獲取以預設字符串開頭的多個標記類代碼文件 中標記類代碼文件的代碼段;替換模塊,用于分別將以預設字符串開頭的多個標記類代碼 文件中標記類代碼文件的代碼段中占位符之間的字符串用以預設字符串開頭的多個標記 類代碼文件中標記類代碼文件的屬性值替換。
[0016] 進一步地,第四獲取子模塊包括:第七獲取子模塊,用于獲取目標文件夾中的所有 子文件夾;第八獲取子模塊,用于遍歷目標文件夾中的所有子文件夾,分別獲取每個子文件 夾中的代碼文件;第三添加子模塊,用于將代碼文件添加到預設集合中;第二篩選模塊,用 于從預設集合中篩選出應用以預設字符串開頭的多個標記類代碼文件中標記類代碼文件 的待應用類文件。
[0017] 通過本發(fā)明,采用確定多個待添加代碼文件;將多個待添加代碼文件添加到目標 文件夾中;遍歷目標文件夾中的待添加代碼文件,將多個待添加代碼文件依次轉(zhuǎn)化為標記 類代碼文件,得到多個標記類代碼文件;在待應用類文件中應用多個標記類代碼文件中的 一個或多個標記類代碼文件,其中,待應用類文件為標記類代碼文件應用的文件;根據(jù)應用 的標記類代碼文件將多個待添加代碼文件中的一個或多個待添加代碼文件添加到待應用 類文件中,解決了現(xiàn)有技術(shù)為代碼片段添加標記類文件效率低的問題。該發(fā)明利用代碼片 段CodeSnippet解決了代碼重用的問題,同時,該發(fā)明為每個代碼文件生成標記類文件,通 過應用該標記類文件,根據(jù)標記類文件實現(xiàn)將代碼片段自動添加到待應用類文件,而且,該 發(fā)明通過對標記類文件的屬性進行修改可以有效地解決了代碼片段CodeSnippet修改繁 瑣的問題,進而達到了提高編程效率的效果。
【專利附圖】
【附圖說明】
[0018] 構(gòu)成本申請的一部分的附圖用來提供對本發(fā)明的進一步理解,本發(fā)明的示意性實 施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
[0019] 圖1是根據(jù)本發(fā)明實施例的代碼片段的添加方法的流程圖;以及
[0020] 圖2是根據(jù)本發(fā)明實施例的代碼片段的添加裝置的示意圖。
【具體實施方式】
[0021] 需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相 互組合。下面將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。
[0022] 為了使本【技術(shù)領(lǐng)域】的人員更好地理解本申請方案,下面將結(jié)合本申請實施例中的 附圖,對本申請實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是 本申請一部分的實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├?,本領(lǐng)域普通技術(shù) 人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本申請保護的范 圍。
[0023] 需要說明的是,本申請的說明書和權(quán)利要求書及上述附圖中的術(shù)語"第一"、"第 二"等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使 用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本申請的實施例。此外,術(shù)語"包括"和 "具有"以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元 的過程、方法、系統(tǒng)、產(chǎn)品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有 清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設備固有的其它步驟或單元。
[0024] 本發(fā)明旨在提供一種代碼片段的添加方法和裝置。
[0025] 圖1是根據(jù)本發(fā)明實施例的代碼片段的添加方法的流程圖。如圖1所示,該代碼 片段的添加方法包括如下的步驟SlOl至步驟S105 :
[0026] 步驟SlOl,確定多個待添加代碼文件。
[0027] 該實施例中的待添加代碼文件優(yōu)選為代碼片段CodeSnippet,利用代碼片段 CodeSnippet可以有效地解決代碼重用的問題。待添加代碼文件可以是一個,也可以是多 個。待添加代碼文件實質(zhì)是可擴展標記語言(extensible Markup Language,簡稱為XML) 文件,待添加代碼文件中包括參數(shù)列表和代碼段,其中,參數(shù)列表是用戶輸入?yún)?shù)的列表, 參數(shù)需要用戶手動輸入,如下代碼所示:
[0028]
【權(quán)利要求】
1. 一種代碼片段的添加方法,其特征在于,包括: 確定多個待添加代碼文件; 將所述多個待添加代碼文件添加到目標文件夾中; 遍歷所述目標文件夾中的待添加代碼文件,將所述多個待添加代碼文件依次轉(zhuǎn)化為標 記類代碼文件,得到多個標記類代碼文件; 在待應用類文件中應用所述多個標記類代碼文件中的一個或多個標記類代碼文件,其 中,所述待應用類文件為所述標記類代碼文件應用的文件;W及 根據(jù)應用的所述標記類代碼文件將所述多個待添加代碼文件中的一個或多個待添加 代碼文件添加到所述待應用類文件中。
2. 根據(jù)權(quán)利要求1所述的代碼片段的添加方法,其特征在于,遍歷所述目標文件夾中 的待添加代碼文件,將所述多個待添加代碼文件依次轉(zhuǎn)化為標記類代碼文件,得到多個標 記類代碼文件包括: 獲取所述目標文件夾中的多個待添加代碼文件; 分別為所述多個待添加代碼文件生成W預設字符串開頭的多個標記類代碼文件;W及 將所述W預設字符串開頭的多個標記類代碼文件添加到所述目標文件夾中。
3. 根據(jù)權(quán)利要求2所述的代碼片段的添加方法,其特征在于,所述待添加代碼文件中 包括參數(shù)列表和代碼段,其中,所述參數(shù)列表是用戶輸入?yún)?shù)的列表,所述參數(shù)列表中的參 數(shù)可W替換所述代碼段中占位符之間的字符串,其中,分別為所述多個待添加代碼文件生 成W預設字符串開頭的多個標記類代碼文件包括: 分別獲取W所述預設字符串開頭的多個標記類代碼文件中標記類代碼文件的屬性值, 其中,所述屬性值為所述待添加代碼文件的參數(shù)列表中的參數(shù);W及 分別獲取W所述預設字符串開頭的多個標記類代碼文件中標記類代碼文件的代碼段, 其中,分別獲取W所述預設字符串開頭的多個標記類代碼文件中標記類代碼文件包 括:獲取所述標記類代碼文件中的代碼段獲取函數(shù);通過調(diào)用所述代碼段獲取函數(shù)從所述 待添加代碼文件中獲取所述待添加代碼文件的代碼段。
4. 根據(jù)權(quán)利要求3所述的代碼片段的添加方法,其特征在于,根據(jù)應用的所述標記類 代碼文件將所述多個待添加代碼文件中的一個或多個待添加代碼文件添加到所述待應用 類文件中包括: 獲取應用所述標記類文件的待應用類文件; 從所述待應用類文件中篩選出W所述預設字符串開頭的多個標記類代碼文件; 獲取W所述預設字符串開頭的多個標記類代碼文件中標記類代碼文件的屬性值; 獲取W所述預設字符串開頭的多個標記類代碼文件中標記類代碼文件的代碼段;W及 分別將W所述預設字符串開頭的多個標記類代碼文件中標記類代碼文件的代碼段中 占位符之間的字符串用W所述預設字符串開頭的多個標記類代碼文件中標記類代碼文件 的屬性值替換。
5. 根據(jù)權(quán)利要求4所述的代碼片段的添加方法,其特征在于,獲取應用所述標記類文 件的待應用類文件包括: 獲取所述目標文件夾中的所有子文件夾; 遍歷所述目標文件夾中的所有子文件夾,分別獲取每個子文件夾中的代碼文件; 將所述代碼文件添加到預設集合中;w及 從所述預設集合中篩選出應用W所述預設字符串開頭的多個標記類代碼文件中標記 類代碼文件的待應用類文件。
6. -種代碼片段的添加裝置,其特征在于,包括: 確定模塊,用于確定多個待添加代碼文件; 第一添加模塊,用于將所述多個待添加代碼文件添加到目標文件夾中; 轉(zhuǎn)化模塊,用于遍歷所述目標文件夾中的待添加代碼文件,將所述多個待添加代碼文 件依次轉(zhuǎn)化為標記類代碼文件,得到多個標記類代碼文件; 應用模塊,用于在待應用類文件中應用所述多個標記類代碼文件中的一個或多個標記 類代碼文件,其中,所述待應用類文件為所述標記類代碼文件應用的文件;W及 第二添加模塊,用于根據(jù)應用的所述標記類代碼文件將所述多個待添加代碼文件中的 一個或多個待添加代碼文件添加到所述待應用類文件中。
7. 根據(jù)權(quán)利要求6所述的代碼片段的添加裝置,其特征在于,所述轉(zhuǎn)化模塊包括: 獲取模塊,用于獲取所述目標文件夾中的多個待添加代碼文件; 生成模塊,用于分別為所述多個待添加代碼文件生成W預設字符串開頭的多個標記類 代碼文件;W及 第一添加子模塊,用于將所述W預設字符串開頭的多個標記類代碼文件添加到所述目 柄文件夾中。
8. 根據(jù)權(quán)利要求7所述的代碼片段的添加裝置,其特征在于,所述待添加代碼文件中 包括參數(shù)列表和代碼段,其中,所述參數(shù)列表是用戶輸入?yún)?shù)的列表,所述參數(shù)列表中的參 數(shù)可W替換所述代碼段中占位符之間的字符串,其中,所述生成模塊包括: 第一獲取子模塊,用于分別獲取W所述預設字符串開頭的多個標記類代碼文件中標記 類代碼文件的屬性值,其中,所述屬性值為所述待添加代碼文件的參數(shù)列表中的參數(shù);W及 第二獲取子模塊,用于分別獲取W所述預設字符串開頭的多個標記類代碼文件中標記 類代碼文件的代碼段, 其中,分所述第二獲取子模塊包括: 第H獲取子模塊,用于獲取所述標記類代碼文件中的代碼段獲取函數(shù);W及 第二添加子模塊,用于通過調(diào)用所述代碼段獲取函數(shù)從所述待添加代碼文件中獲取所 述待添加代碼文件的代碼段。
9. 根據(jù)權(quán)利要求8所述的代碼片段的添加裝置,其特征在于,所述第二添加模塊包括: 第四獲取子模塊,用于獲取應用所述標記類文件的待應用類文件; 第一篩選模塊,用于從所述待應用類文件中篩選出W所述預設字符串開頭的多個標記 類代碼文件; 第五獲取子模塊,用于獲取W所述預設字符串開頭的多個標記類代碼文件中標記類代 碼文件的屬性值; 第六獲取子模塊,用于獲取W所述預設字符串開頭的多個標記類代碼文件中標記類代 碼文件的代碼段;W及 替換模塊,用于分別將W所述預設字符串開頭的多個標記類代碼文件中標記類代碼文 件的代碼段中占位符之間的字符串用W所述預設字符串開頭的多個標記類代碼文件中標 記類代碼文件的屬性值替換。
10.根據(jù)權(quán)利要求9所述的代碼片段的添加裝置,其特征在于,所述第四獲取子模塊包 括: 第走獲取子模塊,用于獲取所述目標文件夾中的所有子文件夾; 第八獲取子模塊,用于遍歷所述目標文件夾中的所有子文件夾,分別獲取每個子文件 夾中的代碼文件; 第H添加子模塊,用于將所述代碼文件添加到預設集合中;W及 第二篩選模塊,用于從所述預設集合中篩選出應用W所述預設字符串開頭的多個標記 類代碼文件中標記類代碼文件的待應用類文件。
【文檔編號】G06F9/44GK104461548SQ201410779458
【公開日】2015年3月25日 申請日期:2014年12月15日 優(yōu)先權(quán)日:2014年12月15日
【發(fā)明者】馬燕龍 申請人:北京國雙科技有限公司