プログラミングの入門者に捧ぐ!勉強するメリットとオススメ言語について!
スポンサーリンク
「プログラミング興味あるけど勉強しても意味あるのかな?」
「仕事に関係無いし、勉強しなくてもいいかな」
そんな人にこそ読んでもらいたい!
大人こそプログラミングを勉強するべきなのです。
しかも、若手のうちにする方法が絶対良い!
プログラミングを勉強すると何の役に立つのか、そして学ぶなら何の言語が良いのか
この2点をお話しします。
(出典:https://eiga.com/movie/55273/)
僕のはなし
僕の情報を書いておくと、国公立大学理系の情報学部を卒業しました。
元々パソコンを使うのは、iTunesとYoutubeを使っているくらいでした。
しかし、完全初心者からスタートし、最終的に4言語を使えるまでに。
「大学で学んだことは世間に出て1つも役に立たない」と言われますが、僕はかなり役に立っています。
もうプログラミングはしていませんが、この時に培った思考法や勉強スタイルが未だに生きているという感じです。
これから話すのは、テクニカルな話ではなく、学ぶとこんなスキルを養うことができますよというものです。
ちなみに、プログラミング的にオススメな映画は「ソーシャル・ネットワーク」!
映画として面白いのもさることながら、プログラミング界のスーパースター・マークザッカーバーグの人生を堪能できます。
プログラミングを勉強するメリット
論理的思考が身に付く
論理的思考力を獲得できるのが、まずは大きなメリット!
そもそもコードを書く際は、大事なのは並び順。
処理順に上からコードを書いてあげないと実行できません。
プログラミングのコツとして、まず作りたいアルゴリズムの全体枠を把握します。
課題が出ているなら、その課題を解決するプログラムの全貌をイメージするのです。
そして、いきなりプログラムを書くのではなくまずはノートに雑でもいいので書きだします。
きれいに書かなくてもいいです、思考の整理ができればOK。
そして、そこから実際に書き始めます。
論理的思考が鍛えられるというか、論理的なコードを書かないと、完成しないのだから、ほっておいても論理的になりますよそりゃ。笑
これ結構日常にも良い影響がでます。
会話の際に、話す順序とか自然に洗練される!
Aの話をしないと、Bの話には移れないなみたいな思考が勝手にできるようになります。
トライ&エラーが身に付く
これが正直一番醍醐味です。
高校受検・大学受験などで、試験を終えた後、「受かったかな、どうだったかな?」と
悶々としますよね。
その時、恐ろしく結果が知りたい、それがすぐに分かる感覚が味わえます。
まず、手順として、コードを書く。
そして、そのコードで実行できるか検査にかけるわけです。
そして、エラーが出たらここのコードの部分がおかしいよとフィードバックが返ってくるわけです。
ここですごいのは、ほぼ即時に判定が出ること。
これは面白いです、クセになります。
自分でアイデアを思いついて、コードを書く、そして実行しすぐエラーが分かる。
その失敗を受けて、エラーを改良しもう一度検査、エラーの数が減ったことを確認。
そうやって、どんどん失敗から学び、不安要素を一つずつ潰していく。
これはかなり病みつきです。
メンタリストDaiGoさんが以下の記事でも書いていますが、
やりがいを感じれる要素の1つがフィードバックとあります。
断言します!
この世で、フィードバックが最も高いものはプログラミングです!
独学力を鍛えることができる
僕は世の中の分野の大半は独学で何とかなるって思っています。
参考動画は山の様にあるし、書籍も豊富にあります。
下手に教わって、お金と時間を使うのであれば、自分で教材を吟味して購入し、習得時間に割いた方が賢明です。
ことITにかかる分野は100%独学でいけるはず。
プログラミングなんてググれば、たいがいのことは出てきます。
自分一人で課題を推し進め、完成まで持って行けることも大きなメリットですね。
誰かに教えてもらわなければできないというマインドを払しょくできます。
「俺が本気を出せば、これくらい1人でいけるだろ」
だんだんこういった自信がついてきます。
現に僕は、プログラミングを学んでから本当に身につけたいものは全て独学で行いました。
TOEICも勉強し始めて2回目で目標としていた800点とることができました。
正直、独学での学ぶというクセがもうついているのです!
オススメのプログラミング言語は?
まず、何から手を付ければいいかという疑問あると思います。
プログラミング言語は世の中に数多くありますからね。
ですが、私個人の意見を言えば、「C言語」です。
なぜか??
それはこの言語をマスターできれば、プログラミングという行為の基礎を完全に習得できるからです。
まず、この言語はシンプルです。
というか、便利さで言えば「C++」という言語の方に軍配が上がります。
これは「C言語」の進化系みたいなもので、こちらでしか使えない便利なコマンドみたいなものもあったりします。
便利ではあるのですが、いきなりこっちを使うのはお勧めできません。
基礎がない状態で便利なものを使うと、本質的な理解が遠ざかるからです。
特に、特殊なコマンドがないシンプルな環境でコードを丁寧に書いていくことで、基礎が身に付きます。
そして、一旦身に着いた基礎はどの言語でも応用可能です。
多言語では、コードの表記方法こそ違えど、根底の考え方は全く同じ。
つまり、考え方・思考法は何をしても使うことができるのです。
そして、プログラミング言語ごとの差は実は「方言」みたいなものです。
細部が変わっているだけで、大きな括りでは同じです。
関西弁話す人が、東北なまりを聞き取れるとかそんな難易度位です。
同じ日本語だし、慣れればいける。
そして、この例えで言う日本語(しかも標準語!)がC言語です。
この言語を、使えるようになれば、他への応用もなんのその。
まとめ
現在、プログラミングの必修化が進んでいます。
これって結構大人は結構危険・・・
僕の目から見て、全く論理的思考ができていない人達も多いのです。
将来生き残る為にも、是非勉強してみて下さい!
ここで学んだノウハウは一生モノです!
ではでは!