▼ノベルゲームツールを作っちゃうぞ!Ver4.0at GAMEDEV▼ノベルゲームツールを作っちゃうぞ!Ver4.0 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト422:417 10/08/30 07:58:28 pptN1p2m さらに、Builderは機能ごとに継承するか委譲するかを考えます。 委譲する場合は以下になります。 Builder getInstance(discriminator):Builder buildPart1() ... buildPartN() ... setProvider(p:BuildProvider) getProvider():BuildProvider getProduct():Product BuildProvider buildPart1() ... buildPartN() ... getProduct():Product Builderの実装はプロバイダに投げ、getInstance(discriminator)で適切にプロバイダを設定します。 ここから先、今回の件に特殊化した内容で書きます。 423:417 10/08/30 08:00:09 pptN1p2m BuilderをProcessorとしましょう。 データの読み書きのために入出力とデータをカプセル化したクラスが必要です。 Stream InputStream->Stream read(date:Date) OutputStream->Stream write(date:Date) Date Processor getInstance(discriminator):Processor processPart1() ... processPartN() ... //以下必要に応じて getDate():Date setDate(d:Date) setStream(s:Stream) getStream():Stream Dateはセーブ・ロードを行う実データです。Streamと一緒にProcessorに渡して読み書きします。 これら一連の処理をDirectorに管理させます。 こんなかんじです。Javaだとシリアライザが組み込まれてるのでそれが使えるんですがね。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch