ソフトウェア開発メモ

日々のソフトウェア設計、実装で考えている、気づいた事を書いています。それが真実か否かは保証しません。悪しからず。

Store Kit CRCカード

はじめに

書いて見た。実際に文章に起こすと難しい。

SKDownload

商品ダウンロード

ロールステレオタイプ

情報提供役?

情報把握責務

App Storeからダウンロード可能な商品を表現します。 その商品のダウンロードの進捗状況、ダウンロード先のファイルパスを把握しています。

実行責務

協調クラス

SKPaymentTransaction transaction

SKMutablePayment

購入量指定可能支払い

ロールステレオタイプ

情報保持、構造化役?

情報把握責務

関連づく商品、購入するユーザー名。購入する量を知っています

実行責務

呼び出し側より指定された量を購入します。

協調クラス

SKPayment

支払い

ロールステレオタイプ

情報保持、構造化役?

情報把握責務

関連づく商品、購入するユーザー名を知っています。

実行責務

協調クラス

SKPaymentQueue

支払い行列

ロールステレオタイプ

サービス提供、調停役?

情報把握責務

支払いの行列を保持しています。

実行責務

App Storeに対して整列された順番に支払いを行い、結果をオブザーバーに伝達します。 また、商品ダウンロードの実際のダウンロードも行い、同様に結果をオブザーバーに伝達します。

協調クラス

SKPaymentTransaction transactions ペンディングトランザクション

SKPaymentTransaction

支払い取引

ロールステレオタイプ

情報提供役?

情報把握責務

私は支払い取引です。購入した商品、支払い番号、支払い日時、レシート、商品ダウンロードの配列を保持しています。

実行責務

協調クラス

SKDownload downloads 商品ダウンロード SKPayment payment 支払い

SKProduct

商品情報

ロールステレオタイプ

情報保持役?

情報把握責務

私は商品です。商品についての情報を知っています。具体的には値段、商品名、商品の説明、商品識別です。

実行責務

協調クラス

SKProductsRequest

商品情報フェッチ要求

ロールステレオタイプ

サービス提供

情報把握責務

フェッチしたい商品識別子の配列を保持しています。

実行責務

App Storeに対してフェッチ要求を発行します。結果を委譲者に返します。

協調クラス

SKProductsResponse

商品情報フェッチ応答

ロールステレオタイプ

情報保持役?

情報把握責務

フェッチした商品情報の一覧を保持しています。

実行責務

協調クラス

SKProduct products 商品情報

SKReceiptRefreshRequest

レシート更新要求

ロールステレオタイプ:?

情報把握責務

実行責務

協調クラス

SKRequest:ストア要求

ロールステレオタイプ

サービス提供役?

情報把握責務

実行責務

Storeへの要求を開始とキャンセルを行います。結果を委譲者に伝達します。

協調クラス