「オブジェクト指向プログラミング」の版間の差分

削除された内容 追加された内容
Ef3 (トーク | 投稿記録)
init.
タグ: 2017年版ソースエディター
 
Ef3 (トーク | 投稿記録)
タグ: モバイル編集 モバイルウェブ編集
17 行
;オブジェクト
:クラスのインスタンス
:オブジェクトは、現実の世界にあるものに対応することがあります。例えば、グラフィックプログラムでは、"circle"、"square"、"menu "などのオブジェクトがあります。また、オンライン・ショッピング・システムでは、「ショッピング・カート」、「カスタマー」、「プロダクト」などのオブジェクトがあります[20]。オブジェクトは、オープン・ファイルを表すオブジェクトや、米国の慣習ヤードポンド法からメートル法に変換するサービスを提供するオブジェクトなど、より抽象的な実体を表すこともあります。
 
オブジェクト指向プログラミングとは、単なるクラスやオブジェクトではなく、データフィールドやメソッドを含むオブジェクト(データ構造)を中心としたプログラミングパラダイム全体のことです。これを理解することは不可欠です。
クラスを使って、関係のないメソッド手続きをまとめて整理することは、オブジェクト指向ではありません。
 
各オブジェクトは、特定のクラスのインスタンスであると言われています(例えば、nameフィールドに "Mary "が設定されているオブジェクトは、Employeeクラスのインスタンスであると言えます)。オブジェクト指向プログラミングにおけるプロシージャはメソッドと呼ばれ、変数はフィールド、メンバー、アトリビュート、またはプロパティとも呼ばれます。そのため、以下のような用語があります。
 
;クラス変数:クラス全体に属するもので、1つのコピーしか存在しない。
33 行
クラスを用いたオブジェクト指向プログラミングをクラスベース・プログラミングと呼ぶことがあるが、プロトタイプベース・プログラミングではクラスを用いないのが一般的である。そのため、オブジェクトとインスタンスの概念を定義するために、大きく異なるが類似した用語が使用されている。
 
一部の言語では、クラスとオブジェクトは、traitやmixinMix-inなどの他の概念を用いて構成することができる。
 
=== クラスベースとプロトタイプベース ===