|
CodingStyle
周蟒程式哲學與風格
對編程語言的選擇態度:
周蟒程式風格一個程式語言一定有它的設計目的跟設計哲學。這些目的與哲學也可以作為開發或使用中遇到疑問時的參考規則。 周蟒的開發目的是做出一個輕量的,與 Python 語言互相兼容,兼顧學習與實用的中文 Python 語言。 周蟒背後的哲學有三:
程式語言再怎麼修改得接近自然語言, 都仍然具有程式語言的邏輯與規則, 周蟒語言的目的並不是接近中文自然語言,而是做出一個實用的中文程式語言。 周蟒的長處是在於發揮 "完全相容 Python 程式語言" 的中文程式語言的優點, 所有語法,關鍵詞都依照 Python 的風格。學習周蟒後要橋接到 Python 語言相當容易。 由設計目的跟設計哲學產生出的周蟒,其寫作特色有:
術語為更好的溝通, 周蟒定義了一些術語:
周蟒泛指本專案相關的內容,用在不同處的意思可指周蟒專案,周蟒程式語言,周蟒直譯器等等。 2. zhpy: zhpy 即周蟒的英文代稱. 3. 本體程式語言
指 Python 等英語為主的程式語言, 周蟒以 Python 程式語言為本體程式語言,依附於 Python 程式語言的語法與功能。 所有實際運行最後都交給 Python 程式語言處理。 4. 替身程式語言 目前特指周蟒程式語言,像周蟒程式語言這樣的替身程式語言能使用本土語言來編程,轉換後透過本體程式語言來執行主要工作。 5. 關鍵詞
程式語言的保留字,代表某些特定功能。 6. 周蟒程式: 使用繁簡體中文撰寫,能透過周蟒執行的 Python 程式稱作周蟒(zhpy)程式。 7. 周蟒中文腳本 使用 zhpy -c 命令執行的周蟒程式, 或在程式中標頭定義了 #!/usr/bin/env zhpy 語句的腳本。 8. 嵌入周蟒 使用 zhpy.zh_exec 方法於 python 程式中執行周蟒程式。 寫作前應留意的事程式語言與自然中文語言不同,有些使用上的限制應留意: 1. 使用 utf-8 編碼: 寫作時留意編輯器編碼必須為 utf-8。 2. 英文檔名: 為相容性, Windows 下使用 zhpy 檔案名稱應使用英文命名。 ( Ubuntu 和 MAC 上可用中文檔名 ) 3. 副檔名: zhpy 程式附檔名名稱並不強制。預設用 .twpy (繁體),.cnpy (簡體)來作識別(建議使用). 也可以使用 .py, .tw.py, .cn.py 來作附檔名以保留編輯器對 python 語法的支援。 4. 不使用中文標點: 中文標點轉換成英文標點歧異頗多,周蟒中已移除中文標點支持,這麼做得到的是更好的Python-周蟒程式互換性。 寫作中應留意的事值得一再聲明的是:周蟒是基於 Python 程式語言的中文編程語言。 Python 程式語言的寫作風格以"清晰易讀"為優先考量。因此使用周蟒語言寫作時也應該保持這個風格。 以下是使用周蟒語言寫作時應留意的事: 1. 關鍵詞前後留白(空格): 空格有助於概略閱讀程式時迅速識別關鍵詞,因此在周蟒程式裡,關鍵詞前後需留白。 2. 縮排: 在建立新類別,新定義,或撰寫包含條件判斷(如果,當...)的語句時,需加上適當的縮排。 在周蟒中採用4個空白鍵當作一個基本的縮排單位。請不要使用 tab 鍵來代替空白鍵。 3. 變量和函數的命名規範: 變量和函數的命名並沒有強制的規則,不過可以試著使用"類"(class)以"名詞"命名,"方法"(method),函式(function)以動詞命名的規則。 4. 像 Python 人一樣編程 周蟒程式承繼 Python 程式固有的彈性,雖然你可以將周蟒寫得像在使用其他語言一般,但最好還是能寫得像 Python 程式。 咬一口周蟒, Code Like a Pythonista 都是很好的參考資料。 |
Sign in to add a comment
建议,文件名的约定修订为 .tw.py 和 .cn.py 以便各种编辑器可以识别为标准Python 支持己有的各种缩进支持?!
Zoom Quiet 好建議, 採納!
像Python人? 这个有专用名词的吧, Pythonic ?
給初學者看誰會知道什麼叫 Pythonic? 只好大致翻一下囉 :)