[プロ技]抽象化の概念

woody_1227 オーナー 公式アカウント

抽象化とは
ログインすると、チェック機能を利用できるようになります。
・規模の大きなプログラムを作る上で重要なこと
 ・ がし易い(つまり容易に ができる)こと
 ・プログラムを構成する部品を、 し易いように作ること
・そのために、最も重要で基本となる考え方が「

○抽象化とは
抽象化(Abstraction):一般的には、物事を高い視点で捉え、共通の要素を取り出して一つの概念にまとめること。
⇕ 対義語


プログラミングにおける「抽象化」とは、 を隠ぺいすること( )。
詳細には、内部の実装方法(アルゴリズムやデータの実現方法)を隠ぺいし、 から見た「 」や「 」に注目する考え方やその仕組みのこと。

○プログラミングにおいて基本となる抽象化
の抽象化
与えた入力に対し、期待される出力を得る「 」を定義すること。
※このとき、それを実現するアルゴリズムや手続きの実装方法は問わない。
・処理を具体化したもの…アルゴリズムを実際に動作するように実装した

の抽象化

処理対象のデータが持つ「 」や「 」を定義すること。
※このとき、データがどのように構成されているか(具体的な変数の種類や変数と変数の関連など)は問わない。
・データを抽象化したもの…データの を示したもの
・データを具体化したもの…データの を提供する

○規模の大きなプログラムを作る上で重要なこと
がし易いこと
・プログラムを構成する部品を、 し易いように作ること

そのために重要なのは、
・処理やデータをまとまりのある機能や性質としてとらえた「 」にすること
・それらを実装する上で をはっきりさせること

☆抽象化のメリット
・処理の機能やデータの性質を「利用する人」と「実装する人」にはっきり分けることができる。(つまり、 がはっきりする)
・利用する人は、内部の を知る必要はない。
・実装する人は、その を変更さえしなければ、実装方法を自由に選択、修正、変更ができる。

これにより、プログラムを「 」として構成できる。