|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ テン : [てん] 【名詞】 1. 10 2. ten 3. (P), (n) 10/ten ・ プログラミング : [ぷろぐらみんぐ] 【名詞】 1. programming 2. programing, (n) programming/programing
インテンショナルプログラミング()は、プログラミングにおいて、ソースコードに ''intention''(意図、意向)と呼ばれる正確な情報を反映させるコンセプトの集合である。インテンション (intention) とは、プログラマが構想を練る際に頭の中に生じる概念をさす。プログラマの思考と抽象化のレベルをうまく一致させ、ソースコードの閲覧とプログラムの保守を容易にする。 マイクロソフトに長く勤めたチャールズ・シモニーが提唱したコンセプトである。彼はマイクロソフトリサーチで、この概念を実証する IP と名づけた統合開発環境の開発を指揮した。理由は不明だが、マイクロソフトはインテンショナルプログラミングに関する作業を止めさせたため、IP の開発は2000年代初期に中止された。〔シモニーは彼のアイデアを公表することを熱望していたが、状況がそれを許さなかった。彼は「マイクロソフトが .NET を近々世に出すというときに、同じ組織の誰かが、それは間違っている、こっちの方がいいなんて言い出すのは現実的ではなかった」 と説明している。(引用は "Part II: Anything You Can Do, I Can Do Meta: Space tourist and billionaire programmer Charles Simonyi designed Microsoft Office. Now he wants to reprogram software." 、2007年1月9日、Scott Rosenberg、''Technology Review'')〕 インテンショナルプログラミングに関するよい解説は "Generative Programming: Methods, Tools, and Applications" という本の11章にある〔"Generative Programming: Methods, Tools, and Applications", by Krzysztof Czarnecki and Ulrich Eisenecker, Addison-Wesley, Reading, MA, USA, 2000年6月〕。 == 開発工程 == シモニーの構想によれば、インテンショナルプログラミングのパラダイムを使ったアプリケーションの開発は次のように進められる。プログラマはまず、問題の対象領域(例えば生命保険など)に特化したツールボックスを構築する。次にその領域の専門家がプログラマに協力して、WYSIWYG的手法でアプリケーションがどう動作すべきかを記述する。最後にそのプログラムに関する記述とツールボックスを使って自動化システムが最終的なプログラムを生成する。その後の変更は WYSIWYG レベルでのみ行われ、"domain workbench" と呼ばれるシステムを利用する〔Scott Rosenberg: "Anything You Can Do, I Can Do Meta ." ''Technology Review'', 2007年1月8日〕。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「インテンショナルプログラミング」の詳細全文を読む スポンサード リンク
|