logo

ハッシュの美学(2)

ヒューマンリソシア株式会社はコラム「ハッシュの美学(2)」を公開しました。

###

ハッシュを使ったプログラム例
今回のプログラムは多言語対応の例となります。ハッシュを入れ子にして、数字の1から5を英語と漢数字で表示するプログラムを作成しました。 英語の「one」にアクセスするには、ハッシュを入れ子にしてアクセスします。しかし、この方法では、いちいち「[]」を指定する必要があり少し面倒です。もっと、簡単にアクセスする方法はないかと検討したところ、ありました。やっぱり、Ruby便利ですね。

リスト1

# -*- coding:utf-8 -*-
require ‘pp’lang = {
en:{
number:{
one:”one”, two:”two”, three:”three”, four:”four”, five:”five”
}
}, ja:{
number:{
one:”一”, two:”二”, three:”三”, four:”四”, five:”五”
}
}
}pp lang[:en][:number][:one]
ハッシュを使ったプログラム例(改良)
リスト2が改良したプログラムです。いろいろなテクニックを駆使していますが、英語の「one」に アクセスするには、「[]」ではなく、「lang.en.number.one」のように「.」区切りでアクセス出来るようになりました。直感的にアクセ スできる方式を実現しました。利用しているテクニックは、構造体、map関数、再起呼び出しとなります。3行目から4行目にかけてがこのプログラムのポイ ントです。

この続きは以下をご覧ください
リンク

関連情報
http://resocia.jp/
本プレスリリースは発表元企業よりご投稿いただいた情報を掲載しております。
お問い合わせにつきましては発表元企業までお願いいたします。