プログラミングの方法論の一つ。
プログラムの構造を階層化・抽象化し段階的に詳細化することにより、大規模で複雑なプログラムを正確に作成することができる。
例えば、それぞれ一つの機能を持ったプログラムブロックが複数あるとする。そしてこれらのプログラムブロックを呼び出すようにして利用し、別の機能を持ったプログラムブロックをまた作る。これを繰り返していき、単機能のプログラムブロックをピラミッド状に組み上げて一つのプログラムを構成する。
構成要素になっているそれぞれのプログラムブロックは、与えられたその機能を実現することだけを考えて作ればよく、プログラム全体のことは原則として考慮する必要がない。
これにより、各ブロックを複数人で分担して作成でき、しかもプログラムの再利用が可能になる、メンテナンスが楽である、など多くの利点が得られ、大規模なプログラムの作成には欠かせない手法となっている。
この手法でプログラミングを行なうためには、各ブロックの独立性が高くなければならないため、使用する言語の仕様がこの要求を満たすものである必要がある。
関連する用語

電子計算機

プログラム

プログラミング

HCPチャート