今注目のプログラミング言語、Python。学びたいと思っている人もきっと多いでしょう。
Pythonは簡潔な文法で知られ、とても学びやすい言語です。しかしあなたがプログラミングを全くやったことがないなら話は違ってきます。
そこでこの記事では、Pythonの学習方法についてまとめました。
プログラミングは独学では学ばない方がいい
Pythonは「手続き型言語」と呼ばれるプログラミング言語です。手続き型言語の仲間には今主流のPHP、JavaScript、Java、C#など、現場で使われている言語がずらりと入ってきます。というよりも、今開発現場で使われているのは手続き型言語だけと言っても過言ではありません。
手続き型言語には共通する「プログラムの設計の仕方」があります。現場で働いているエンジニアなら、共通する「プログラムの設計の仕方」が頭に入っています。
それは例えば
・システム全体の設計の仕方
であったり、
・クラスの作り方
であったり、
・変数の使い方
であったりします。こういったことが手続き型言語だとほぼ共通なのです。
プログラミングを全くしたことがない方だと、この「プログラムの設計の仕方」は当然知りません。
「プログラムの設計の仕方」は一朝一夕に身に付くものではありません。同じ動作をしても、書くコードの違いによって、メンテナンス性、動作速度、堅牢性などに大きな違いが出ます。「プログラムの設計の仕方」は正解があるものではありませんが、それでも、良いエンジニアは良いコードの書き方を知っています。とにかく動けばいい、というエンジニアは良いエンジニアとは言えません。
良いエンジニアになりたいなら、最初から良いコードが書けるようになった方がいいはずです。
残念ながら独学では、良いコードを書けるようにはなかなかなりません。
良いコードをたくさん読まなければ、良いコードとはそもそもどういうものか分からないはずです。
だから、プログラミングそのものを知らない人は、独学で学ばないほうがいいのです。
具体的な学び方については、この記事の後半で書いていきます。
他のプログラム言語の経験がある方は独学でチャレンジしてみよう
ただ、他のプログラム言語の経験がある方は、話が違ってきます。
経験年数にもよりますが、あなたが他のプログラム言語の経験がある場合、Pythonを新たに独学で身に付けるのはそう難しいことではないはずです。
筆者の経験では、Pythonほど入門しやすい言語に出会ったことがありません。既に他のプログラム言語をマスターしている方なら、その知識が十分に活きるでしょう。したがって、他のプログラム言語の経験がある方はPythonを独学で学んでもいいと考えます。
Pythonの入門書や、入門のためのWebサイトは数多く存在します。他のプログラム言語の経験がある方は、そういったものを教科書にして、独学で学んでみるのもわるくはありません。
プログラミング初心者がPythonを学ぶ方法
それでは、プログラミング初心者がPythonを学ぶ方法について見ていきます。
学校で学ぶ
今は高校や大学でもプログラミングを教える場合が多いようです。こうした場で学ぶことも一つです。
学校の先生なら、少なくとも間違ったことは教えません。特に大学の先生なら、学術的に正しいことを教えるはずです。
しかしこの方法は、メリットよりもデメリットの方が多く目につきます。
最大のデメリットは、プログラミングをする時間そのものが少ないということです。
週1回の講義と週1回の演習、といったあたりが大学でプログラミングを学ぶ一般的なパターンなのではないでしょうか。これは時間が少なすぎます。プログラミングはとにかく時間をかけて打ち込み、試行錯誤を重ねないと、なかなか自分の身につかないのです。大学でプログラミングを学んできた、という新人エンジニアはいっぱいいますが、彼らの中で即戦力として使える人はなかなかいないのが現実です。
更に言えば、今現在高校や大学でPythonを教えているという話を筆者は聞いたことがありません。
仕事に就いて学ぶ
今はプログラミング未経験でもエンジニアとして就職できます。
この場合、入社してから基礎からみっちりとプログラミングを学ぶことになります。
同じ会社内の先輩エンジニアが教えてくれます。配属されたプロジェクトに既にあるコードをいくらでも見ることになります。優秀な先輩が教育係についたら、先進的なプロジェクトだったら、プログラミングを学ぶには最良の道かもしれません。
しかし、残念ながら、先輩は忙しくて教育に時間をかけていられないかもしれません。というよりも、たいていの場合そうです。
配属されたプロジェクトにあまり良質ではないコードがあるかもしれません。現役のエンジニアなら良質でないコードを良質でないと見抜くことができますが、あなたにはそれは見抜けません。悪いお手本を手本にすることになります。
このように、仕事に就いてPythonを学ぶことも、いいことばかりとは言えないのです。
プログラミングスクールで学ぶ
ではどう学べばいいのか?この疑問に対する答えが、プログラミングスクールで学べばいい、です。
プログラミングスクールでは、多くの場合、課題に沿って実践的に開発しながら学ぶ、という形式をとります。そのとき、専属のメンターがついて、あなたの学習をサポートすることが多いです。メンターはたいてい現役のエンジニアが副業としてやっていて、メンターの持っている最先端の技術が直にあなたに入ってきます。
また、プログラミングスクールには、対面式のスクールからオンラインのスクールまで、一日中かけるものから数時間のものまで、様々な種類があります。あなたの希望に合わせて、様々な種類から選べます。これもプログラミングスクールのメリットです。Pythonを教えているプログラミングスクールは数多くあります。
他の生徒や、教える側が書いたたくさんのコードを目にできるのもプログラミングスクールのメリットです。とにかくプログラミング初心者はたくさんのコードに触れましょう。特にメンターのコードは参考になるでしょう。筆者の経験ですが、たいていのプログラミングスクールはメンターの採用に厳密な試験を用いていて、良質なコードが書けないエンジニアはそもそもメンターになれません。メンターである、というだけで、良いエンジニア、なのです。
まとめ
いかがだったでしょうか?プログラミング初心者が独学でPythonを学んではいけない理由がわかったのではないでしょうか。プログラミング初心者は、良い指導者を探しましょう。
他のプログラム言語の経験がある方は、先述したように、独学でチャレンジしてもいいかもしれません。
いずれにせよPythonの求人は今や数多くあります。今後も増えると見ています。Pythonを学ぶなら今です。