【必見】Pythonプログラマーが必ず確認するべきGitHubリポジトリ 10選
はじめに
今回の記事では、学習・開発でPythonを使うプログラマーが必ず確認するべきGitHubリポジトリを10個紹介する。本記事の対象は主に以下の通り。
- 実務でPythonを使っているプログラマー
- Pythonの情報収集に困っている人
- Pythonの学習・開発の効率をアップさせたい人
- Pythonのフレームワーク・ライブラリを確認しておきたい初心者
Pythonは1991年にリリースされてから今年で30年以上も経過している歴史のあるプログラミング言語なので、情報量が非常に多くどのように開発を進めればよいかわからない人も少なくないだろう。
そこで、本記事では個人の独断と偏見で学習・開発でPythonを使うなら必ず確認するべきGitHubリポジトリを紹介する。Pythonで実装できるプロダクトは多岐に渡るので、本記事では分野ごとに確認するべきGitHubリポジトリを紹介する。
必見
awesome-python
Pythonのフレームワーク、ライブラリや開発ツールなどを一つにまとめたGitHubリポジトリ。分野が多岐にわたっており、実務でPythonを使っているプログラマーは全員確認するべき。今回紹介するGitHubリポジトリの中では最も優先度が高い。今すぐにリンクにアクセスしてチェックしておこう。
PyPattyrn
デザインパターンを自分のプロジェクトに簡単かつ迅速に実装することを目的としたPythonのライブラリ。開発でよく使われるデザインパターンを一から手動で実装せずにすぐに使えるようにするために開発された。
Pythonで効率よくコーディングを進めたいなら必見である。
python-patterns
様々なデザインパターンを実装しているPythonプログラムを集めたGitHubリポジトリ。README
にあるリンクから該当するPythonファイルにアクセスできる。開発で汎用的に使われているデザインパターンをPythonで実装する方法を学ぶにはうってつけだ。
機械学習
pytorch
Pythonで開発されたオープンソースの機械学習ライブラリ「PyTorch」のリポジトリ。以下の特徴がある。
- 強力なGPUサポート付き。NumPyを使った高度な算術演算が得意
- 微積を使った深層ニューラルネットワークを構築できる
機械学習を本格的に学びたいなら必ず確認するべきである。
tensorflow
機械学習のためのオープンソースライブラリ「TensorFlow」のリポジトリ。pytorchと同様に、機械学習を利用したアプリケーションを簡単に開発できる。pytorchとの最大の違いは機械学習で使ったモデルを本番環境でデプロイできる点である。
@ITの記事によると、TensorFlowは主に企業などで機械学習を利用することに特化している一方で、PyTorchは機械学習を使った学術研究に特化していることが書かれている。
Web開発
django-rest-framework
PythonのWebフレームワーク「Django」でREST APIを開発できるサードパーティ製のライブラリ。公式ドキュメントにチュートリアルが掲載されているので、初心者でもサンプルコードを順番にコピペすれば簡単にAPIを開発できる。
Pythonで効率よくAPIを開発するなら視野に入れておいたほうがいいだろう。
fastapi
PythonのWebフレームワーク「FastAPI」のリポジトリ。こちらもDjango REST Framework同様にPythonでAPIを開発するなら視野に入れておくべき重要な技術になる。FastAPIに関する詳細な説明は以下の記事で徹底解説されている。是非確認してほしい。
結論を言えば、FastAPIは必要最低限の機能しか搭載されていない。故に、開発に多様性を持たせたいなら選ぶべきだろう。
oauthlib
PythonでOAuthを効率よく実装するためのライブラリ。OAuth認証は簡潔に言えば、複数のWebサービスを連携して動作させるために使われる認証の仕組みである。
実務でPythonを使ったOAuthを実装しなければならないとき、必ずこれを使おう。
mkdocs
Pythonで開発された、プロジェクトのドキュメントを設計するための高速かつシンプルな静的サイトジェネレーターである。Markdownに対応して使いやすいように設計されている。Pythonで開発したライブラリのドキュメントを制作するときによく利用されている。
余談だが、Django REST Frameworkの公式ドキュメントにはこれが採用されている。
ariadne
GraphQLサーバを実装できるPythonのライブラリ。実装できる機能が非常に豊富で、公式ドキュメントが非常にわかりやすく学びやすい。PythonでGraphQL APIを開発するなら視野に入れておくべきGitHubリポジトリ。
参考サイト
Discussion