0

というわけで課題に沿ってクラス図を作成したのですが、これでいいのでしょうか?については特によくわかりません。Column classなぜなら、それは単に可変であると思われるからです。

いくつかの異なる広告システムからデータをロードし、データをデータベースに保存するアプリケーションを構築しているため、それらを分析することができます。

すべての広告システムはレポートの構造が異なることに注意する必要があります: 異なる名前の列、異なる列の順序、異なる日付形式また、広告システムからのデータは異なるデータ形式 (JSON、CSV、XML) です。

各システムからのレポートには、異なる数の列が含まれています。アプリケーションは、日付、ad_campaing、ad_group、キーワード、インプレッション、価格 (すべてのシステムで異なる名前を持っています) の一部のみに関心があります。

広告アカウントの論理は、1 つの広告キャンペーンに複数の広告グループが含まれ、1 つの広告グループに複数のキーワードが含まれるというものです。

ここに画像の説明を入力

4

1 に答える 1

1

オブジェクト指向言語を使用して記述されるソース コードをモデル化するには、クラス図を作成する必要があると思います。最善のアプローチは、特定の種類のレポートごとに (つまり、個別の広告システムごとに) アダプター クラスを作成することだと思います。各アダプター クラスは、特定のレポート タイプを読み込むために、汎用インターフェイス (または抽象基本クラス) を実装します。これが私の図です。アダプターを 3 つ描いていますが、それより多い場合も少ない場合もあります。

ここに画像の説明を入力

複数の広告システムが共通の形式 (CSV など) でデータを配信し、列名のみが異なると予想される場合は、構成ファイル (または構成オブジェクト) から列名のマッピングを読み取る汎用の CSV_ReportLoader を作成できます。

于 2016-10-25T07:41:12.580 に答える