プログラミングをはじめる人へ – 2.プログラムの基本構造

投稿者: | 2019-03-31

プログラミングは好きですか?
プログラムをはじめる人へ、伝えたいこと。
はじめの記事はこちら

  1. プログラムとは (2019/03/29掲載)
  2. プログラムの基本構造 ← 今回の記事
  3. プログラマーの心得 (2019/03/31掲載)
  4. プログラムは、プログラミング言語で覚えてはならない
  5. プログラミングの学習をはじめる前に覚えておきたいこと
  6. プログラミングする前の準備
  7. さぁ、やってみよう

プログラムを構成するもの

プログラムとは、「行動の順序や内容を表すもの」です。

プログラムは
「行動の順序」を表すもの
「行動の内容」を表すもの
の 2種類で構成されます。

「行動の順序」を表すもの

「行動の順序」は「行動の内容」を
行動する順番に列挙したものです。

  1. 行動の内容A
  2. 行動の内容B
  3. 行動の内容C ..

前回の記事で例に出したプログラムの
行動の順番を表すと 以下のようになります

前回の記事で例に出したプログラム

あなたがWEBブラウザを起動し、
アドレスバーに文字を入力して検索し、
ブラウザに表示されるURLを選択して
見たいWEBサイトを開く。

行動の順番

  1. WEBブラウザを起動する
  2. 検索キーワードが掲載されたWEBサイトを検索する
  3. 検索結果から、見たいWEBサイトを指定する
  4. 指定された URLを表示する

「行動の内容」を表すもの

行動の内容は、上記でいう
「WEBブラウザを起動する」や
「検索キーワードが掲載されたWEBサイトを検索する」などを表すものです。

行動の内容は、
①入力
②処理
③出力
の 3つで構成されます。

例) WEBブラウザを起動する

①入力 > 起動するWEBブラウザ (Chrome, Firefox, Edge など)
②処理 > WEBブラウザを起動
③出力 > 画面にWEBブラウザを表示

例) 検索キーワードが掲載されたWEBサイトを検索する

①入力 > 検索キーワード
②処理 > WEBサイトを検索
③出力 > 検索結果をWEBブラウザに表示

プログラムの基本構造

プログラムは「行動の順序」と「行動の内容」を組み合わせることが
基本構造となっており、量に違いはありますが
この基本構造は変わりません。

プログラムの最小単位は「行動の内容」です。
上記「行動の内容」として紹介した例では
「②処理 > WEBサイトを検索」としていますが、
実はこれは「行動の順序」を表すものでもあります。

実は「行動の内容」を細分化すると
「行動の順序」と「行動の内容」を表したものになるのです。

「行動の内容」を細分化

「検索キーワードが掲載されたWEBサイトを検索する」という
行動の内容は 以下で構成されていました。

①入力 > 検索キーワード
②処理 > WEBサイトを検索
③出力 > 検索結果をWEBブラウザに表示

「②処理 > WEBサイトを検索」を細分化してみましょう。

行動の順序

  1. 検索キーワードが含まれるWEBサイトを検索する
  2. WEBサイトからURLとタイトル、記事概要を抽出する
  3. 抽出した文字を加工・成型する
  4. 加工・成型した文字をWEBブラウザに表示する

行動の内容 1.検索キーワードが含まれるWEBサイトを検索する

①入力 > 検索キーワード
②処理 > WEBサイト内の文字に検索キーワードが含まれているかを確認
③出力 > 検索キーワードを含む URL

行動の内容 2.WEBサイトからURLとタイトル、記事概要を抽出する

①入力 > WEBサイトのURL
②処理 > URLへアクセスし、タイトル, 記事概要の文字を抽出
③出力 > URL, タイトル, 記事概要

プログラムは基本構造の積み重ね

プログラムは「基本構造」として紹介した
「行動の順序」と「行動の内容」が
何重にも積み重なって出来ている、というのが
ご理解いただけたでしょうか。

巨大なプログラムになると
何百、何千もの処理が積み重なっていきます。

しかし、いくら巨大になっていても
この「基本構造」から外れることはありません。

この「基本構造」さえ覚えておけば、
プログラムがいくら巨大であっても
どう処理されているかを理解することは できるのです。

プログラマーの心得

プログラミングに限った話ではありませんが、
いつかは壁にぶつかります。
プログラミングをはじめると、
予想以上に早く 壁にぶつかることになるでしょう。

プログラミングを続けるために
プログラムとどう向き合うか。
次回はそんなお話を紹介します。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA