1

Android アプリケーションにインポートするフェリーのスケジュールを保持する XML ファイルを作成しており、3 つの XML ツリー構造を開発しましたが、パフォーマンスや正しい XML 形式に基づいて使用する意見を探しています。以下の 3 つの構造体は、最終的に次のフェリー時刻を検索する配列にインポートされます。

よろしくお願いいたします。

改訂された XML ツリー - 良くなった?

<FerrySchedule>
    <Terminal name="St. George">
        <Schedule day="Monday">
            <DepartureTime>00:00:00</DepartureTime>
            <DepartureTime>01:00:00</DepartureTime>
        </Schedule>
        <Schedule day="TuesdayFriday">
            <DepartureTime>00:00:00</DepartureTime>
            <DepartureTime>00:30:00</DepartureTime>
        </Schedule>
    </Terminal>

    <Terminal name="Whitehall">
        <Schedule day="Monday">
            <DepartureTime>00:30:00</DepartureTime>
            <DepartureTime>01:30:00</DepartureTime>

        </Schedule>
        <Schedule day="TuesdayFriday">
            <DepartureTime>00:00:00</DepartureTime>
            <DepartureTime>00:30:00</DepartureTime>
        </Schedule>
    </Terminal>
</FerrySchedule>

XML ツリー 1:

<FerrySchedule>
    <Monday>
        <StGeorge>
            <time>0000</time>
            <time>0100</time>
        </StGeorge>
    </Monday>
</FerrySchedule>

XML ツリー 2:

<FerrySchedule>
    <Monday>
        <boat depart="StGeorge">0000</boat>
        <boat depart="StGeorge">0100</boat>
    </Monday>
</FerrySchedule>

XML ツリー 3:

<FerrySchedule>
    <Monday>
        <boat>
            <depart>St. George</depart>
            <time>0000</time>
        </boat>
        <boat>
            <depart>St. George</depart>
            <time>0100</time>
        </boat>
    </Monday>
</FerrySchedule>
4

1 に答える 1

1

パフォーマンスの違いがこれらの設計間の選択に影響を与える可能性は非常に低いと思います。ただし、パフォーマンス要件と制約については何も言っていないので、それは単なる推測です。

デザインに影響を与える主な要因は、人間の読者には意味が自明であること、データの処理が簡単であること、データの生成が簡単であることだと思います。

要素名としての「Monday」と「StGeorge」の見た目は好きではありません。一般に、要素名はインスタンスではなくタイプである必要があります。

私はそれを平らにするだろうと思います:

<FerrySchedule>
        <boat depart="StGeorge" time="00:00:00" days="Mon"/>
        <boat depart="StGeorge" time="01:00:00" days="Mon Wed Fri"/>
</FerrySchedule>

データをグループ化すると、曜日よりも出発地でグループ化する可能性が高いと思いますが、そのように感じる理由は、スケジュールの本能以外には考えられません。曜日が異なれば、似ている可能性があります。

時間値に秒を含めるのは少しばかげているように見えますが、XMLスキーマの「慎重に選択された」データ型のセットにはhh:mm:ss形式のxs:timeが含まれ、hh:mm形式のデータは含まれていません。

于 2011-10-12T22:54:14.370 に答える