平鍋です.
On Mon, 8 May 2000 22:22:49 +0900,
Kaoru Hosokawa <khosokawa@....com> said:
> コードを書いている時は、他のコードに及ぼす影響を気にすることなく、プログラミ
> ングします。コードが完成すると、すぐそのコードをインテグレートします。インテ
> グレーションでは、ツールがクラスやメソッドの食い違いを検出し、テストが整合性
> をチェックしてくれます。このスタイルのインテグレーションは、2、3時間程度で
> 完了しなくてはなりませんが、refactoring でコードが小さいオブジェクトと小さい
> メソッドに分解されているので、コードがかちあう可能性が低いので問題になりませ
> ん。
> [コメント:
> インテグレーションの方法ですが、C++ の環境を考えると、.h と .cpp ファイルに
> 分けてコードを書きます。開発中は、これらのファイルをチェックアウトするので、
> 他のメンバーがこれらのファイルを書き変える事はできません。よって、メソッドが
> かちあう可能性などありません。複数チェックアウトを許している環境なのでしょう
> か?
これは,構成管理ツールの機能の問題ですね.例えば RCS, SCCS
のように一度に2人がチェックアウトできないものもあれば,CVS
に代表される複数人チェックアウトと,変更がかち合った時のマー
ジをサポートする現代的なものもあります.
Smalltalk ネイティブの構成管理があるかどうか,また,C3 プロ
ジェクトで使用された構成管理ツールについて,ご存知の方,フォ
ローお願いします.
> また、通常、.cpp ファイルにメソッドの定義がまとめて書きますが、1.cpp ファイ
> ル1メソッドのように細かくファイルを分割して開発を行ったほうがいいのでしょう
> か?
> ]
これも構成管理ツールによって解決可能なものです.CVS で利用す
るマージツールである,GNU の diff3 や merge は,1 .cpp ファ
イルに多くのメソッドがあって,別々の人がそれぞれ別のメソッド
を修正した場合でも,かなり高い確率で2つのソースをマージして
くれます.
以上