オブジェクト指向 - 情報隠蔽Advertisement情報隠蔽とは
情報隠蔽とは、その名称の示す通り情報を外部から見えないように隠す(遮断する)ことである。オブジェクト指向においての情報隠蔽では、オブジェクトの持っている「属性」と「操作」を外部から遮断する。
では、情報隠蔽を実現できない場合、一体どのような問題が発生するのか。実例と共に考察する。 危険1:自由にアクセスできる属性例点数一覧表には学生が行った試験の点数が記録されている。ここで点数を属性とする一覧表オブジェクトを定義する。![]() 図1:点数一覧表オブジェクト 通常、点数一覧表への値の記録は教員が行う。しかし、このオブジェクトでは属性「点数」はどこからでも参照可能である。つまり、試験結果が良くなかった生徒が勝手に記録を書き換えることができてしまう。 ![]() 図2:属性の自由な書き換え 対策オブジェクト指向では、この問題を回避するために、点数一覧表の属性を外部から参照できないように規程する。これが情報隠蔽である。![]() 図3:アクセスの遮断 危険2:自由にアクセスできる操作例株式会社XXXでは、頑丈な金庫でお金を保管している。この金庫からお金を取り出すには、一定の手続きをおこなわなければならない。ここで「お金」を属性とし、「手続き」という操作を持つオブジェクトを定義する。しかし、現在この手続きは誰でも自由に行えるため、結果として誰でも自由にお金を取り出すことができてしまう。![]() 図4:自由にアクセスできる操作 属性を内部の操作からのみ操作できるようにしても、その操作を誰でも自由に実行できるのでは意味がない。 対策オブジェクト指向では操作に対しても実行可能な範囲を規程することができる。![]() 図5:操作に対するアクセスレベル 経理担当者を通さないと手続きが行えないため、安全性を高めることが可能になった。 Advertisement |
ショートカット・634トップページ・このカテゴリのトップページに戻る ・634ラボ サイト検索Y!ログール |