2016-04-23 6 views
2

シーケンスダイアグラムでは、2人のアクター間でクラスを表現する必要がありますが、私のアプリケーションではクラスは1つしかありません。このクラスはser.javaで、file.txtにデータを書き込み、次にこのファイルから読み込んだPHPファイルを読み込み、javascriptファイルを使用してinterface.htmlに情報を表示します.interface.htmlは私のアプリケーションのインターフェイスです。ここでは、演算子は自分のクラスser.javaと直接関係していません。 ser.javaも私のアプリケーションと直接関係はありません。ファイルがあるからです。だから、どのようにシーケンス図を表現できますか? ありがとうございます。オペレータと直接の関係がない1つのクラスのシーケンスダイアグラム

+2

あなたが何を求めているのか分かりにくいです。編集して明確にしてください。 –

+0

俳優は、あなたのJavaと直接関係はありませんが、HTMLとは、javascriptなどとの関係で自分自身です。テキストfiléはあなたのモデルです、javaとPHPは両方のコントローラとhtmlはあなたのビューです... –

+0

do私はhtmlとPHPとJavscriptを私のカルスダイアグラムに入れる必要がありますか? – MakBad

答えて

3

あなたの専門用語はあまり正しくありません。おそらく、これがあなたの混乱の原因です。

シーケンス図にはアクター間のクラスは表示されませんが、オブジェクトの間のメッセージフローは、クラスである可能性のあるデータ型を持つ可能性があります。したがって、クラスSerの1つのオブジェクトと、txt、php、およびhtmlファイルを表す他のオブジェクトを持つことになります。

ファイルは機能を開始しないパッシブオブジェクトなので、メッセージフローは常にSerのインスタンスであるオブジェクトから開始されるものとします。したがって、私はあなたの声明は "このファイルから読み取ったPHPファイル"は非常に正確ではないと思う。誰が読書を始めますか?あなたの説明では、Serインスタンスだけがそのようなことを行うことができます。

あなたのアプリがSerとは異なるとも言います。では、別のクラスのインスタンスでなければならないappオブジェクトがありますか?これはあなたのダイアグラムでも表現できます。

シーケンス図に何を含めるかについて厳密なルールはありません。 UMLは言語であり、あらゆる言語と同様に、あなたの思考を表現することができます。したがって、送受信するメッセージを伝えるのに十分な関連性のあるオブジェクトがあれば、それを含めます。どこかで停止する必要があります。そうしないと、プロセッサと各ストレージセルの記述が終了します。一般的に、人々は自分が書いたクラスのオブジェクトや、自分のクラスから直接呼び出すクラスのオブジェクトを記述する傾向があります。

+0

私はclient.javaを持っています。ser.javaにデータを送ります。このser.javaはtxt.txtにデータを書き込み、次にJavaScriptはtxt.txtのデータを抽出してinterface.htmlに表示します。このサイクルを表す必要がありますか?私は何を私のクラスと呼ぶことができますか? – MakBad

+0

クラスは必須ではありません。あなたのJavaクライアントは、すべての実行可能コードがクラスに属するJavaのように、クラスのオブジェクトでなければなりません。 PHPとJavascriptにはクラスがないため、クラスのないオブジェクトも問題ありません。目的に応じてオブジェクトに名前を付ける必要があります。あなたのアプリケーションとその部品の目的を知らずに、そこに建設的な助言を与えることはできません。 – TAM

関連する問題