IT用語

疑似コード・疑似プログラミングって何?言葉の違いも調べてみたよ

takahide

おはようございます。タカヒデです。

プログラミングを学んでいると、「疑似コード」「疑似プログラミング」という言葉をよく見かけませんか?

「見かけない?そうですか…でも私は見かけるんです。」

何となく「コードっぽい何か」というイメージはあるものの、「そもそも何だ?」「この2つって同じ意味?」そんな疑問を持ったんです。

ということで、この記事では「疑似コード・疑似プログラミングについて、概要や使い方」などを解説していきます。

こんな人にオススメ
  • 疑似コード・疑似プログラミングについて知りたい
  • 疑似コード・疑似プログラミングを活用した開発を行いたい

疑似コード・疑似プログラミングとは

疑似コード・疑似プログラミングとは、実際にコードを書くのではなく、日本語などの自然言語で処理の流れを説明するための書き方です。

実際に見てみるのが分かりやすいです。
例えばこんなのとか。

#ユーザーの年齢を確認する

  #18歳以上ならログインを許可する

  #18歳未満ならエラーを表示する

こんなのがあります。

if age >= 18:
    ログインを許可
else:
    エラーを表示

この疑似コード・疑似プログラミングは、プログラムを書く前に「どんな順番で、どんな判断をするのか」を整理するために使われます。

コンピュータではなく「人に伝えるための表現」だと理解しておきましょう。

なぜ疑似コード・疑似プログラミングが必要なのか

では、なぜ疑似コード・疑似プログラミングが必要なのでしょうか?

いきなりソースコードを書くと、初学者ほど次のような状態に陥りがちです。

  • 文法が分からず手が止まる
  • 処理の流れが頭の中で整理できない
  • 書き直しが多くなる

そこで、先に疑似コードや疑似プログラミングで考え方だけを言語化しておくことで、以下のメリットがあります。

  • やるべき処理が明確になる
  • 実装がスムーズになる
  • ミスや修正が減る

誰かに教えてもらわずとも、自然とやっていた方も多いのではないでしょうか。

疑似コード・疑似プログラミングは何が違うの?

「疑似コード・疑似プログラミングは何が違うのか…」これは私が疑問だった部分です。

調べたところ、疑似コードと疑似プログラミングに明確な線引きはなさそうです。

現場や記事によってはほぼ同じ意味で使われています。
そのため、「これはどっちの言葉を使うべきか?」そんなことを悩みすぎる必要はありません。

ただ、実際の開発現場では「疑似コード」と呼ぶことが多そうなので、「疑似コード」という言葉を使っておけば間違いはないでしょう。

疑似コード・疑似プログラミングを活用した開発の流れ

最期に、疑似コードから実際のコードに落とし込む流れを簡単な例で見てみます。

STEP1:自然言語で考え方を整理

まずは自然言葉で処理を整理します。

#ユーザーの年齢を確認する

  #18歳以上ならログインを許可する

  #18歳未満ならエラーを表示する

この段階では、プログラミング言語は一切意識せず、どういった構成で処理をするのかを表現しましょう。

STEP2:プログラム構造を意識した疑似コードにする

次に、プログラム構造を意識した疑似コードにします。

if age >= 18:
    ログインを許可
else:
    エラーを表示

完全な自然言語だったものを、一部プログラム構造にしています。
この時点で、条件分岐の形がはっきりしたことが分かります。

STEP3:ソースコードに変換する

最後に、実際に動くコードへ落とし込みます。

if age >= 18:
    print("Login OK")
else:
    print("Error")

疑似コードで整理できていれば、実装は「翻訳作業」で済むことがポイントです。

まとめ

以上が、「疑似コード・疑似プログラミング」についての解説でした。

まとめ
  • 疑似コードとは、実際にコードを書くのではなく、日本語などの自然言語で処理の流れを説明するための書き方
  • メリットはやるべき処理が明確になり、実装がスムーズになること
  • 疑似コードと疑似プログラミングに明確な線引きはなく、「疑似コード」を使っておけばOK

ぜひ、開発時にこの考え方を取り入れてみてください。

お疲れさまでした。

ABOUT ME
タカヒデ
タカヒデ
ITを楽しく勉強中
通信会社の企画職で働く30代 非エンジニアでありながら半分趣味でITエンジニアリングやプログラミングを学習中 IT初心者が楽しいと思えるように発信することを目指しています ↓Xもやっているのでフォローしてね
記事URLをコピーしました