どのプログラミング言語を学べばいいか分からない。Pythonに入門しようか迷っている。効率良くPythonを独学したい。
この記事では、 現役エンジニアで、仕事でも趣味でもPythonを使う筆者が、Pythonの魅力と効率的な独学方法をご紹介します。
この記事で分かること。
プログラミング言語はPythonがおすすめ
世の中にはたくさんのプログラミング言語があります。
例えば、Webページ制作だとHTMLやJavaScript、電子機器にソフトを組み込むならC/C++など。
残念ながら、どんな状況で使える万能なプログラミング言語はありません。料理人が食材によって包丁を使い分けるように、プログラマーも目的に応じて言語を使い分ける必要があります。
どの言語を学ぶべきかは、取り組む課題によって異なります。とはいえ、「取り組む課題はまだ決まってないけど、とりあえずプログラミングをやってみたい」という方も多いのではないでしょうか。
そんな読者の方におすすめな言語がPythonです。ここでは、Pythonがおすすめな理由とその魅力をご紹介します。
シンプルで学びやすい
文法がシンプルで書きやすく読みやすい。
例えば、PythonとJavaで同じ処理(Hello, world!と表示する)をするソースコード(プログラミング言語で記述されたテキスト)の比較は、下記ようになります。
Java
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello, world!");
}
}
C++
#include <iostream>
using namespace std;
int main()
{
cout << "Hello, World!";
return 0;
}
Python
print("Hello, world!")
いかがでしょう。Pythonはシンプルで読みやすくありませんか?
Pythonは世界的に大人気
Stack Overflowという技術者の有名なコミュニティが「Developer Survey Results 2019」という大規模調査(対象者数9万人近く)の結果を発表しています。
Pythonは、最も人気なプログラミング言語についての項目で、Javaなどのメジャーな言語を抑えて4位につけ、
Python is the fastest-growing major programming language today.
(Pythonは今日最も急速に成長している主要なプログラミング言語である。)
と評されました。
(出典:https://insights.stackoverflow.com/survey/2019#technology)
他にも、TIOBE Index for August 2019などを見ても、Pythonの人気ぶりがよく分かります。
困ったときの情報が沢山
これはPythonが人気であることにも通じますが、ネット上にはPythonに関する情報がたくさん存在します。何か問題が発生したときは、症状をググれば、殆どの場合に解決法を見つけることができます。
これがマイナーなプログラミング言語だと、解決法が見つからず、膨大な時間を無駄にすることになってしまいます。
豊富なライブラリ
Pythonには様々なライブラリ(便利な機能を寄せ集めたファイル)が存在し、今も新しいライブラリが開発されています。ライブラリを使うことで、Pythonをいろいろな場面で応用することができます。
例えば、人工知能(AI)でおなじみのディープラーニングは、TensorFlowやKerasなどのライブラリを使うことで誰でも実装できます。また、Django、Flaskなどのライブラリを使えば、簡単に自分でWebアプリケーションを作れます。
Pythonを少し学べば、プログラミングで色々遊べるようになりますよ。
お金を稼げる
少々語弊がありますが、Pythonは今お金を稼ぎやすい言語です。
(出典:https://www.bizreach.co.jp/pressroom/pressrelease/2018/0807.html)
これは求人サービスの運営会社ビズリーチが発表した、プログラミング言語別の年収ランキングです。Pythonは年収中央値こそ1位、2位にやや劣るものの、他に比べて求人数が圧倒的に多く、提示される年収も高いです。
このように、シンプルで学びやすく、豊富なライブラリで応用先の広いPythonは、これからプログラミングを学ぶのにもってこいの言語です。
ちなみに、あのInstagramでもPythonが使われているんですよ。
独学でPythonを効率よく学ぶ方法
Pythonが良さそうなのは分かったけど、じゃあ具体的にどうやって学べばいいのか?ここでは、独学で効率よくPythonを学ぶ方法を紹介していきます。
(ネットでありがちな、高額のオリジナル教材を薦めるようなマネは絶対にしませんので、安心して読み進めていただければと思います。)
私を含め、周りのエンジニアの友人達(有名IT、大手メーカー、研究所などに勤務)のほとんどが独学でPython(プログラミング)を学んでいます。
私自身、学生時代にプログラミングの授業を受けはしましたが、言語はC/C++でした。しかも教授が書いた難しくて分かりづらい教科書をただ丸写しする授業で、結局全然身につきませんでした。
身につかないどころか、一時、プログラミングが嫌いになってしまいました。
Pythonに限らず、プログラミングを学ぶコツは、「ルールや文法を学んで、それを使って、簡単なものでいいから動くプログラムを作ってみる」を繰り返すことです。
特に初学者の方は、基本的なルールや文法を学ぶところでづまずかないことが重要です。
その点を踏まえて、私が実際に使って、Pythonを学ぶのに最適だと感じた教材は以下になります。
シリコンバレーのエンジニアによるオンライン講座
教育業界で有名なベネッセと、米UdemyがUdemyというオンライン講座を受講できる教育プラットフォームを提供しています。
その中で、ITの聖地シリコンバレーの有名企業で働くエンジニアが、Pythonの基本から応用までを丁寧に解説をしてくれるオンライン講座(授業動画)が提供されています。
Python 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイルを学ぶオンライン講座
有料ではありますが、確実にそれに見合った質と量が提供されており、また、講師の先生に直接質問できるので、独学に向いている教材だと言えます。(Udemyは30日間の返金保証が有ります)
私も実際に受講しましたが、説明が丁寧で分かりやすく、知らなかったテクニックもたくさん学べてとても満足でした。
2022年1月現在で約16500件の評価で☆4.4の高評価を得ており、プログラミングスクールに通うことを思えば非常に安くてお得です。
さて、このオンライン講座の特に素晴らしい点が、読みやすい、綺麗なソースコードの書き方を説明している点です。
ある程度プログラミングに慣れないと実感できないのですが、読みやすいソースコードを書くのは重要です。ですが、それは簡単なことではなく、一旦汚いコードの書き方に慣れてしまうと、なかなか矯正するのが難しいものです。
この授業ではPythonを学んでいく中で、良いコードを書く為のきちんとした「型」も学べます。はじめからこのような型を意識して学ぶと、後々、矯正に時間を取られず、長期的に見て効率的です。
私がPythonを学び始めたころに、こういう動画があったら良かったのになあと今でも思います。
王道だけど、やっぱり本
多少費用が掛かってでも、効率的に学びたい方はオンライン講座がおすすめです。ですが、できる限りお金を掛けたくない場合は、本でも十分に独学できます。
私も最初は本から入りましたし (オンライン講座の存在を知らなかったという理由もありますが…) 、時間に余裕がある方は、ゆっくり自分のペースで学んでいくのも良い選択です。
いちばんやさしい Python入門教室
いちばんやさしい Python入門教室は、友人のエンジニアがお勧めしてくれた本です。友人曰く「プログラミング自体が完全に初心者だったら、これが分かりやすい。」とのことでした。
こちらの本に関しては、恐縮ながら私は中身をざっと見た程度なのですが、イラストが豊富でカラフルなので、挫折せずに進められそうだという印象を持ちました。
詳細! Python 3 入門ノート
詳細! Python 3 入門ノートでは、やさしくしっかりと文法が説明されています。また、その文法を使った簡単なサンプルプログラムも載っているので、単純に文法が羅列されているだけの本に比べて、身につきやすい作りになっています。
ただし、辞書感が否めないので、苦手な人は途中で飽きてしまうかもしれません…。
リーダブルコード
リーダブルコードは基本的な文法が分かるようになったら、ぜひ目を通してもらいたい1冊です。
どんなプログラミング言語を使うにしても、読みやすいソースコードを書けるに越したことはありません。
私はプログラミングを学び始めたとき、単純に文法を覚えるだけで、読みやすいコードの書き方は学びませんでした。というか、読みやすさなど気にしたこともありませんでした。
そしてその後、コードの書き方を矯正するのに膨大な時間が掛かりました…。今でも気を抜くと、汚いコードになってしまいます。
ぜひこれからプログラミングを学ぶ方には、最初からコードの読みやすさも頭の片隅に置いてもらえればなあと思います。
ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装
Pythonに限らず、プログラミングを早く楽しく学ぶコツは、実際にプログラムを作ることです。いくら文法を覚えても使わないと身につかないのは、外国語学習と同じですね。
そうは言っても、ただプログラミングを勉強してみたいだけで、特に作りたいプログラムなんてないという方も多いと思います。せっかくのチャンスなので、AIでお馴染みのディープラーニングを題材にしてみるのは、いかがでしょうか。
『ゼロから作るDeep Learning』はディープラーニング入門書のベストセラーで、本の第1章がPythonの入門に割かれており、Python初心者の方にもやさしい構成になっています。
ただし個人的には、プログラミング自体が完全に初心者の方にはきびしいように感じます。
まずは上に挙げた本などで、簡単な文法をひと通り学んでからチャレンジした方が、スムーズに進められるはずです。
さて、長くなってしまいましたが、この記事では
- プログラミング言語はPythonがおすすめな理由
- 独学で効率よくPythonを学ぶ方法
を紹介しました。
繰り返しになりますが、どの言語を学ぶべきかは何をしたいかによります。
ただ、何でもいいからプログラミングを試してみたいという方は、とりあえずPythonを選んでみてはいかがでしょうか。楽しい世界が目の前に待っていますよ。
コメント