具首先將獲取到的代碼的結(jié)束位置與最小起始位置進(jìn)行比對(duì),判斷代碼的結(jié)束位置是否處于最小起始位置之前,若是,則將最小起始位置確定為目標(biāo)起始位置,判斷步驟結(jié)束,否則,進(jìn)一步判斷代碼的結(jié)束位置是否處于第80個(gè)字符位置之前,若是,則將該第80個(gè)字符位置確定為目標(biāo)起始位置,否則,進(jìn)一步判斷代碼的結(jié)束位置是否處于第96個(gè)字符位置之前,依此類推,直至確定目標(biāo)起始位置為止。
[0079]本實(shí)施例中,最小起始位置為預(yù)設(shè)的開始放置注釋的位置,第i_l次跳躍后的起始位置為自該最小起始位置按照該跳躍步長(zhǎng)向后跳躍i_l次后臨時(shí)獲得的開始放置注釋的位置,而目標(biāo)起始位置為最終確定的開始放置注釋的位置。
[0080]步驟204,將注釋的起始位置移動(dòng)至該目標(biāo)起始位置。
[0081]軟件開發(fā)工具從該目標(biāo)起始位置開始重新放置注釋。
[0082]軟件開發(fā)工具在對(duì)單行源碼中的注釋進(jìn)行格式化后,轉(zhuǎn)入下一行源碼,獲取下一行源碼中的代碼的結(jié)束位置,并確定下一行源碼的目標(biāo)起始位置后,將下一行源碼的注釋的起始位置移動(dòng)至該目標(biāo)起始位置,隨后轉(zhuǎn)入下下一行源碼,直至用戶選擇的源碼或者當(dāng)前顯示的源碼全部格式化完畢。比如,以對(duì)圖3所示的源碼為例,進(jìn)行注釋格式化后的源碼如圖4所示。從上面的結(jié)果可以看出,源碼注釋的格式化并不需要所有注釋都左對(duì)齊,而是按照代碼長(zhǎng)度進(jìn)行對(duì)齊,這種處理方式每行都獨(dú)立處理,保證了對(duì)齊的穩(wěn)定性,不受其它行源碼的影響。
[0083]步驟205:對(duì)處理后的源碼進(jìn)行應(yīng)用。
[0084]本實(shí)施例中對(duì)處理后的源碼進(jìn)行應(yīng)用包括對(duì)處理后的源碼進(jìn)行展示、運(yùn)行、分析或維護(hù)等。
[0085]綜上所述,本發(fā)明實(shí)施例提供的源碼處理方法,通過根據(jù)代碼的結(jié)束位置、最小起始位置和跳躍步長(zhǎng)確定目標(biāo)起始位置,并將注釋的起始位置移動(dòng)至該目標(biāo)起始位置,解決了現(xiàn)有技術(shù)中源碼處理方法只針對(duì)源碼中的代碼進(jìn)行格式化,對(duì)于源碼中的注釋則未加以處理的問題,達(dá)到提高格式化效果的目的,處理后的源碼提高了源碼的可讀性和可維護(hù)性,便于開發(fā)人員對(duì)源碼進(jìn)行維護(hù)、分析故障等,提高了源碼應(yīng)用的效率;其次,本發(fā)明實(shí)施例提供的源碼處理方法,根據(jù)用戶在設(shè)置界面中輸入的數(shù)值設(shè)置最小起始位置和跳躍步長(zhǎng),達(dá)到提高注釋格式化的靈活性和可定制性的目的;最后,本發(fā)明實(shí)施例提供的源碼處理方法,將跳躍步長(zhǎng)設(shè)置為4的整數(shù)倍,與代碼的縮進(jìn)字符數(shù)相對(duì)應(yīng),達(dá)到進(jìn)一步提高格式化效果的目的。
[0086]請(qǐng)參考圖5,其示出了本發(fā)明一個(gè)實(shí)施例提供的源碼處理裝置的裝置結(jié)構(gòu)圖。該源碼處理裝置可以用于執(zhí)行如上述圖1或圖2所示的源碼處理方法。該源碼處理裝置為軟件開發(fā)工具或者軟件開發(fā)工具的一部分。該源碼格式裝置可以包括:
[0087]獲取模塊301,用于獲取單行源碼中的代碼的結(jié)束位置,所述單行源碼中包含有所述代碼以及與所述代碼對(duì)應(yīng)的注釋;
[0088]確定模塊302,用于根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長(zhǎng)以及所述代碼的結(jié)束位置、所述最小起始位置和所述跳躍步長(zhǎng)確定目標(biāo)起始位置;
[0089]位置移動(dòng)模塊303,用于將所述注釋的起始位置移動(dòng)至所述目標(biāo)起始位置;
[0090]應(yīng)用模塊304,用于對(duì)處理后的源碼進(jìn)行應(yīng)用。
[0091]綜上所述,本發(fā)明實(shí)施例提供的源碼處理裝置,通過根據(jù)代碼的結(jié)束位置、最小起始位置和跳躍步長(zhǎng)確定目標(biāo)起始位置,并將注釋的起始位置移動(dòng)至該目標(biāo)起始位置,解決了現(xiàn)有技術(shù)中源碼處理方法只針對(duì)源碼中的代碼進(jìn)行格式化,對(duì)于源碼中的注釋則未加以處理的問題,達(dá)到提高格式化效果的目的,處理后的源碼提高了源碼的可讀性和可維護(hù)性,便于開發(fā)人員對(duì)源碼進(jìn)行維護(hù)、分析等,提高了源碼應(yīng)用的效率。
[0092]請(qǐng)參考圖6,其示出了本發(fā)明另一實(shí)施例提供的源碼處理裝置的裝置結(jié)構(gòu)圖。該源碼處理裝置可以用于執(zhí)行如上述圖1或圖2所示的源碼處理方法。該源碼處理裝置為軟件開發(fā)工具或者軟件開發(fā)工具的一部分。該源碼格式裝置可以包括:
[0093]獲取模塊401,用于獲取單行源碼中的代碼的結(jié)束位置,所述單行源碼中包含有所述代碼以及與所述代碼對(duì)應(yīng)的注釋;
[0094]確定模塊402,用于根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長(zhǎng)以及所述代碼的結(jié)束位置確定目標(biāo)起始位置;
[0095]位置移動(dòng)模塊403,用于將所述注釋的起始位置移動(dòng)至所述目標(biāo)起始位置;
[0096]應(yīng)用模塊404,用于對(duì)處理后的源碼進(jìn)行應(yīng)用。
[0097]所述確定模塊402,用于在進(jìn)行第I次判斷時(shí),判斷所述代碼的結(jié)束位置是否處于所述最小起始位置之前;若判斷結(jié)果為所述代碼的結(jié)束位置處于所述最小起始位置之前,則將所述最小起始位置確定為所述目標(biāo)起始位置;若判斷結(jié)果為所述代碼的結(jié)束位置不處于所述最小起始位置之前,則進(jìn)行第2次判斷;
[0098]所述確定模塊402,還用于在進(jìn)行第i次判斷時(shí),獲取第1-Ι次跳躍后的起始位置,所述第1-ι次跳躍后的起始位置為自所述最小起始位置按照所述跳躍步長(zhǎng)向后跳躍1-ι次后獲得的位置;判斷所述代碼的結(jié)束位置是否處于所述第1-ι次跳躍后的起始位置之前;若判斷結(jié)果為所述代碼的結(jié)束位置處于所述第1-Ι次跳躍后的起始位置之前,則將所述第1-Ι次跳躍后的起始位置確定為所述目標(biāo)起始位置;若判斷結(jié)果為所述代碼的結(jié)束位置不處于所述第1-Ι次跳躍后的起始位置之前,則進(jìn)行第i+ι次判斷,I為大于或等于2的整數(shù)。
[0099]所述裝置還包括:
[0100]第一顯示模塊405,用于在所述確定模塊402根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長(zhǎng)以及所述代碼的結(jié)束位置確定目標(biāo)起始位置之前,顯示第一設(shè)置界面;
[0101]第一接收模塊406,用于在所述第一設(shè)置界面中接收第一數(shù)值n,n為大于或等于I的整數(shù);
[0102]第一設(shè)置模塊407,用于將所述單行源碼中的第η個(gè)字符位置設(shè)置為所述最小起始位置。
[0103]所述裝置還包括:
[0104]第二顯示模塊408,用于在所述確定模塊402根據(jù)預(yù)先設(shè)置的最小起始位置和跳躍步長(zhǎng)以及所述代碼的結(jié)束位置確定目標(biāo)起始位置之前,顯示第二設(shè)置界面;
[0105]第二接收模塊409,用于在所述第二設(shè)置界面中接收第二數(shù)值m,m為大于或等于I的整數(shù);
[0106]第二設(shè)置模塊410,用于根據(jù)所述第二數(shù)值m設(shè)置所述跳躍步長(zhǎng)。
[0107]所述第二設(shè)置模塊410,用于將所述跳躍步長(zhǎng)設(shè)置為m個(gè)字符,或者將所述跳躍步長(zhǎng)設(shè)置為4m個(gè)字符;
[0108]所述獲取模塊401還用于在獲取單行源碼中的代碼的結(jié)束位置之前,對(duì)所述源碼中的代碼進(jìn)行格式化處理。
[0109]綜上所述,本發(fā)明實(shí)施例提供的源碼處理裝置,通過根據(jù)代碼的結(jié)束位置、最小起始位置和跳躍步長(zhǎng)確定目標(biāo)起始位置,并將注釋的起始位置移動(dòng)至該目標(biāo)起始位置,解決了現(xiàn)有技術(shù)中只針對(duì)源碼中的代碼進(jìn)行格式化,對(duì)于源碼中的注釋則未加以處理的問題,達(dá)到提高格式化效果的目的;其次,本發(fā)明實(shí)施例提供的源碼處理裝置,根據(jù)用戶在設(shè)置界面中輸入的數(shù)值設(shè)置最小起始位置和跳躍步長(zhǎng),達(dá)到提高注釋格式化的靈活性和可定制性的目的;最后,本發(fā)明實(shí)施例提供