【勉強日記】タッチタイピングを作ろう①【第8回】

プログラミング

はじめに

今回の記事からは、実際にプログラムを作成する実践編に入っていきます。

これまで学習した内容を生かしながら、つまずきやすい部分(実際に筆者がつまずいた部分)を中心に解説していきます。細かい文法よりも、初歩的なプログラムを作成するうえでの考え方などを取り扱っていきます。

もくじ

  • 概要 (はじめに) 
  • 実践編にうつるまえに・・・目的と前提の話
  • 今回作りたいプログラム・・・タッチタイピングとその仕様
  • 仕様をしっかり考えよう
  • さっそく計画を立てる!下準備をしよう
    • ①大枠を考えて流れを作ろう・・・順接 条件分岐 ループ を思い出そう
    • ②部品を考える・・・どんな関数が必要?
    • ③スケッチをしてみる・・・図に起こしてみる
  • まとめ

実践編にうつるまえに・・・目的と前提の話

実践編にうつるまえに、実際にプログラムを作成する目的と、プログラムの作成環境について解説します。

プログラム作成の目的

プログラミング未経験の筆者が、プログラム作成で最もつまづいた部分が「プログラムを作るうえでの考え方がわからない」ことです。

未経験者向けでわかりやすい教本はたくさんありますが、プログラミングの文法が理解できても、どのような流れで作成していくのかビジョンが全く見えないことが多々あります。

実践編では、プログラム作成の根本的な考え方をメインに解説していきます。

プログラム作成環境について

実践編では、プログラミング言語はpython、環境はvisual studioを用いてプログラムを作成していきます。また、書いたコード(プログラム)等はスクリーンショットで補足説明をする場合があります。

作りたいプログラム・・・タッチタイピングとその仕様

今回作成していくプログラムは「タッチタイピング」です。

表れたランダムな文字列と同じ文字列を打ち込み、その正確さと速さを確認できるタイピング練習用プログラムです。文字を打ち込むと、文字列の一致率と打ち込むまでの時間が表示されるものになります。

どんなプログラムにするか?という仕様を考えるときは、実際に使用している状況を想像すると「このあと何するんだっけ?」「こういう場合の処理は?」というような抜け漏れが減ります。今回入れたい機能をまとめると以下になります。

①プログラムを開始すると「同じ文字列を入力してください!」の文とランダムな文字列が表示される

②文字列を入力し、enterを押すと文字の一致率とかかった時間が表示され、練習を続けますか?の表示が出る

③続けますかでyを打ち込んでenterを押すと「同じ文字列を入力してください!」とランダムな文字列が表示される(①の繰り返し)

④続けますかでnを打ち込んでenterを押すと「お疲れ様でした!」と表示されてプログラムが終了する

⑤続けますか?でy/n以外を押すと「続けますか?」の表示が出る

さっそく計画を立てる!下準備をしよう

大枠を考えて流れを作ろう

・これまでの過程を思い出す・・・順列 分岐 ループで考えてみる

仕様を決めたら、プログラムの大きな流れを考えてみます。

勉強ブログ第1回「プログラムって何?」で学んだ大まかな流れを思い出して、フローチャートを書き出してみます。こうすることで、箇条書きでは分からなかった枠組みが見えやすくなり、実際にプログラムを書いていく順番が理解しやすくなります。

最初はこのフローチャートを書くのにも慣れが必要ですが、分解して考えていくくせをつけると次第に慣れていきます。

部品を考える

・どんな関数が必要?

次に、各段階でどういった処理が必要かを書き出してみます。例えば、「文字列と文字列の一致率を出す」「文字を入力するのにかかった時間を計算する」などの処理はすぐに書くのが難しそうな処理です。これらの処理はひとまとめの関数として、あとで中身を考えることにします(こちらは次回解説します)。

これらは部品と考えるとよいです。部品は部品、で考えることで、全体の見通しを失わずにプログラミングを進めることができます。

スケッチをしてみる

・①と②をまとめて図にしてみよう

大まかな流れと部品を考えたら下準備ができました。①と②をあわせてスケッチに起こしてみたり、表としてまとめると理解しやすくなります。

まとめ

どんなプログラムにしよう?という仕様を考えるとき、実際に使用している状況を想像すると「このあと何するんだっけ?」「こういう場合の処理は?」というような抜け漏れが減ります。

仕様を考えたら、プログラムを作成していくうえでの下準備をしていきます。

まずはプログラムの大きな流れを確認し、つぎに各機能について考えていきます。プログラムの大きな流れを確認するときは順接・条件分岐・ループのプログラムの基本にあてはめて整理していくと理解しやすいです。

各機能について考えるときは関数にまとめることを考え、ひとつの部品として扱うと後に修正する場合も混乱がありません。これらの作業が完了したら、スケッチやフロー図としてまとめると下準備は完了になります。

今回は初歩的なプログラムを作成する場合の下準備や作成のさいの考え方について解説しました。次回からは作成するプログラムの機能など、より細かい部分についての作成手順を考えていきます。

ここまで読んでくださってありがとうございました!

コメント

タイトルとURLをコピーしました