- 井號代表註解,而檔頭通常都有數十行以上的註解。
- 無論是甚麼程式語言,撰寫程式時,都要注意「可讀性」的議題,都要注意如何讓程式易讀、易懂、易維護。
- Python 程式要容易閱讀與維護,要注意下列四項要領:
- 命名:要讓變數的命名遵守固定的規則,要讓函數的命名遵守固定的規則。
- 註解: Python 的註解是用「井號」來表明, Python 的檔頭通常都有註解。
- 空行: Python 程式碼為了方便閱讀,有些地方使用完全空白的一行,以此突顯特定的一行程式碼,或以此區隔特定的一段程式碼。
- 對齊: Python 程式碼嚴格規定了對齊的方式。
- 多數的程式語言,撰寫時,為了方便閱讀,有些地方會加上很多空白,來幫助上下兩行文字的對齊。
- 對齊 + 空行,是達成縮排機制的方式。
- 請注意,Python 的縮排是強制的 ,縮排錯誤程式,是無法執行的。
- 廣義來看,空行、空白算是一種「無言」的註解,其功效不言而喻。
- Python 的特色是「縮排」,以行為單位,區隔不同的敘述(statement)。
- 以行與行之間的對齊,表示相同區塊(block)的敘述。
- 名,指名份、地位。
- Python-Fu 的名份與地位,與 Script-Fu 息息相關。
- Python-Fu 是相對於 Script-Fu ,Python-Fu 的出現,主要是因為,用戶對 Scheme 語法的不熟悉。
- 因此, Python-Fu與 Script-Fu 在架構上是相同的,只有語法有差異。
- 要撰寫 Python-Fu ,仍舊需要 Python 物件導向的知識,只是為了讓 Python-Fu與 Script-Fu 架構盡量接近,盡量不要使用 Python-Fu 物件導向的語法。
- 名,也指命名,名不正則言不順,言不順則事不成。
- 函式:通常以 pdb.gimp 或 pdb.plug_in 開頭。
- 一旦仔細研究 Python-Fu ,就會知道 GIMP 內部的程序(函式)的命名規則。
- 操作英文介面,會比較容易學習 Python-Fu 程式的撰寫,因為程式要用英文撰寫。
- 例如,pdb.gimp_edit_clear 函式,對應到選單介面的位置
- 中文選單是 [影像] / 編輯 / 清除
- 英文選單是 [Image] / Edit / Clear
- 變數:變數的命名,也有一些固定的規則。
- img 、image 表示影像變數。
- 一支 Python 程式,通常只會處理一個影像變數,但可能要處理三、四個圖層。
- 例如, alien-glow-logo.scm ,改為 Python-Fu 的程式之後,三個圖層變數的名稱,為 logo_layer 、low_layer 、bg_layer 。
- 參數值的傳遞:要命名的東西真的很多。
- 每一個對話盒的控制元件,都需要命名,都需要一個變數,來接收與傳遞參數值,都需要解說的字詞,來代表該控制元件。
- 程式越複雜,就需要花更多心思,替變數取一個好名字。