在代碼中進行中文命名實踐的短期目標

對中文命名的意義不再贅述, 請參看之前的對在代碼中使用中文命名的質疑與迴應.

去年中文命名實踐的阻力和應對之後, 在一些小項目中繼續實踐了中文命名(Java/JS/Python等, 詳見之前的專欄文章), 涉及領域不少但尚未形成明確的重點項目. 發現了一些在業務相關代碼使用中文命名的例子(你們在怎樣的項目中使用過中文命名? - V2EX), 還未形成社區. 下面是可能的努力方面:

  1. 編寫示例代碼爲中文命名的教程. 之前有一些嘗試, 專欄中帶有示例代碼的文章也都採用了中文命名
  2. 在開源項目中實踐中文命名, 也歡迎提出實用項目的想法或者例題面試題
  3. 開發中文命名的API, 如之前的簡繁轉換庫, 離線英漢詞典
  4. 補: 在IDE中進行中文命名的輔助工具, 包括輸入法與自動補全集成等.
  5. 開發工具, 輔助翻譯現有英文命名的源碼爲中文命名, 以 #1 輔助在線閱讀學習代碼或者 #2 批量轉換一個項目中的所有源碼等等

打算將最後一項作爲短期內的中心內容, 圍繞它開發一系列開源工具. 包括瀏覽器插件, IDE插件等.

1從兩個月前開始實踐, 最近基本實現了翻譯在線代碼段(GitHub和碼雲)的瀏覽器插件原型(版本已更新至0.0.11, 效果如題圖).

2之前Java源碼英翻中是一種可能, 但考慮儘量倚靠IDE本身重構相關API. 首先提取所有代碼中的英文命名, 並提取單詞(如之前對JDK源碼的命名分析), 在機器翻譯的基礎上, 提供對某些業務術語手動翻譯的選項, 之後基於這個詞彙表進行源碼的批量命名轉換.

在此項目實現過程中, 將在源碼中使用中文命名, 儘可能提取易於複用的API, 並編寫系列技術開發文檔. 這樣也可以觸及上面其他1/2/3三個方面.

項目中必需一些中文自然語言處理和機器翻譯相關技術和相關詞庫/語料數據, 歡迎有興趣和經驗的同仁參與.

2018-11-02

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章