「オブジェクト指向」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
− | '''オブジェクト指向''' | + | '''オブジェクト指向'''(Object Oriented)とは、主に[[ソフトウェア]]の[[設計]]や[[開発]]における考え方のひとつ。大きな意味での[[デザインパターン]]である。 |
− | + | 近年では「オブジェクト指向」というと[[C++]]、[[Java]]、[[C Sharp|C#]]、[[Ruby]]、[[PHP]]などの「[[オブジェクト指向プログラミング言語]]」、およびそれらを用いた「[[オブジェクト指向プログラミング]]」が世の大半を占めている関係で、まるでイコールのように言われることも多いが、あくまで物事の考え方であり、[[プログラミング言語]]に限ったものではない。たとえば、最近ではあまり見かけなくなったが、医療分野で使われているDICOM規格をはじめ、1980年代ごろにはオブジェクト指向規格書なるものも大量に存在した。 | |
− | 近年では「オブジェクト指向」というと[[C++]]、[[Java]]、[[C Sharp|C#]]、[[Ruby]]、[[PHP]]などの「[[オブジェクト指向プログラミング言語]]」、およびそれらを用いた「[[オブジェクト指向プログラミング]]」が世の大半を占めている関係で、まるでイコールのように言われることも多いが、あくまで物事の考え方であり、[[プログラミング言語]] | ||
− | |||
− | |||
オブジェクト指向とは、たとえば[[ゲーム]]に登場するキャラクターに例えると、体力や魔力、所持アイテムといった値([[変数]])と、移動や会話、攻撃などの行動([[メソッド]])をもっているが、これらの値や行動をプログラム上でバラバラに管理しては[[保守性]]が悪いので、ある一定の「物(オブジェクト)」という単位にまとめて管理しましょう、という考え方のことである。 | オブジェクト指向とは、たとえば[[ゲーム]]に登場するキャラクターに例えると、体力や魔力、所持アイテムといった値([[変数]])と、移動や会話、攻撃などの行動([[メソッド]])をもっているが、これらの値や行動をプログラム上でバラバラに管理しては[[保守性]]が悪いので、ある一定の「物(オブジェクト)」という単位にまとめて管理しましょう、という考え方のことである。 | ||
− | なお、あくまでオブジェクト「指向」であり、オブジェクト「絶対主義」ではない点に注意すること。たとえば、[[オブジェクト指向プログラミング言語]] | + | なお、あくまでオブジェクト「指向」であり、オブジェクト「絶対主義」ではない点に注意すること。たとえば、[[オブジェクト指向プログラミング言語]]であれば「オブジェクト指向的な考え方に傾向している(最適化された)プログラミング言語」という意味であり、必ずしもオブジェクト指向の考え方に沿った書き方をしなければならないわけではなく、[[静的メソッド]]および[[静的変数]]ばかりを使い[[手続き型プログラミング言語]]と化すことも可能であり、また[[関数型プログラミング言語]]のような記法も可能、もしくは混在を前提としている[[プログラミング言語]]も多い。 |
− | |||
− | |||
== 関連項目 == | == 関連項目 == | ||
20行目: | 15行目: | ||
* [[オブジェクト指向プログラミング]] | * [[オブジェクト指向プログラミング]] | ||
* [[オブジェクト指向プログラミング言語]] | * [[オブジェクト指向プログラミング言語]] | ||
− | |||
== 参考文献 == | == 参考文献 == | ||
− | + | <references/> | |
+ | == 外部リンク == | ||
{{stub}} | {{stub}} |