---------------------------------------------------------------------

next up previous contents
Next: 目次 Up: PAD manual ( pad2ps Previous: PAD manual ( pad2ps

---------------------------------------------------------------------

はじめに

pad2ps シリーズは、プログラムのPAD図を描くためのツールである。

PAD (Problem Analysis Diagram) とはプログラムの流れや構造を図示したもの で、同様なものにフローチャートがある。

フローチャートは世界的に有名で、広く一般にも広まっているが、それはフロー チャートの書きやすさが原因であろう。 ところがこのフローチャートは、プログラムの処理の 流れ を考える上で は大いに役に立つのだが、アルゴリズム、特にC言語のような構造化プログラミ ングでのアルゴリズムを表す、という目的には向いていない。 その理由は次のとおりである。 まず第一に、フローチャートを理解するには、始めから順に流れに沿って追って いかないといけない、ということがある。これは、大きなプログラムになった場 合、全体を理解する上で障害となる。 第二に、フローチャートは構造を表すことができないので、同じアルゴリズムでも、 例えばたった1つのループでも、人によって描き方が大きく異なるということも ある。逆に言えば、2つの図の形が同じように見えても、片方は分岐でもう一方 はループになっていたということもある。これはアルゴリズムを図示する上で致 命的な欠点である。

一方、PADはアルゴリズムの構造を表すための図である。フローチャートとの大 きな違いは、反復や条件分岐などの 構造 を明確に表すことができる点で ある。 このPADを描くためには自分自身でアルゴリズムを理解していないといけないた め、フローチャートのように手軽に書く訳にはいかない。しかし、アルゴリズム を他者に示す時には、フローチャートに比べて、その処理と構造をより容易に理 解してもらうことができる。

結論として、フローチャートは GOTO のある BASIC のような言語のプログラム を図示するのに向いているが、C のような構造化プログラミング言語を表すのに は、このPADの方が向いていると言える。 特に、本やレポートなどでアルゴリズムの紹介をする際や、後の保守のために自 身のプログラムの図をとっておこう、というような場合が、このPADが最も役に 立つ場面である。

pad2ps シリーズは、このようなPAD図をドローツールを使わずに、テキス トベースで簡単に描くためのツールである。 元となるファイルは、PADEL(PAD Expression Language)というC言語に似 た文法に従って書く。 また、C, C++, Bourne shell, C shell, Java, AWK のプログラムのPAD図を直接 プログラムから描かせることもできる。 出力形式は PostScript、LaTeX、Encapsulated PostScript (EPS) の3種類で ある。

この pad2ps シリーズの製作にはたくさんの方が御協力下さった。 倉持 聡氏には LaTeXのスタイルファイル pad.sty を使わせて頂いただ けでなく、pad2tex の開発中にもデバッグ、改良などをして頂いた。 加藤 淳也氏には日本語化に際してなど、初期の頃の製作全般に渡っていろいろ と協力して頂いた。 井口 誠氏には pad2ps シリーズの英語版作成、マニュアル等の英訳をし て頂いた。 小副川 尚氏、藤井 大輔氏、三川 浩士氏にはいろいろと有益な助言を頂いた。 それらの中にはまだ実現していないこともあり、今後の課題である。 その他にも、実にたくさんの方々からバグ情報、修正、改良案などを頂いた。 改めて感謝の意を表したい。

1996年11月2日
吉田 誠一

---------------------------------------------------------------------

プログラムのPAD図自動描画ソフト pad2ps に戻る。
吉田 誠一のホームページ に戻る。
Copyright(C) Seiichi Yoshida (comet@aerith.net). All rights reserved.
Sat Nov 9 21:27:17 JST 1996