導讀:有統計表明,縮進良好的代碼可以提高代碼閱讀效率40%以上,70%開發工作是維護前任工程師所編寫的代碼,因此代碼的格式美化往往是系統重構的第一步,工欲善其事必先利其器,下面就來看看那些不錯的工具吧。
文檔齊全、易讀的源代碼是每一個合作開發項目所必備的,邏輯結構清晰的、組織良好的、格式標准的代碼能夠更快地發現 bug,精簡代碼而不失功能性,這些要求在一個協同開發的團隊里顯得尤為重要,在那樣的環境中,一個統一的源代碼展示風格更是不可或缺。事實上,你不需要 手工的做任何事,不少相關的工具能為我們節省大量的時間。
需要提醒的是:收集的以下工具,作者並沒有做相關的驗證。除了格式化和美化代碼之外,部分工具甚至能把冗余的元素去除。使用它們的時候記得備份代碼,那樣隨時可以恢復數據。
Quick Highlighter 支持的語言超過85種,如:C++, PHP, Ruby, HTML, JavaScript, Perl, Python, Smarty, XML等等,它能格式化源碼以及高亮內建的關鍵字和數據類型等。
PrettyPrinter適用於 PHP, Java, C++, C, Perl, JavaScript, CSS。提供了大量格式化選項,可以按照你喜歡的方式來展示代碼。
PHP Code Beautifier旨在美化PHP代碼,它運用了大量PHP延伸及擴充程式庫(PEAR),甚至可以准確地處理雜亂的腳本,例如:所有代碼在一行中,它 能夠把代碼轉換成可讀性更好的格式。設置缺省的換行而不會移除任何額外的換行符,那樣你可以把相關的東西聚攏在一起,根據嵌套的花括弧來修正錯誤的縮進。
1
2
3
4
5
6
7
|
<?php
if
(
$code
== BAD){
$action
= REWRITE;}
else
{
$action
= KEEP;}
for
(
$i
=0;
$i
<10;
$i
++){
while
(
$j
>0){
$j
++;doCall(
$i
+
$j
);
if
(
$k
){
$k
/=10;}}}
?>
|
轉換成
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<?php
if
(
$code
== BAD) {
$action
= REWRITE;
}
else
{
$action
= KEEP;
}
for
(
$i
= 0;
$i
< 10;
$i
++) {
while
(
$j
> 0) {
$j
++;
doCall(
$i
+
$j
);
if
(
$k
) {
$k
/= 10;
}
}
}
?>
|
Ruby 美化工具以命令行的形式接受文件名列表,為每一個指定的文件創建一個副本然后對源文件進行美化。如果有縮進錯誤,腳本程序會打印錯誤消息,但總會對其修改的結果進行保存。
4、 Tabifier
Tabifier 是一個代碼縮進工具,目前Tabifier支持CSS,HTML,JSON,以及C語言風格的代碼。
CSS Beautifier提供了多種選項,包括按字母排序和大寫轉換小寫等特性。
6、 CSS Formatierer und Optimierer
該工具有多種壓縮設計,你可以對選擇器、屬性進行排序,重新組合選擇器,精簡顏色、字體的粗細屬性(font-weight),摒棄無效的屬性以及添加時間戳,同時你還可以自定義模板系統用於格式化代碼。生成結果能夠當做文件輸出保存,你可以在cleancss.com找到一個與之對應的副本。
Highlight.js用於博客、論壇等任何web頁面上作為代碼示例的語法高亮工具。查找代碼塊,檢測語言,高亮處理的自動化機制讓操作者易於 使用,它同樣能夠作為WordPress的插進和Firefox的擴展程序,所支持的語言有Python, Ruby, Perl, PHP, HTML, CSS, Django, JavaScript, VBScript, Delphi, Java, C++, SQL,與之類似的工具有由Google提供的 Googles Javascript Code Prettifier.
Code Beautifier Plus支持Java、C#和ActionScript
PHP Formatter可以在控制結構體后添加注釋,輸出文件高亮處理,通過內聯函數鏈接到php手冊,移除注釋和空行。它包含5種預定義的風格,同時你也可以定義自己的樣式。
一個美化PHP4和PHP5源代碼工具,能夠運行在你自己的服務器,但需要PHP5的支持。
11、 JSBeautifier
此工具能夠美化JavaScript、HTML,提高JSON/JSONP的可讀性。
商業版本
12、 Polystyle
Polystyle 能按照你自己代碼風格來自動格式化代碼,它能通過檢測你的代碼樣例來學習如何格式化,該工具支持Actionscript, ASP, C/C++, C#, CMAC, CSS, HTML, Java, Javascript, JSP, PHP, Pascal/Delphi, Perl, Python and Visual Basic.等等,價格是79$,有命令行的窗口兩種模式