Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
But it's not completed yet.
- Loading branch information
Showing
1 changed file
with
71 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,71 @@ | ||
| .. highlightlang:: none | ||
|
|
||
| TODO: Translate. | ||
|
|
||
| コーディングスタイル | ||
| =================== | ||
|
|
||
| 一般的に1つのコードベースに複数のスタイルがまざっているとソースコードが読みづらくなります。たとえ、それぞれのスタイル単独では読みやすいスタイルあっても、まざると読みづらくなります。そのため、mroongaプロジェクトでもスタイルを統一して、読みやすいソースコードになるようにします。 | ||
|
|
||
| 読みやすいソースコードにする理由は以下の通りです。 | ||
|
|
||
| * 機能を拡張するときのコストを下げる。 | ||
| * 問題を修正するときのコストを下げる。 | ||
|
|
||
| どちらの場合も周辺のソースコードを読んで、それをベースにコードを追加・変更します。このとき、ソースコードが読みやすい状態だと周辺のソースコードの把握をスムーズに行うことができ、スムーズにその後の作業に移れます。 | ||
|
|
||
| TODO: 読みやすさの他にデバッグのしやすさ(gdbでの追いやすさ)も考慮に入れたほうがよさそうだがどうしよう。 | ||
|
|
||
| 言語 | ||
| ---- | ||
|
|
||
| 基本的にすべてC++で記述します。よほどのことがない限りCは使いません。 | ||
|
|
||
| よい例: | ||
|
|
||
| ha_mroonga.cpp | ||
|
|
||
| 悪い例(C言語を使っている): | ||
|
|
||
| mrn_sys.c | ||
|
|
||
| ファイル名 | ||
| ---------- | ||
|
|
||
| ソースコードのファイル名は全て小文字にします。また、単語ごとに"_"で区切ります。 | ||
|
|
||
| よい例: | ||
|
|
||
| ha_mroonga.cpp | ||
|
|
||
| 悪い例(大文字を使っている): | ||
|
|
||
| HA_MROONGA.cpp | ||
|
|
||
| 悪い例(単語を"_"で区切らずにくっつけている): | ||
|
|
||
| hamroonga.cpp | ||
|
|
||
| 悪い例(単語を"-"で区切っている): | ||
|
|
||
| ha-mroonga.cpp | ||
|
|
||
| ソースコードの拡張子 ``.cpp`` にします。 | ||
|
|
||
| よい例: | ||
|
|
||
| ha_mroonga.cpp | ||
|
|
||
| 悪い例( ``.cc`` を使っている): | ||
|
|
||
| ha_mroonga.cc | ||
|
|
||
| ヘッダーファイルの拡張子は ``.hpp`` にします。 | ||
|
|
||
| よい例: | ||
|
|
||
| ha_mroonga.hpp | ||
|
|
||
| 悪い例( ``.h`` を使っている): | ||
|
|
||
| ha_mroonga.h |