[[開発者向け情報>devel]]

~

** コミットについてのルール [#wb8977b6]
-ビルドが通ってからコミットする.
-暫定コードには必ずコメントをつける.~
-- たとえば: //	hase 力覚インタフェース接続のための暫定コード  のように誰だか明示して.

**ドキュメントについてのルール [#fcef1a7c]

- [[ドキュメントの書き方]] も参照

-ユーザマニュアルについて
--Springhead2/include/SpringheadDoc.bat が生成するものをHTML版とする.
--Springhead2/include/docsrc 以下に 手書きドキュメント(ユーザマニュアル,チュートリアル)を置く.
--RTF版は,ページがファイル名順に並ぶので,ファイル名の前に00main.h 01intro.h など数字をつけて順番を定める.
-リファレンスマニュアル
--ソースにコメントを付けていく. @ ingroup defgroup を使う.

-リファレンス名について~
\ref secPHScene などのリファレンス名はすべて共通なので,
--最初に小文字でリファレンスの種類(ページ:page,セクション:sec, グループ:gp)をつける
--SDKごとにグループ化する.
--Descは gpNode に追加する(FileIOのファイルのノードの説明になるので)
--Sceneなど,他のモジュールとぶつかりそうな名前は避けて,PHSceneなどにする.(hase 提案)


** コーディングについてのルール [#xa0c7421]

*** APIの命名規約 [#a03ea6a5]

- APIクラス名
-- 最初の二文字は所属するライブラリの略称とする
--- 例: Physics → PH
-- 大文字始まりの[[ラクダ記法:http://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%A3%E3%83%A1%E3%83%AB%E3%82%B1%E3%83%BC%E3%82%B9]]とする。
--- ○:PHJoint ×:phJoint ×:PH_Joint

- API関数名
-- 大文字始まりのラクダ記法とする。
-- 語順は動詞→目的語 の順とする。原則として英語に準ずる。
--- ○:CreateScene ×:SceneCreation ×:SceneCreate
-- ''【議論中】''以下については略称を用いる。原語が長く、かつSpringhead内で頻出するため。
--- 略称 : 原語
--- Pos : Position
--- Ori : Orientation
--- Comp : Compute
--- Calc : Calculate
--- Desc : Descriptor
--- Init : Initialize
--- Rot : Rotation
--- Trn : Translation
--- Num, N(接頭辞) : Number
--- Constr: Constraint
--- Sin, Cos Tan: Sine, Cosine, Tangent
--- Prev: Previous
--- '''(他に該当する物があったら追加して下さい)'''
-- 上記の特例を除き、略称は用いない。
--- ソースを読めばだいたいの処理内容が分かることを目的としている

- APIで使用されるEnum
-- 型名は大文字始まりのラクダ記法とする。
-- 要素は全て大文字とし、単語間をアンダースコアでつなぐ。
--- ○:MODE_PENALTY ×:ModePenalty ×:modePenalty ×:mode_penalty

- ステート・デスクリプタ
-- メンバ変数は小文字始まりのラクダ記法とする。
--- ○:numIteration ×:NumIteration ×:num_iteration