ラベル パッケージ管理 の投稿を表示しています。 すべての投稿を表示
ラベル パッケージ管理 の投稿を表示しています。 すべての投稿を表示

水曜日, 7月 23, 2025

PHP: Composer の使い方

PHP には Composer という優れたパッケージ管理ツールがあります。最近、PHP サイトを Composer を使って再構築する作業を行いましたので、方法を書いておきたいと思います。

Composerとは?

ComposerはPHPのパッケージ管理ツールです。PythonにおけるPoetryに似ており、依存関係の管理とプロジェクトの構造化を支援してくれます。

  • composer.json によってすべての依存情報を一元管理

  • Packagistというリポジトリから多くのパッケージをインストール可能

  • Composerの最大の魅力のひとつが、オートローディング機能です。PSR-4準拠の設定を行えば、名前空間に応じてクラスファイルが自動的に読み込まれます。


インストール方法はこちら⇒公式サイト


プロジェクトの初期化

プロジェクトフォルダで以下のコマンドを実行して composer.json を生成します:

composer init

オートローディング設定

composer.json に以下を追加してクラスを読み込みます。

"autoload": {
        "psr-4": {
            "Pages\\": "src/Pages/"
        }
    }

追加後は以下のコマンドを実行して、オートロード情報を更新します。

composer dump-autoload

使用法

EditPage というクラスを作るなら、src/Pages/EditPage.php ファイルで namespace を指定し、クラスを定義します。

namespace Pages;

class EditPage {
    public static function hello() {
        return "EditPage::hello() が呼ばれました。";
    }
}

EditPage を使うファイルで以下を設定します。

require 'vendor/autoload.php';

use Pages\EditPage;

echo EditPage::hello();

火曜日, 7月 22, 2025

Python: Poetry の使い方

 Python のパッケージ管理で便利なツールがあります。pip や venv などもいいですが、ここでは poetry の使い方を説明したいと思います。


インストール


PoetryはPython 3.7以上で動作します。
curl -sSL https://install.python-poetry.org | python3 -


使い方


まず新規プロジェクトを作成します。
 
poetry new <proj>

このコマンドで以下のファイルが作成されます。

proj/
├── pyproject.toml
├── README.md
├── proj/
│   └── __init__.py
└── tests/
    └── __init__.py


Python モジュールの追加


add コマンドを使ってモジュールを追加します。

poetry add requests


追加されたモジュールは pyproject.toml を見ると確認できます。


仮想環境の管理


run コマンドを使って作成した仮想環境下でプログラムを実行します。

poetry run py script.py


仮想環境の構築


GitHub からプロジェクトをダウンロードしたら、install コマンドを使ってモジュールをインストールします。

poetry install

poetry は仮想環境を管理するための分かりやすい・使いやすい優れたツールです。

Flask の Blueprint のテンプレート問題

  Flask の Blueprint は、ルート、静的ファイル、テンプレートをまとめて管理できます。しかし、テンプレートが指定できません。 ここでは、Blueprint の template_folder の問題点と回避策を説明します。 Blueprint のテンプレート問題...