プログラミングを学習するときに、そもそもプログラミング言語が多くてびっくりされる方も多くいらっしゃいます。

結局、どのプログラミング言語を学んだらいいんでしょうか・・・
こんな相談を良く受けます。
そんな人に私がいつもおすすめしているのは「プログラミング学習のロードマップ」です。
プログラミングを学習するには、学ぶ順番がとても大切です。
今日は私がおすすめしている「プログラミング学習のロードマップ」の中の「③言語の基礎をアプリで学ぶ」について詳細に説明していきたいと思います。
「その1 プログラムの制御と構文を学ぶ」についての解説はこちらの記事を参考にしてください。

【勉強法】プログラミング習得のためのロードマップ【その2】

プログラミング学習のロードマップ
プログラミング学習のロードマップについてはこちらの記事でも詳細に書いています。

ここでは簡単に説明しましょう。
「こんなにたくさん学ぶことがあるの!!」と驚かれることも少なくありません。プログラミングは現在では「情報学」という学問の1つですのでしっかり学ぼうと思うとかなりボリュームが大きくなります。
しかし、ここではあくまでも職業として、またはプログラムを実装して動かせる程度になることを目標としたロードマップですので、1つ1つはそれほど深くない学習レベルで充分だと考えています。
ここでは、「③言語の基礎をアプリで学ぶ」について詳細にお話ししたいと思います。
なお、「①プログラムの制御と構文を学ぶ」はすでに学習を完了している前提でお話を進めます。
③言語の基礎をコンソールで学ぶ
「①プログラムの制御と構文を学ぶ」ではブロックプログラミングを使ってプログラミングのアルゴリズムを学習しました。
このような基礎の制御と構文をブロックで学習しながら、「構文」「制御」と同時に「処理」についても学習します。
ブロックプログラミングで学習すると、様々な動作をこのフローチャートのように「処理に分けて」考えることができるようになります。
今度は、その動作を実際にプログラミング言語に落とし込んでいきます。
左はブロックで記述したプログラム、右はC#で記述したプログラムです。
どちらも同じ動きをします。
このようにブロックプログラミングで学習した「考え方」をプログラミング言語に落とし込んでいく作業が必要です。
その際に使用するプログラミング言語は私は「なんでも良い」と思っています。
しかしながら環境設定などが簡単である方が良いでしょう。
そこで私はC#を良く勧めます。なぜならC#はVisualStudioCommunityをインストールするだけで使い始められます。これはWindowsもMacも同様です。
初心者のうちはプログラミングの開発環境を整えるだけで心が折れてしまうことも多々あるでしょう。
私たちプロでさえ、環境設定は面倒です。時には情報が少なく、未知のエラーに心折れてしまうこともあります。
私たちプロはまだ誰かに聞ける。もしくはこれまでの経験上、解決する手段を持っていますが、これから学習を始めるみなさんにはなかなかハードルの高いものであることを知ってほしいのです。
ですから、「簡単に環境を作れる」プログラミング言語を選ぶことが重要になってきます。
どんな方法で学ぶのか?
プログラミングは学ぶべきことが幅広くそしてそれなりの深さを要求されます。
ですが最初からすべてを学習しようとすると必ず挫折します。
まずは階段を上がるように一歩一歩、一段ずつ進んでいきましょう。
地道な作業で心が折れそうになるときもありますが、学習したことは決してあなたを裏切りません。毎日少しずつでも学習すれば、必ず「あ、プログラミングできている」と思える瞬間がきます。
どんな学習でも一足飛びに身につけることはできません。ぜひ、「楽しみながら」一歩ずつ進んでください。
どんな教材を選べばよいのか?

わかった!!じゃぁ一歩ずつ頑張る!!
じゃぁどんな教材がいいのかな?
教材選びはとっても重要です。
まずはブロックプログラミングで学習した「プログラミングの処理」を「プログラミング言語で書ける」ようになるような練習問題があるといいなぁと常々思っていました。
ところが、そのような教材を探しても見当たりません。
ですので、これまでに初学者への教育やプログラミングスクール、専門学校での講師の経験を活かしながら自分で作ってみました。
こちらは、Udemyで私が公開している初めてプログラミングを学習する方に向けた講座となっています。
紹介のレクチャーでもお伝えしておりますが、この講座では「クラス」や「オブジェクト」「インスタンス」など、C#のベースとなる部分については全くと言っていいほど触れません。
なぜかというと「まずは基礎構文をC#で書くことができるようになる」ことを目的としているからです。
基本的な制御や構文を描くことができた後に概念やオブジェクト指向などの情報について学習しても決して遅いとは思いません。
この講座では、「簡単な動作をプログラミング言語で書ける」ことを目標にしています。
また、私のTwitterにDMをいただければ割引チケットをお出しすることも可能です。(制限があるので出せない月もあります。)
なんもわからん。イチからしっかり学習したい。挫折しちゃったけどリトライしたい。などなど、私はプログラミングを学びたい人を応援しています。
ぜひ、この機会を上手に活用してみてくださいね。
プログラミング言語で動作を書けるようになったら、こちらの本もおすすめです。
新・標準プログラマーズライブラリ なるほどなっとく C#入門を購入する
この本では、講座では説明していない「クラス、インスタンス」やオブジェクト指向の概念などもしっかりと説明されています。
最後に
私はシステム開発会社を経営する現役のエンジニアである傍ら、プログラミングスクールも運営しています。また、専門学校の非常勤講師としても教えていますが、自分自身、この教材を利用して生徒にプログラミングを教えています。
教えながら気づきもたくさんあるんです。ですから、この教材は日々更新しています。
これはわかりにくいかな?もう少しここは深堀しようかな?などなどを少しずつ盛り込んでいくことで、よりわかりやすい教材にしていきたいと考えています。
プログラミングは身につけにくい学問・技術ではありますが、とても興味深い技術であることも事実です。
そしてその技術はプログラマーとしての仕事以外に就いたときにも必ず活かされます。
ここまで散々、難しい、一足飛びにはできない、などなど厳しいことを書き連ねましたが、私のモットーは「楽しく学ぶ」です。試しに学習していただきたいのですが、自分で作ったプログラムが動くことは本当にワクワクします。そして、そのワクワクを皆さんと共有できるようにたくさん工夫しています。
学習し終わったかたは、こちらの記事で次に学習するおすすめなどを書いていますので参考にしてください。

ぜひ「楽しく」「しっかりとした」技術を身につけてください。