プログラミングを使って学ぶ
英語やプログラミングの教育 / 学習の重要性が広く知られるようになって久しいです。
英語を使って何かを学ぶことで、
学ぶ対象の習得に加え、英語を鍛えることができ一石二鳥です。
実際に、世界で英語力が高いとされる英語が母語ではない国
では、高等教育をはじめ色々な場所で英語を使っての学習が浸透しています。
英語を学習 → 英語で学習
の意識の違いは大きいと感じます。
どちらも結果的に英語を学習することにはなるのですが、第一の目標を英語以外にすることで、無意識に英語に触れる時間が長くなり、学習対象+英語と両方の学習が進みます。
今日は、この世界的にはよく用いられている「英語で学習」スタイルを、
プログラミングの学習に適用するとどうなるか、という話です。
プログラミングを学習 → プログラミングで学習
ということです。
具体的に、
- 数学や論理的思考
- 英語
- 芸術
という3つとの組み合わせで見ていきます。
数学や論理的思考
まずは、数学や論理的思考について、プログラミングで学習する場合です。
数学 / 論理的思考とプログラミングはとても相性が良いです。
数学については、
- 線形代数
- 微分積分
などから、統計・確率といった周辺領域まで、プログラミングを使うとより理解しやすいというケースがあります。
プログラミングにより、図や動画を簡単に作成できるため、イメージするのが難しい数学の概念や計算結果を視覚的に確認できるようになります。
結果的に、数学の考え方や概念が学びやすくなる場合があります。
日本語の教材の場合は書籍が充実しています。
- 『プログラマの数学』結城 浩 著
- 『プログラミングのための線形代数』平岡 和幸、堀 玄 著
- 『プログラミングのための確率統計』平岡 和幸、堀 玄 著
などが知られています。
論理的思考については、特にアルゴリズムの点からプログラミング学習とかけ合わせることができます。
アルゴリズムとは、簡単に言えば、コンピュータが何か計算する時の一連の手続きのことです。
このアルゴリズムをプログラミング言語で書き、コンピュータに計算させるという流れの中で、論理的思考を伸ばす機会があります。
- アルゴリズム自体を考える
- アルゴリズムをプログラミング言語で書く
などの場面で、論理的な考え方が必要になるからです。
といったWebサイトでアルゴリズムについて学ぶことができます。
書籍では、『なっとく!アルゴリズム』アディティア・Y・バーガバ 著
が知られています。
英語
プログラミング × 英語、もとても学びやすい組み合わせです。
プログラミングを使いつつ、英語を学習する時には、
- 教材が豊富
- プログラミング言語には、英語との共通点がある
などのメリットを享受できます。
基本的には、インターネットでWebの記事や動画教材を探すときに、プログラミング × 英語で見つからないテーマはあまりないくらい充実しています。
- プログラミング言語の基本的な構文
- Web開発
- ゲーム開発
など幅広い分野で多くの英語教材があるため、
自分が伸ばしたい英語の能力
- Reading
- Listening
などに注目して、適した教材を選べることは多いです。
英語のプログラミング教材の豊富さは本当に目を見張るものがあります。
例えば、先に紹介した数学やアルゴリズムの学習について、
VisuAlgoは英語に対応しています。
また、
という英語のYouTubeチャンネルでは、無料で数学とプログラミングを学習できます。
英語の教材まで範囲に入れると、
- 数学 × 英語 × プログラミング
- アルゴリズム(論理的思考) × 英語 × プログラミング
という学習が可能になります。
また、プログラミング言語自体、英語の影響を強く受けているので、その点からもプログラミング × 英語は親和性が高く、学習の相乗効果が期待できます。
芸術
プログラミング × 芸術、という学び方もあると思います。
プログラミングと芸術の関係について説明されている動画があります。
芸術活動が主目的の一つであるプログラミング言語Processingも登場しています。
また、JavaScriptやPythonを使った作品を確認することができます。
- 絵画や動画
- 音楽
- アニメーション
- 写真や映像の加工や編集
など色々なテーマについてプログラミングとかけ合わせて学習できます。
具体的な組み合わせとしては、例えば
などがあります。
上記の例のように、学びたいプログラミング言語 × 学びたいテーマで選ぶのも良いかもしれません。
学習のツールとしてのプログラミング
ここまで見てきたように、
プログラミング × 〇〇、の選択肢は色々あります。
- プログラミング学習に行き詰まっている
- 自分にはプログラミングは難しそうだ
という時でも、自分が習得したいもの、興味があること
とかけ合わせることで、プログラミング学習を続けられることがあります。
今日は、
- プログラミング × 数学 / 論理的思考
- プログラミング × 英語
- プログラミング × 芸術
という具体例でしたが、何か気になるものがあれば、是非プログラミングとかけ合わせて、
「プログラミングで学ぶ」を試して見てください。
プログラミング学習を新しい視点から捉えることができるかもしれません。
コメント