無料サンプル
2018年12月、Amazon『究極のプログラム設計図 PAD解説』の無料サンプルについて紹介します。
本屋で本を購入するときは「はじめに」と「目次」を確認し、パラパラとめくって読みやすい本かどうかを確認してから購入します。電子書籍の場合は、紙の本と違って中身の確認ができないので、本の紹介文などにより、購入するかどうかを判断することになります。
Amazonの電子書籍は、「無料サンプル」という機能があります。この機能は、書籍の10%程度を無料でダウンロードすることができます。
PAD解説書の無料サンプル
『究極のプログラム設計図 PAD解説』の無料サンプルは、「はじめに」と「目次」と「第1章の途中まで」が含まれています。
この本は、どんな内容か無料サンプルをダウンロードしてみてください。
以下、本書から抜粋します。
はじめに
本書の位置づけ
本書は、究極のプログラム設計図『PAD』について記載したもので、主な内容を下記に示します。
- 構造化プログラミングの概念
- いろいろな構造化チャートとPADの比較
- PADの記法と活用例
PADは、プログラムの論理的な構造(プログラムロジック)を木構造のように現した究極のプログラム設計図です。プログラムの詳細設計をPADで書くことにより、バグの発生を未然に防ぐことができます。
さて、あなたは構造化チャートによるプログラム設計図法について知っていますか。構造化チャートを知らない人でも、一度や二度はフローチャートを見たことがあると思います。本書では、進化したフローチャートといえる構造化チャートの中で、最も使いやすいPADについて解説します。
例えば、あなたが日曜大工で本棚を作るとします。木材をカットする前に、大ざっぱなスケッチでもかまいませんが設計図面を書くでしょう。そして、その設計図面に従って木材をカットして組み立てるでしょう。日曜大工と同じでプログラムを作成するとき、プログラムロジックを設計します。そのとき、使って便利なのがPADです。
本書の主な対象読者
本書は、図1に示すような読者を対象としています。
- ソフトウェア技術者をめざして情報技術を学ぶ学生
- 経験の浅い新人のソフトウェア技術者
- システム開発に参画するベテランのソフトウェア技術者
情報技術を学ぶ学生は、ぜひともプログラムの詳細設計で役に立つPADを使いこなして、良いプログラム設計ができるようスキルを磨いてください。
また、経験の浅い新人技術者は、複雑なプログラムロジックを作りデバッグで苦労したことはありませんか。PADによりひと手間かけてプログラム設計をしてみましょう。きっと、良いプログラムを作成できるようになります。
そして、ベテラン技術者は、経験を活かして良い設計をしていると思います。しかし、プログラムの詳細設計をせずに、いきなり端末の前でソースコードを書いていませんか。自分の技術力を過信せず新人の頃を思い出してPADにより慎重にプログラムのロジックを設計してみてください。
本書について
構造化チャートのひとつであるPAD(Problem Analysis Diagram)は、日立製作所の二村良彦さんが考案したもので1980年代に普及しました。PADは素晴らしいプログラム設計図です。当時は、PADを解説した技術情報誌や書籍がありましたが、最近では入手が困難になってきました。
PADでプログラム詳細設計をしようとしたとき、参考になる文献がほとんどありません。私は1982年ぐらいからPADを使い続けています。私のソフトウェア技術者人生で培った知恵や経験が誰かの役に立つと考え、PADについての本書を書くことにしました。
本書の目的
本書の目的は、2つあります。
第1の目的は、PADを読めるようになることです。PADで書いたアルゴリズムの理解は比較的容易です。究極シリーズにおいて、いろいろなアルゴリズムを紹介する予定です。例えば、拙著「超最速ソートアルゴリズム解説」[1]では、いろいろなソートアルゴリズムをPADで解説しています。
第2の目的は、PADでプログラムのロジックを設計できるようになることです。PADは2次元に広がる図面なので、プログラムの理解に人間の持つパターン認識能力を活用できます。PADに慣れてくると、図面からプログラムのロジックが浮かび上がり、プログラム構造を見渡すことができるようになります。
本書の構成
本書は下記に示す章から構成しています。最初から読み進めることを推奨しますが、目的によっては部分的に読むことも可能です。PADの書き方を知りたい場合は、第5章「PAD解説」を読んでください。
第1章「ソフトウェア爆発」では、複雑で高度化したソフトウェアを開発するために、設計の心構えなどについて説明します。
第2章「使えないフローチャート」では、フローチャートについて考察します。レガシーな開発スタイルでは、フローチャートでプログラムのロジックを考えていました。しかし、フローチャートは処理の流れを矢印でつないだ流れ図なので、複雑なロジックを考えてしまう傾向があります。
第3章「構造化という道具」では、構造化プログラミングについて解説します。理解しやすいプログラムロジックにするための制御構造の簡素化や階層化、段階的詳細化の概念について説明します。
第4章「構造化チャート」では、構造化チャートについて解説します。構造化チャートはいろいろな組織から提案されました。構造化チャートを比較するために簡単なサンプル問題をそれぞれの構造化チャートで書いてみます。
第5章「PAD解説」では、素晴らしいPADについて解説します。PADの表記方法からPADの特徴について解説します。そして、ちょっと複雑な処理をPADで書いてみます。
第6章「PAD活用アラカルト」では、PADの活用例としていろいろなアルゴリズムをPADで書いてみます。興味を持ったアルゴリズムから読んでください。さらなるPADの魅力を発見していただけたら幸いです。
目次
はじめに
第1章 ソフトウェア爆発
1.1 複雑化するソフトウェア
1.2 ソフトウェア工学の知恵
1.3 必要な機能だけ作れ
第2章 使えないフローチャート
2.1 レガシーな開発スタイル
2.2 わかりにくいフローチャート
2.3 フローチャートの欠点
2.4 近年の開発スタイル
第3章 構造化という道具
3.1 ダイクストラは語る
3.2 基本制御構造
3.3 階層化
3.4 段階的詳細化
3.5 パラダイムシフト
第4章 構造化チャート
4.1 フローのJIS規格
4.2 構造化チャートいろいろ
4.3 やっぱりPADが好き
4.4 フローチャートの批判
4.5 PADは役に立つか
第5章 PAD解説
5.1 PADとは
5.2 PAD表記法
5.3 段階的詳細化
5.4 PADの実行順序
5.5 PADの特徴
5.6 PADによるコーディング
5.7 わかりやすいPAD
第6章 PAD活用アラカルト
6.1 サーチアルゴリズム ・・・ 線形探索 , 二分探索
6.2 ソートアルゴリズム ・・・ 挿入ソート , 選択ソート , 交換ソート
6.3 乗算・除算アルゴリズム ・・・ 整数乗算 , 整数除算・剰余
6.4 画像処理アルゴリズム ・・・ 画像膨張 , 画像収縮
6.5 事務処理アルゴリズム ・・・ ブレーク処理 , 印刷・合計処理 , マッチング処理
おわりに
参考文献
著者紹介