名前空間替わりのプレフィックス
あるシステムが業務ごとにサブシステムに分かれているとします。例えば、受注(order)、請求(Claim)といったサブの業務システムがあったとして、これらのプログラムを管理するのに名前空間以外を使わず、プレフィックスを使ってみます。
// 受注業務システムのヘッダファイル // クラス名が「業務を表わすプレフィックス+オブジェクトの名前」 class ordrHoge { .... .... };
// 請求業務システムのヘッダファイル class clmFuga { .... .... };
// 名前空間は全てstd using namespace std; int main() { // 使用する変数ではプレフィックスは取り除く ordrHoge hoge; clmFuga fuga; .... }
このようにすれば、複数の業務チームのソースコードが混在する場面でも衝突が起きにくくなります。現に私のプロジェクトでは、名前空間に関する規約がありません。ですが、これはアーキテクトが意図したものではないようで、業務を表わすハンガリアン?を強制したらたまたま上手くいっただけのようです。