0

Python でジオメトリ ライブラリを開発し、3D 空間でのポイント、ライン、プレーン、およびさまざまなジオメトリ操作を記述する必要があります。私の前の質問に関連しています

設計における主な問題は、これらのエンティティに ID が必要かどうかです。インスピレーションを得るための同様のライブラリ (別の言語で開発された) があるかどうか、選択されたデザインは何か、特に 1 つの選択ともう 1 つの選択の理由を知りたいと思っていました。

4

1 に答える 1

1

私は他のライブラリに精通していませんが、3d ポイントは (不変の) 値オブジェクトであるべきだと思われます。- 複数のコンテナ (ライン、プレーンなど) 間でポイントを共有できます。 - 防御的なゲッターとセッターを回避します。 - 実生活では、3D ポイントにはアイデンティティがありません。

また、Josh Bloch は ( http://www.infoq.com/presentations/effective-api-designを参照 )、Java の標準ライブラリの設計で犯した過ちの 1 つは、Size クラスを次のように定義しなかったことだと述べています。不変。

于 2010-03-17T05:51:26.047 に答える