たろログ2

実験的運用により、記事品質が乱高下することがあります。予めご了承ください。

PHP と Python の比較

前書き

最近、 Python をよく使うようになった。

PHP との違いについて書く。

環境構築が楽

PHP に比べて、圧倒的に環境構築が楽である。

それも特に、 Windows での環境構築が楽なのが非常に助かっている。

「エコシステムが整っている」というらしい。

プリインストールされている

まず、 Linux ディストリビューションにおいても、 Windows においても、 Python はプリインストールされており、特に何をするでもなく Python は利用できる。

パッケージや dll のインストールがいらない。

PHP のパッケージを使う際、 Linux では so ファイル、 Windows では dll ファイルの設置が必要である。

Linux においては apt や dnf などでインストールできるパッケージが用意されていることが多いので多少簡単だが、 Windows では dll をインストールする必要があり、これが非常に面倒くさい。

Python は pip コマンドで対象のライブラリをインストールするだけでよく、非常に環境構築が楽である。

デバッグの設定が楽

PHPデバッグを行うためには XDebug のセットアップが必要だが、これが結構難易度が高く、詰まるところが多い。

特に、 Windows 環境においては顕著である。最近ようやくローカルでデバッグできるようになった。

Python では、特に何を設定するでもなく、PyCharm でブレークポイントを設定してデバッグ実行すると「バチッ」とコード実行が止まり、デバッグすることができたので感動した。

オブジェクトの考え方が徹底されている

PHP ではプリミティブ扱いの文字列 (String) などがオブジェクト扱いであり、メソッドを生やして処理を行うことができる。

これにより、コードの書き味が異なる感じがする。

Ruby などもそうだが、個人的にこのようにオブジェクトの考え方が徹底されている言語設計の方が好みである。

多機能ではない印象

PHP は最近のバージョンで便利な記法が増えているが、 Python でやろうとするとできない印象 (Constructor property promotion など)。

他、関数についても PHP の方が豊富だなという印象がする。

Python は仕様変更が PHP に比べゆっくりで、安定している印象。

そのために、機能追加は比較的ゆっくりなのかもしれない。