副題は「信頼性の高いワークフローを構築するモダンテクニック」
要再読である。
本書のサンプルコードや練習問題などは、原著 Webサイト https://github.com/hypermodern-python/ からダウンロードできる。
「Ⅰ部 インストールと環境」、「Ⅱ部 Python プロジェクト」、「Ⅲ部 テスト、静的解析、自動化」の3部からなる。
「1章 Python のインストール」を読んだが、私が使っている Anaconda の話題が出てこない。気になって索引を見たら、1.9 節で説明されていた。なんとまあ、せっかちな俺だ。
1.9 節を見ると、"Conda 自身を含むベース環境を準備する必要があります。"という記述がある。完全な Anaconda ディストリビューションをインストールする方法、Miniconda を使う方法に加え、Miniforge という第三の選択肢も紹介されている。俺は Windows で Anaconda ディストリビューションを使っているが、大きすぎる。一方、WSL2(Windows Subsystem for Linux 2)の Ubuntu 22.04 にはベース環境すら入っていない。この際、Windows でも Ubuntu でも、Miniforge に統一しようかな。
ということで、Windows も WSL2 の Ubuntu も Miniforge にして、どちらもなんとか稼働している。
「2章 Python 環境」を読んだ。まだ用語の整理ができていない。p.27 の図を見てみるとわかることは、 Python 全体はインタプリタとモジュールから構成されていること、モジュールには標準ライブラリとサードパーティーパッケージとがあることがわかる。 また、仮想環境では、インタプリタとモジュールのうちの標準ライブラリは既にインストールされた Python (親)と共有していて、 サードパーティパッケージのみが親とは独立していることがわかる。
2.3 では uv による環境の管理について述べられている。ix ページの訳者まえがきでは、
本書は Python によるハイパーモダンな開発手法やツールを紹介するのが主題ですが、新しい uv の台頭により、
本書で紹介するツールは少なくともハイパーモダンではなく、もはや古典であると言って過言ではありません。
とある。そうなのか。uv をもっと知らないといけないのか。大変だ。
「3章 Python パッケージ」を読んだ。用語でいえば、ここでパッケージの定義がある。
パッケージとは、プロジェクトのコードをまとめてプロジェクト名やバージョンなどのメタデータを同梱して単一のファイルにしたものです。
なるほど。ではたとえば、NumPy もパッケージなのかな。https://numpy.org/ja/ を見てみると、Pythonによる科学技術計算の基礎パッケージ
とあるから、
やはりパッケージだ。本書ではペッケージの作り方が解説されている。私は死ぬまで Python のパッケージを公開することはないだろうが、
せめて作ってはみたい。
4章以降は私には縁がないと思うが、いつかは役に立つときがくるのかもしれない。
書名 | ハイパーモダン Python |
著者 | Claudio Jolowicz |
訳者 | 嶋田健志・鈴木駿 |
発行日 | 2024 年 9 月 25 日 初版第1刷 |
発行所 | オライリー・ジャパン |
発売元 | オーム社 |
定価 | 3400 円(税別) |
サイズ | A5 変形版 |
ISBN | 978-4-8144-0092-8 |
その他 | 越谷市立図書館で借りて読む |
まりんきょ学問所 > コンピュータの部屋 > コンピュータの本 > Python > Claudio Jolowicz:ハイパーモダン Python