私は、他の OO 言語の経験が豊富な初心者のオブジェクティブ C プログラマーです。
現在、私は単位変換を伴う電卓に取り組んでいます。私の最初の考えは、 MeasurementとUnitという 2 つの抽象クラスを持つことでした。Unit のサブクラスには、Meter、Kilogram、Secondなどがあります。これらのクラスには、基本単位 (おそらく SI 単位) に対する乗数に関する情報と、ラベルや説明などの UI に役立つ情報が含まれます。測定のサブクラスは、Length、Mass、Timeなどです。これらのクラスには、測定値と単位、および許可された変換を決定し、変換を実行するために必要なメソッドが含まれます。
「必要な Length クラスで共有される Meter クラスを 1 つだけにするにはどうすればよいですか?」などの質問があり始めています。および「そのタイプの測定に共通する、測定ごとに許可される単位のリストを保存するにはどうすればよいですか?」これにより、クラス階層を過剰に設計している可能性があると信じるようになりました。このタスクを達成するためのさまざまなアーキテクチャに関する提案や、初心者が気付いていない可能性のある言語機能について、私の実装に役立つ可能性があるかどうかを疑問に思っていました。
前もって感謝します。