はじめに
私がプログラミングの世界に足を踏み入れた際、そのお供にPythonを選びました。大学の講義で学んだのがきっかけですが、その後も基本的にはPythonで個人開発をするようになりました。その理由は非常にシンプルで、使い勝手が良いからです。初学者が最初にどのプログラミング言語を選ぶべきか迷うことはよくありますが、私はPythonを選んで正解だったと思います。初学時はプログラミングの基本概念を理解することが最優先であり、高度な型や処理効率の理解は必ずしも必要ではありません。これらは後に必要になった時に深く学べば良いだけです。逆に初めから難易度の高いことに挑戦しようとすると、理解できずに挫折する可能性が高まります。
本記事では、Pythonの概要について簡潔にまとめるとともに、Pythonをプログラミング入門時の言語として学んでよかったと感じた点について説明します。
対象読者
- どの言語でプログラミングを学び始めればいいかわからない
- 「Pythonって、何がいいの?」と疑問に思っている
内容
- Pythonのおおまかな歴史
- スクリプト言語とコンパイル言語の違い
- Pythonのおすすめポイント(可読性、簡潔性、応用性)
Pythonとは
Pythonの歴史
2010年代の中頃から「機械学習」や「人工知能」といったキーワードともに注目を集めるようになったPython。Googleトレンドで「Python」の検索動向を調査すると、ちょうどその時期から人気度が上昇したことを確認できます。
https://trends.google.co.jp/trends/explore?date=all&geo=JP&q=%2Fm%2F05z1_&hl=ja
一見すると最近誕生した言語であるかのように思われますが、実はPythonの歴史は古く、Javaよりも前に開発されました(90年代初頭)。
スクリプト言語とコンパイル言語
Pythonはスクリプト言語に分類されます。 スクリプト言語とコンパイル言語の大まかな特徴は次の通りです。
- スクリプト言語
- ソースコードを逐次翻訳しながら実行
- 翻訳しながら実行するため処理速度はあまり速くない
- (例)Python、Ruby、PHP、JavaScript
- コンパイル言語
- ソースコードを事前にコンパイル
- 高速に動作
- (例)C、C++、Java
プログラミング初学時にPythonを選択して良いと感じた点
スクリプトの可読性が高い
プログラミングを初めて学ぶ際には、コードが読みやすいかどうかが非常に重要です。学習を始めたばかりの段階では、他人が書いたコードを理解し、模倣して実行して学ぶことを何度も繰り返します。その際にコードを読むのに苦労すると、それだけで学習のモチベーションが下がってしまいます。これを防ぐために、Pythonのインデントを使ったブロック表現の方法は非常に有効です。
処理を簡潔に記述しやすい
他の言語と比較すると、Pythonでは簡潔に処理を記述できます。for文を用い、0から4までの整数を出力する繰り返し処理を例に挙げて考えます。
- C言語での記述
#include <stdio.h>
int main(void){
int i = 0;
for(i=0; i<5; i++){
printf("%d\n", i);
}
return 0;
}
- Pythonでの記述
for i in range(5):
print(i)
Pythonを使えばやや複雑な処理もたった2行で記述できます。
Pythonの開発コミュニティには豊富な資産がある
Pythonを使うことで、ウェブサイトを作ったり(DjangoというWebアプリケーションフレームワークを使う)、複雑な科学演算ができたり、はたまたゲームを作れたりします。 作りたいものに応じてプログラミング言語を使い分けた方が効率が良い場合ももちろんありますが、やはり新しい言語を学ぼうとなると、相応の学習コストがかかります。 それ以前に、言語を一つも習得していない段階で他の言語に手を出すのは得策ではありません。 そう考えると、一つの言語で多くのことを試せることは大きな利点です。
職業プログラマーとしての需要が存在する
将来の職業の選択肢としてプログラマーを考えているのであれば、その年収も気になるはずです。多くの調査において、Pythonは上位にランクインしています。
Pythonの勉強法
私はプログラミングの基礎を身につける際、次のようなステップを意識しながら勉強しました。
- ステップ1
自分のPythonに関する知識の土台になる参考書を一つ買う。もしくは、Pythonについて体系的に解説をしているサイトやサービスを見つける。
- ステップ2
知識の土台ができるまで何度も参考書を読んで、コードを書いて、実行して書き直して、また読んで…を繰り返す。
- ステップ3
ある程度知識がついてきたら、自分のやりたいこと、実現したい機能をコードに落とし込んでみる。
- ステップ4
自分の書いたコードをGitHubなどで公開したり、ブログなどで人に教えたりしてアウトプットする機会を設ける。
ステップ3が一番負荷が大きい段階だと思います。なので、様々なWebサイトを参考にしながら一歩ずつ着実に進む必要があります。プログラミング初心者が、ステップ4にたどり着くにはかなりの時間がかかります。なので、あせらず一歩一歩着実に進めることに集中します。
おわりに
本記事を通して、なぜPythonでのプログラミング入門が、初学者にとって魅力的なのかをお伝えできたと思います。 まずは、見やすく、簡潔に書けるPythonでプログラミングの基礎を学び、その後CやJavaといった世の中で広く使われている言語に挑戦するという流れが、私にとっては最適でした。ぜひ、参考にしてみてください。