源碼處理方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件源碼文本處理領(lǐng)域,特別涉及一種源碼處理方法及裝置。
【背景技術(shù)】
[0002]在軟件開發(fā)中,由于個(gè)人習(xí)慣的差異,不同的開發(fā)人員編寫的源碼的風(fēng)格也不一致。因此,在開發(fā)過程中,通常需要對已編寫的源碼進(jìn)行格式化,以提高源碼的可讀性和可維護(hù)性。
[0003]另外,為了便于閱讀和維護(hù),源碼中通常還包含有對代碼的功能進(jìn)行描述的注釋。同樣,現(xiàn)有的源碼中也存在注釋格式化效果較差,界面不友好,導(dǎo)致源碼的可讀性和可維護(hù)性較低。
【發(fā)明內(nèi)容】
[0004]為了解決現(xiàn)有技術(shù)中源碼處理方法只針對源碼中的代碼進(jìn)行格式化,對于源碼中的注釋則未加以處理的問題,本發(fā)明實(shí)施例提供了一種源碼處理方法及裝置。所述技術(shù)方案如下:
[0005]一方面,提供了一種源碼處理方法,所述方法包括:
[0006]針對源碼中各行源碼進(jìn)行如下處理:
[0007]獲取單行源碼中的代碼的結(jié)束位置,所述單行源碼中包含有所述代碼以及與所述代碼對應(yīng)的注釋;
[0008]根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長以及所述代碼的結(jié)束位置確定目標(biāo)起始位置;
[0009]將所述注釋的起始位置移動至所述目標(biāo)起始位置;
[0010]對處理后的源碼進(jìn)行應(yīng)用。
[0011]所述根據(jù)所述代碼的結(jié)束位置、所述最小起始位置和所述跳躍步長確定目標(biāo)起始位置,包括:
[0012]在進(jìn)行第I次判斷時(shí),判斷所述代碼的結(jié)束位置是否處于所述最小起始位置之前;若判斷結(jié)果為所述代碼的結(jié)束位置處于所述最小起始位置之前,則將所述最小起始位置確定為所述目標(biāo)起始位置;若判斷結(jié)果為所述代碼的結(jié)束位置不處于所述最小起始位置之前,則進(jìn)行第2次判斷;
[0013]在進(jìn)行第i次判斷時(shí),獲取第i_l次跳躍后的起始位置,所述第i_l次跳躍后的起始位置為自所述最小起始位置按照所述跳躍步長向后跳躍1-ι次后獲得的位置;判斷所述代碼的結(jié)束位置是否處于所述第1-ι次跳躍后的起始位置之前;若判斷結(jié)果為所述代碼的結(jié)束位置處于所述第1-Ι次跳躍后的起始位置之前,則將所述第1-Ι次跳躍后的起始位置確定為所述目標(biāo)起始位置;若判斷結(jié)果為所述代碼的結(jié)束位置不處于所述第1-ι次跳躍后的起始位置之前,則進(jìn)行第i+Ι次判斷,I為大于或等于2的整數(shù)。
[0014]所述根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長以及所述代碼的結(jié)束位置確定目標(biāo)起始位置之前,所述方法還包括:
[0015]顯示第一設(shè)置界面;
[0016]在所述第一設(shè)置界面中接收第一數(shù)值η,η為大于或等于I的整數(shù);
[0017]將所述單行源碼中的第η個(gè)字符位置設(shè)置為所述最小起始位置。
[0018]所述根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長以及所述代碼的結(jié)束位置確定目標(biāo)起始位置之前,所述方法還包括:
[0019]顯示第二設(shè)置界面;
[0020]在所述第二設(shè)置界面中接收第二數(shù)值m,m為大于或等于I的整數(shù);
[0021]根據(jù)所述第二數(shù)值m設(shè)置所述跳躍步長。
[0022]所述根據(jù)所述第二數(shù)值m設(shè)置所述跳躍步長,包括:
[0023]將所述跳躍步長設(shè)置為m個(gè)字符,或者將所述跳躍步長設(shè)置為4m個(gè)字符;
[0024]所述獲取單行源碼中的代碼的結(jié)束位置,所述單行源碼中包含有所述代碼以及與所述代碼對應(yīng)的注釋之前,還包括:
[0025]對所述源碼中的代碼進(jìn)行格式化處理。
[0026]另一方面,提供了一種源碼處理裝置,所述裝置包括:
[0027]獲取模塊,用于獲取單行源碼中包含的代碼的結(jié)束位置,所述單行源碼中包含有所述代碼以及與所述代碼對應(yīng)的注釋;
[0028]確定模塊,用于根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長以及所述代碼的結(jié)束位置確定目標(biāo)起始位置;
[0029]位置移動模塊,用于將所述注釋的起始位置移動至所述目標(biāo)起始位置;
[0030]應(yīng)用模塊,用于對處理后的源碼進(jìn)行應(yīng)用。
[0031]所述確定模塊,用于在進(jìn)行第I次判斷時(shí),判斷所述代碼的結(jié)束位置是否處于所述最小起始位置之前;若判斷結(jié)果為所述代碼的結(jié)束位置處于所述最小起始位置之前,則將所述最小起始位置確定為所述目標(biāo)起始位置;若判斷結(jié)果為所述代碼的結(jié)束位置不處于所述最小起始位置之前,則進(jìn)行第2次判斷;
[0032]所述確定模塊,還用于在進(jìn)行第i次判斷時(shí),獲取第i_l次跳躍后的起始位置,所述第1-Ι次跳躍后的起始位置為自所述最小起始位置按照所述跳躍步長向后跳躍1-Ι次后獲得的位置;判斷所述代碼的結(jié)束位置是否處于所述第1-ι次跳躍后的起始位置之前;若判斷結(jié)果為所述代碼的結(jié)束位置處于所述第1-Ι次跳躍后的起始位置之前,則將所述第1-Ι次跳躍后的起始位置確定為所述目標(biāo)起始位置;若判斷結(jié)果為所述代碼的結(jié)束位置不處于所述第1-Ι次跳躍后的起始位置之前,則進(jìn)行第i+Ι次判斷,I為大于或等于2的整數(shù)。
[0033]所述裝置還包括:
[0034]第一顯示模塊,用于在所述確定模塊根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長以及所述代碼的結(jié)束位置確定目標(biāo)起始位置之前,顯示第一設(shè)置界面;
[0035]第一接收模塊,用于在所述第一設(shè)置界面中接收第一數(shù)值η,η為大于或等于I的整數(shù);
[0036]第一設(shè)置模塊,用于將所述單行源碼中的第η個(gè)字符位置設(shè)置為所述最小起始位置。
[0037]所述裝置還包括:
[0038]第二顯示模塊,用于在所述確定模塊根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長以及所述代碼的結(jié)束位置確定目標(biāo)起始位置之前,顯示第二設(shè)置界面;
[0039]第二接收模塊,用于在所述第二設(shè)置界面中接收第二數(shù)值m,m為大于或等于I的整數(shù);
[0040]第二設(shè)置模塊,用于根據(jù)所述第二數(shù)值m設(shè)置所述跳躍步長。
[0041]所述第二設(shè)置模塊,用于將所述跳躍步長設(shè)置為m個(gè)字符,或者將所述跳躍步長設(shè)置為4m個(gè)字符;
[0042]所述獲取模塊還用于在獲取單行源碼中的代碼的結(jié)束位置之前,對所述源碼中的代碼進(jìn)行格式化處理。
[0043]本發(fā)明實(shí)施例提供的技術(shù)方案帶來的有益效果是:
[0044]通過根據(jù)代碼的結(jié)束位置、最小起始位置和跳躍步長確定目標(biāo)起始位置,并將注釋的起始位置移動至該目標(biāo)起始位置,解決了現(xiàn)有技術(shù)中源碼處理方法只針對源碼中的代碼進(jìn)行格式化,對于源碼中的注釋則未加以處理的問題,達(dá)到提高格式化效果的目的。
【附圖說明】
[0045]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0046]圖1是本發(fā)明一個(gè)實(shí)施例提供的源碼處理方法的方法流程圖;
[0047]圖2是本發(fā)明另一實(shí)施例提供的源碼處理方法的方法流程圖;
[0048