トップダウン設計とボトムアップ設計
トップダウン・プログラミングは、従来的な手続き型言語で主流とされるプログラミング手法である。まず複雑な部品の設計が行われ、それをもっと細かい単純な部品に分割し詳細化していく。最終的に各部品がコーディングできるほど詳細化された時点で、プログラムを書き始める。これは、C++やJavaのようなオブジェクト指向言語で主流とされるボトムアップ・プログラミングの対極にある。
トップダウン・プログラミングでは、まずメインの手続きを書く。その中には必要とされる関数名が登場する。その後、登場した各関数の実体を書いていく。これを、全関数を書き上げるまで繰り返す。各関数(サブルーチン)の機能は可能な限り小さくされるので、そのコーディングも単純でコード自体も小さくなる。
ボトムアップ・プログラミングでは、一部の機能を選び、それを実装したコードをまず作成する。そのような単機能のコード群を書いた後で、それらを組み合わせて全体を構成していく。