プログラミングって何を勉強すればいいんだろう?
このような声をとても多く見かけます。まずはHTMLかぁと文章を構造化するための言語(マークアップ言語)を学習して満足している方も昨今良く見かけるようになりました。
もちろん、Webサイトの制作を志すならそれでOKです。
まずはあなたが何を作りたいのか?を良く考えてみましょう。「え?なにを作るとかあるの?」と思った方は、こちらで詳しく解説しているので、まずはこちらから見てください。
未経験プログラミング初心者はなにから学ぶべきなのか?>>こちから
今日はWebアプリケーションやスマホアプリなど、こんなアプリを作りたい!と思っている方に向けて学習のロードマップをご用意しました。
プログラミングの学習は「学習する順番」がとても大切です。
今日はこの「学習する順番」と「おすすめする教材」をご紹介します。
C#学習のおすすめロードマップ
いきなりですが、私がおすすめするC#の習得のロードマップはこちらです。
「えーっ、こんなに学ぶことがあるの???」と思われた方もいるでしょう。
ひとつひとつはそれほどのボリュームではないため、本腰を入れれば1か月以内に完了しますので、焦らずにしっかりと学習していきましょう。
それでは、ひとつひとつの学習内容とおすすめの教材を紹介していきます。
①プログラムの制御と構文を学ぶ
ブロックを使ったブロックプログラミングで学ぶのが一番の近道です。
最初からプログラミング言語で学習してしまうと、慣れない英語や環境構築などで躓くことも少なくありません。
ブロックプログラミングは子どもっぽいと思われるでしょうか?
私たちプログラマーはこの制御をほぼ完ぺきにこなすことができます。この基礎があってこそ、プログラムを組めるようになるのです。試しに一度学習してみてください。
おすすめはScratchもしくはプロゼミです。これらのアプリは無料ですので、ぜひ一度下の練習問題にチャレンジしてみてください。
例えば
(1)底辺と長さを入力すると面積を出力するプログラム
(2)キャラとじゃんけんをして勝ち負け判定をするプログラム
この2つがプロゼミやScratchを使って作れるのなら、基礎の構文と制御がわかっているのでこの学習は不要です。
もし、ブロックを見ても動きが想像できない、そもそもどうやったら動きを実現できるのかわからない。という方はぜひこの教材で基礎の構文と制御を身につけてください。
これはプログラミング学習への第一歩です。どんなプログラミング言語を学んでいくにしろこの考え方は必要になります。
②HTML/CSSを学ぶ(Web)
Webアプリケーションを作るのにはブラウザ上でのWebサイトの知識がないと表示することができません。
HTMLはWebサイトの表示を行うタグ群です。
簡単にマスターできるのでさくっと終わらせてしまいましょう。
タグをひとつひとつ覚える必要はありません。何ができるのか?どういう仕組みでWebサイトが表示されているのかに重点を置いて学習するとよいでしょう。
これからWebをはじめる人のHTML&CSS、JavaScriptのきほんのきほん
こちらの本は基礎やWebの基本なども書いてあり、一番最初に学ぶにはとても良い本です。
JavaScriptも一緒に学べます。JavaScriptは静的なWebサイトに動きを与えるプログラミング言語です。
③言語の基礎をアプリで学ぶ
ここでは最初に学んだプログラミングの構文や制御をプログラミング言語に置き換える作業をメインとしています。ですので、最初から大きなアプリケーションに取り掛かるのではなく、小さなアプリケーションを作成できるサンプルが用意されている教材を選びましょう。
おすすめするのはこの本です。アプリケーションを作りながら①で覚えた構文や制御がどのプログラムに該当するのかを確認しながら、学習しましょう。
新・標準プログラマーズライブラリ なるほどなっとく C#入門を購入する
④Webの仕組みを学ぶ
まずは、こちらの入門書で基礎を学びましょう。
カラフルな絵や画像が挿入されており、文章だけだと飽きてしまいがちな学習ですが、良く理解できるようになります。HTTPやWebの仕組みの基礎が学習できます。毎日少しずつ読み進めていきましょう。
こちらの本はHTTPやWebの基礎について学習することができるので、一番最初に学ぶにはとても良い本です。
⑤データーベースの基礎を学ぶ
最近のデータベースの主流はRDB(リレーショナルデータベース)、KVS(キーバリューストア)とありますが、最初はRDBを学んでいきましょう。
RDBも古い技術ですので、書籍を使って学習できます。
良い書籍もたくさんあるのですが、体系的に学ぶというところに主点を置くと、OracleMasterの教書が一番のおススメです。
Oracleは有料アプリですが、試験学習に使用するデータベースは無償で提供されます。
OracleMasterは2020年1月から資格制度が変わりました。
開発者向け資格としては、OracleMasterSilverSQLがありますのでこちらで勉強しましょう。
オラクルマスター教科書 Silver SQL Oracle Database SQL
⑥Webアプリケーションを作る
ここでは、今まで学習した集大成を最大限に発揮してWebアプリケーションを作成します。
こちらの本は少し古いですが、MVCモデルを使ってWebアプリケーションを作成する方法を学ぶことができます。また、.netの最大の魅力であるEntityFrameworkについても学習できるので、この本でアプリケーションを作ってみることをおすすめします。
C#でのWebアプリケーションはかなり大きな規模になりますので、動画で学習を進められる教材もおすすめです。こちらはUdemyという学習講座のプラットフォームからおすすめするC#の講座です。
この講座も前述の本と同様ASP.NETをMVCモデルを用いて実装する方法になります。
【入門者向け】ASP.NET MVCでWebアプリ開発のノウハウを学ぼう!
私は動画の方が学習しやすい。と思うのですが個人差があるかと思いますのでご自分が「わかりやすい!」と思うほうを選択してください。
【C#】独学でのプログラミング学習のまとめ
プログラミングは学ぶことがたくさんありますが、学習する順番を間違えなければ挫折率もグンと低くなります。ぜひこの記事を参考にして、しっかりと基礎を身につけてください。
もし、気になることがあれば、私にお答えできることはなんでも回答しますので、Twitter(@onon_noriko)のDMより質問してください。