ユーザ用ツール

サイト用ツール


alworker:値の保持・提供

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

alworker:値の保持・提供 [2013/05/29 12:57] (現在)
ライン 1: ライン 1:
 +====== AlWorker 値の保持・提供 ======
 +
 +require "​al_worker"​
 +----
 +画面への表示や、クライアントプログラムへの提供を目的とした値の保持機能をもちます。
 +具体的には、変数 @values にHashで保存された値を、整合性をもって書き換える機能のことです。
 +
 +===== 自プログラムからの利用 =====
 +
 +setter と getter を使います。
 +速度優先でデザインされ、シンプルな機能を実装しています。
 +
 +<code ruby>
 +  # キー "​key1"​ の値として "​value1"​ を保存
 +  set_value( "​key1",​ "​value1"​ )
 +
 +  # 複数の値を一括保存
 +  set_values( "​key1"​=>"​value1",​ "​key2"​=>"​value2"​ )
 +
 +  # キー "​key1"​の値を取得
 +  v = get_value( "​key1"​ )
 +
 +  # 複数の値を一括取得
 +  v = get_values( ["​key1",​ "​key2"​] )
 +</​code>​
 +
 +値は、jsonフォーマット文字列でも取得できます。
 +機能優先でデザインされ、3種類の引数を受け付けます。
 +
 +<code ruby>
 +  json = get_values_json( "​key1"​ )
 +  json = get_values_json( ["​key1",​ "​key2"​] )
 +  json = get_values_json()
 +</​code>​
 +
 +getterでは、返り値をdupして返しますが、簡素化のためにディープコピーは行いません。\\
 +そのため、文字列などでは問題ありませんが、配列等の場合はプログラム側で気をつける必要があります。\\
 +
 +イニシャライザ等、他からの書き換えがまだ発生しえない状況ならば、@valuesを直接書き換えることができます。
 +
 +<code ruby>
 +  @values["​key1"​] = "​value1"​
 +</​code>​
 +
 +===== 値の保存・読み込み =====
 +
 +@valuesに保存されている値を、ファイルへ書き出します。
 +ファイルは、デフォルトで /​tmp ディレクトリへ、ファイル名はAlWorkerコンストラクタで指定した名前 + .values として書き出します。
 +
 +<code ruby>
 +  save_values()
 +</​code>​
 +
 +値の読み込み
 +
 +<code ruby>
 +  load_values()
 +  load_values( "​filename"​ )
 +</​code>​
 +
 +
  
alworker/値の保持・提供.txt · 最終更新: 2013/05/29 12:57 by hirohito