驚き最小の原則
(Principle of least astonishment から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/06/12 07:29 UTC 版)
ナビゲーションに移動 検索に移動驚き最小の原則(おどろきさいしょうのげんそく、Principle of least astonishment または Rule of least surprise)とは、ユーザインタフェースやプログラミング言語の設計および人間工学において、インタフェースの2つの要素が互いに矛盾あるいは不明瞭だったときに、その動作としては人間のユーザやプログラマが最も自然に思える(驚きが少ない)ものを選択すべきだとする考え方である。
例えば、あるユーザインタフェースでは Ctrl+Q を押下することでプログラムを中止させるとする。同じユーザインタフェースにマクロを記録する機能(キーを押下した順序を記録して後で再利用できるようにするもの)があるとする。ユーザは Ctrl+Q を含むキーストロークをマクロとして記録したい場合もあるだろう。驚き最小の原則に従えば、マクロ記録中の Ctrl+Q はプログラムを中止させずにキーストロークとして記録される方がユーザを驚かせない。
この経験則は、賢明なデフォルトの適用にも関係している。
ロボット三原則に基づく整理
オブジェクトとロボットには類似性が認められており、アイザック・アシモフのロボット三原則がここでも妥当すると考えられている[1]。
ロボット三原則の第二原則の「ロボットは人間に与えられた命令に服従しなければならない。」は「オブジェクトは、そのメソッド名が表す動作を実行しなければならない」と整理される[1]。これには「メソッドはその動作を規定する内容を持つ」という要素と「メソッドはその名前から合理的に予想できる動作を実行する」という要素がありこの後者が驚き最小の原則に当たる[1]。
日本語話者
結城浩は1996年、この原則を人間関係を円滑にすすめるための心得に拡張し、「驚き、最小の法則」として紹介した。たとえば、プログラムを顧客に納品する際に、判明しているバグがあるのなら、それを伝えておいたほうが顧客にとっても利用時の戦略を立てやすくなる、といったものである。「『どうしようかな?』と思ったときには、 相手の『驚き』を最小にするような選択をすべき」であるという[2]。
プログラミング言語 Ruby は、一時期「驚き最小の原則」とともに語られることが多かった。ただし、作者のまつもとゆきひろはこの原則を Ruby の設計哲学として採用したことはないと述べている[3]。Ruby については、「さまざまなバックグラウンドの人々すべてを驚かせないことではなく、Ruby のやり方に十分に慣れた人が持つ常識が一貫して通用するという意味」[4][5]であるとして、「Matzの驚き最小の原則」という言い方も提案された[4]。現在では Ruby が「驚き最小の原則」とともに語られることは少なくなっている[6]。
脚注
- ^ a b c Ken Pugh『プレファクタリング リファクタリング軽減のための新設計』オライリージャパン、2006年、81頁
- ^ 結城浩 (1996年12月). “驚き、最小の法則”. プログラマの心の健康. 2008年6月7日閲覧。
- ^ Bill Venners (2003年9月29日). “The Philosophy of Ruby, A Conversation with Yukihiro Matsumoto, Part I”. Artima Developer. 2008年6月8日閲覧。
- ^ a b “まつもとゆきひろ 答える”. スラッシュドット・ジャパン (2003年3月14日). 2008年6月8日閲覧。
- ^ Yukihiro Matsumoto (Thu, 26 May 2005 22:51:39 +0900). “Re: A different perspective on Ruby.”. comp.lang.ruby. (ウェブリンク). 2008年6月8日閲覧。
- ^ まつもとゆきひろ. State of the Dominion. 日本Rubyカンファレンス2006.. 該当時間: 1:03:30 2008年6月8日閲覧。
外部リンク
以下、英文
- "Applying the Rule of Least Surprise" エリック・レイモンド作 The Art of Unix Programming より
- Principle of Least Astonishment at Portland Pattern Repository
「Principle of least astonishment」の例文・使い方・用例・文例
- Microsoftがβ版をランチするのは「NetShow streaming server」で動画や音声をオンデマンドで提供する。
- 《主に米国で用いられる》 = 《主に英国で用いられる》 an admiral of the fleet 海軍元帥.
- 篏入的 r 音 《英音の India office /ndiərfɪs/の /r/の音》.
- =《口語》 These kind of stamps are rare. この種の[こういう]切手は珍しい.
- (英国の)運輸省. the Ministry of Education(, Science and Culture) (日本の)文部省.
- は of の誤植です.
- を off と誤植する.
- あいまい母音 《about, sofa などの /ə/》.
- 副詞的小詞 《on, in, out, over, off など》.
- 迂言的属格 《語尾変化によらず前置詞によって示す属格; たとえば Caesar's の代わりの of Caesar など》.
- çon of garlic [humor]. それにはガーリック[ユーモア]がちょっぴり必要だ.
- 《主に米国で用いられる》 = 《主に英国で用いられる》 the Speaker of the House of Commons 下院議長.
- 《主に米国で用いられる》 = 《主に英国で用いられる》 the Committee of Ways and Means 歳入委員会.
- 初めて読んだ英文小説は“The Vicar of Wakefield”
- (違法罪―a sin of commission―に対する)怠惰罪
- 『each』、『every』、『either』、『neither』、『none』が分配的、つまり集団の中の1つのものを指すのに対し、『which of the men』の『which』は分離的である
- 『hot off the press(最新情報)』は『hot(最新の)』の拡張感覚を示している
- 『Each made a list of the books that had influenced him』における制限節は、リストに載った本を制限節で定義された特定の本だけに制限する
- 臨床的鬱病を治療するのに用いられる三環系抗鬱薬(商品名ImavateとTofranil)
- 『sunshine-roof』は『sunroof(サンルーフ)』に対する英国の用語である
- Principle of least astonishmentのページへのリンク