サイタプログラミングスクールC言語プログラミング入門講座神奈川 楽しめるC言語セミナー スクールブログ アルゴリズム作...

アルゴリズム作成の練習の重要性

コーチの源田です。

かなり久々のブログ更新になります。

今回は、これまでのプログラミングレッスンを通して再認識したことを記します。

タイトルにも記しましたが、それは

 ・ アルゴリズムを作る練習の重要さ

です。

アルゴリズムとは、

・コンピュータに何らかの仕事をさせる際に、必要となる材料や手続きの順番を明確にしたもの

で、料理で例えた場合のレシピにあたるものです。

ちなみにアルゴリズムは、フローチャートなどによって図面化するのが一般的です。

私のレッスンでは、このアルゴリズムを作る練習にそれなりの比重をさいております。

これができるようになって始めて、アルゴリズムをソースコードに変換するために文法を学習する、というのが本来のプログラミング学習の流れではないかと考えているからですね。

例えば家を建てる場面を考えても、道具は使えるようになっても使うタイミングがわからなければ宝の持ち腐れで、家を建てることはできませんよね。それと同じだ、ということなのです。

さて、ここまで書くと、

 ・ でも、何か作れと言われたらすぐソースコードをスラスラと書き始める人だって、いるじゃないか

と反論されるかもしれません。しかし、そのような人は言われた瞬間にアルゴリズムの作図を「頭の中でできている」のです。

ごく一部の天才と称される人は、練習せずにはじめからできるのかもしれません。しかし、多くの人は繰り返し練習をしてきているはずです。

文法面はひと通り学習しても、ソースコードの実装に苦戦されている皆さん。ぜひ一度、アルゴリズム作りを練習する体験をしてみませんか。


今回のブログの要点は、ここまでです。以下、興味を持たれた方は是非ご覧ください。


ここからは、プログラミング教育に対する現状を個人的に分析・考察したものです。

現状の日本でのプログラミング教育を見聞きする限り、相変わらず以下の思想的な傾向があるように考えています。

 ・ プログラミング言語の文法さえマスターすれば、それなりのプログラム(正確にはソースコードですが)を作れるようになる

2020年度から小学校で、また時期は不勉強で不明ですが中学・高校においてもプログラミングを含めた情報技術の科目が必須となります。

ただし上記の傾向に基づく教育方針のままだとすると、すぐに破綻しそうという危機感を抱いています。

それは、前述したアルゴリズムを作るスキルの重要さの認知度が低いと認識しているからです。

そうなると、

 ・ アルゴリズムを作る練習を指導できる教員がどれだけいるのか
 ・ アルゴリズムを作る練習を、どのように・どの程度カリキュラムに組み込めるのか

他にもあるかもしれませんが、少なくても上記の懸念が出てきます。

私の受け持つ生徒さんの中にも、プログラミングスクールに通っている方々が何人もいらっしゃいます。

ただプログラミングスクールでは、(ある程度の人数を1クラスに抱えているのでやむを得ない一面はあるでしょうが)文法面を多少教えたらすぐに応用問題の課題を出す傾向にあると感じました。


繰り返し記しますが、道具の使い方をマスターするだけでは不十分です。プログラミングに最低限必要なのは

 (1) 文法に関する知識
 (2) アルゴリズムの作成スキル

上記2つのスキルであることを、プログラミングに興味を持たれた皆さんは是非認識しておいてください。

 

(2018年10月15日(月) 14:36)

前の記事

次の記事

新着記事

コーチの源田です。 今回は、C言語の制御文について記します。 他のプログラミング言語でもそうですが、制御文は前回と前々回の投稿で記したアルゴリズムの基本構造の  ・ 選択構造  ・ 反復構造 をコードで表現するためのものなのです。 ここでC言語の場合における...

コーチの源田です。 フローチャートの部分図紹介。今回は、残りの反復構造になります。 (3) 反復構造 (3-a) 周回数重視 添付画像の1枚目の図が、周回数重視の反復構造の部分図になります。 繰り返したい処理構造の範囲を、上向きと下向きの台形のような図形でくくる感...

コーチの源田です(今回はそんなに間隔空かなかったです 笑) 前回の投稿では、アルゴリズムの基本構造を紹介しました。 今回は、それらをフローチャートにする際に用いる部分図を紹介しましょう。 掲載可能な画像の枚数が1記事3枚までのようなので、今回は順次構造と選択構造を取り上げます...

コーチの源田です。 前回(またしても間が空きましたが...)の投稿で、アルゴリズムとは何ぞやといった内容を扱いました。 今回は、アルゴリズムの基本構造について記します。 アルゴリズムはどんな複雑なものであっても、以下に記す基本構造を組み合わせれば、作成することができます(この...

コーチの源田です。 かなり久々のブログ更新になります。 今回は、これまでのプログラミングレッスンを通して再認識したことを記します。 タイトルにも記しましたが、それは  ・ アルゴリズムを作る練習の重要さ です。 アルゴリズムとは、 ・コンピュータに何ら...

レッスン無料相談窓口のご案内

サイタでは、C言語レッスンに関する疑問に
専門カウンセラーがお電話にてご案内しております。
お気軽にご利用ください。

お電話相談窓口はコチラ

ブログ記事 ページ先頭へ