Skip to content
lriki edited this page Apr 24, 2018 · 1 revision

Coding guideline

実装コードについては特に規則は設けません。 周囲のコードと一貫性を持たせるようにします。 必要に応じて、clang-format を実施します。(定義ファイルはリポジトリのルートにあります)

公開 API についてはいくつか守らなければならないことがあります。特に複数プログラミング言語に対応するためのバインドコードの生成のためにいくつか特殊なマクロコードでコードをマークすることがあります。

目標

簡潔さより明確さを重視する

出来る限り少ない文字数で短いコードを書けるようにすることが目標ではありません。

Lumino の簡潔さは、コードの書き手ではなく読み手にとっての明確さです。

基本

メソッド名

副作用の有無と計算量によってつけます。

  • 副作用があったり、計算が定数オーダーとならないものは動詞句とします。例:sort(), find()
  • それ以外の、副作用がなく、定数オーダーとなるものは名詞句とします。例:length(), front()

バインドコードの生成のためのルール