Python言語が選ばれる理由。どんな用途に向いた言語なのか。
今回は「なぜPythonが注目を集め、よく選ばれるのか」をお伝えします。Pythonはどんな言語なのか、どんな用途に向いた言語なのか、どんな人が使っているのか、以上の3点です。ご参考ください。
---
どんな言語なのか
プログラミング言語には、コンピューターにとって読みやすい(ただし人間には読み書きしにくい)ものと、人間にとって読み書きしやすい(ただしコンピューターに読ませるためには何らかの追加処理が必要になる)ものがあります。Pythonは後者の「高水準言語」という分類に含まれます。現在「プログラミング言語」と言えば、99.9%の場合この高水準言語を指しています。
高水準言語の歴史は古く、銀行系のシステム(汎用機)でよく使われているCOBOLが誕生したのは1950年代です。Microsoft Excelのマクロ(VBA)の元になっているBASICが誕生したのは1960年代、プログラミング言語の親とも呼ばれるC言語は1970年代、iPhoneアプリの開発に使われるObjective-Cは1980年代に誕生しています。
そしてPythonが誕生した1990年代は、Pythonの他にもRuby、Java、JavaScript(ECMAScript)、PHP、R言語など、多くの方が一度は耳にしたことがあるプログラミング言語が数多く登場しました。この頃は世界的にITの利用が高まり、アメリカでは他国に対抗するためのITを推進する法律ができたほどです。Pythonのように記述や習得が簡単な「軽量プログラミング言語」が登場したのは必然だったのかもしれません。
今ではPythonを始めとして、いくつもの「軽量プログラミング言語」が存在しますが、Pythonソフトウェア財団とJetBrains(開発ツール開発会社)が実施した2020年のアンケートによると、Pythonのメリットとして以下のものが上位に選ばれています(複数回答)。
1. シンプルな文法、学びやすさ(37%)
2. 読み書きしやすいコード(30%)
3. リスト内包表記の機能、ジェネレーターの機能(21%)
4. 汎用性、ライブラリの豊富さ(21%)
5. 動的型付けの機能、ダックタイピングの機能(20%)
6. 強力な標準ライプラリ、ビルトインデータ構造、エクスプレッションの機能、バッテリー同梱の哲学(20%)
7. 大きなコミュニティ、ライブラリサポート、分かりやすいドキュメント、pepの機能(14%)
このように、Pythonは「覚えることが少ない」「シンプルなコード」で、「たった一行で多くの処理を書ける」が「誰が書いても同じようなコードになる」ためメンテナンスがしやすいプログラミング言語になっています。
---
どんな用途に向いた言語なのか
Pythonの利用範囲はWebアプリケーション開発に留まらず、データサイエンス、CAD、3Dモデリング、数式処理など広い分野に及んでおり、ここ10年ほどは機械学習ブームによって科学技術計算ツールとして高く評価されています!
先述のアンケート調査によると、Pythonを利用する目的としては以下のものが上位に選ばれました(複数回答)。
1. データ解析(55%)
2. Web開発(50%)
3. 機械学習(40%)
4. DevOps、システム管理、自動化(38%)
5. Webクローラー(36%)
6. ソフトウェアテスト(29%)
7. 教育(27%)
それぞれの分野には、R言語、Rust、Julia、Ruby、あるいはExcelといったPythonのライバル技術がありますが、これらの分野すべてに対応できてしまうことが、Pythonのそもそもの大きなメリットと言えます。
先述したようにPythonは習得が比較的簡単ですので、これを1つ習得しておけば、さまざまな分野で利用することができるのです。
---
どんな人が使っているのか
Pythonは、駆け出しプログラマーの学生から高レベルなデータサイエンティストまで、幅広いユーザーに人気の言語です。先述のアンケート調査に回答した人の業務経験年数の分布からも、そのことが見て取れます。
- 1年未満:34%
- 1〜2年:19%
- 3〜5年:19%
- 6〜10年:12%
- 11年以上:16%
Pythonには、他のプログラミング言語と大きく異なる特徴が2つあります。1つは、教育用言語としての役割です。シンプルで覚えやすいため、子どもや学生などプログラマーではない人が空いた時間に身につけることができます。もう1つは、最初からグルー言語(接着剤のようにソフトウェア同士を結びつける言語)として有力だったことです。
これらの特徴が、現在Pythonがデータサイエンス分野で重宝されている原因になったと考えられています。データサイエンスの需要が高まり始めた時に、従来のデータサイエンティストたちがPythonを使い始めたのではなく、製品を分析しなければならないマーケターやスポーツの分析者など、あらゆる業界のデータサイエンスの初心者(プログラミングの初心者)が、覚えやすく使いやすいPythonを取り入れたと考えられるためです。
---
おわりに
Pythonが使われているソフトウェアや製品は数多ありますので、みなさんも知らぬ間にその恩恵に預かっているかもしれませんね。いくつか列挙してみますが、いかがでしょうか。
- Dropbox:クラウド型のファイル保存サービス
- OpenStack:クラウドコンピューティングIaaSプラットフォーム
- Anki:語学学習者のための暗記カードソフトウェア
- Blender:3次元のCG、アニメーション、ゲーム製作ツール(最近Twitterで流行っています)
- Discord:slackのようなチャットツール
- World of Tanks:大規模なMMOゲーム
それでは今日はこの辺で
(執筆協力:野田貴子)
- 資格取得
年間登壇約20回、連載数15本以上、顧問先14社を持つマーケッター。著書「ITエンジニア向け企画力と企画書の教科書」大手企業の職級査定審査員
日本を代表する大手企業を中心にマーケティング支援を実施。日本のIT業界の発展のためには教育が重要であると考え、LinuxやXML、PHP、Ruby on Rails、Python、IPv6の検定試験を立ち上げ、運営組織の代表を歴任する。
吉政忠志(ヨシマサタダシ) 一般社団法人Pythonエンジニア育成推進協会 代表理事
対応エリア | 全国 |
---|---|
所在地 | 江東区 |