PHPのオートローディングの発表をしました

弊社で @t_wada さんにお越しいただいての社内勉強会を行われ、

そこで「オートローディングでレガシーPHPと戦う」というテーマで発表しました。

 

 

JUGEMテーマ:PHP

要約すれば、PHPのオートローディングを使えばアプリケーションコードからファイルパスへの依存を無くすことができて、いくらでもファイルを動かすことが出来るよ、といった内容です。

 

レガシーPHPのつらいところはファイルがrequire_onceによって相互に依存関係を持ち、ファイルの絶対的位置・相対的位置が固定化されてしまうことがあると思います。

それ故、既存のディレクトリ構造を変えたいと思っても、require_onceを全部書き直さないといけなくて面倒です。

オートローディングからファイルパスを解決するようにすれば、この問題が解決します。

 

オートローディングを使う本当の意味はアプリケーションコードからファイルパスへの依存を無くして、機動力を高めることだと思っています。

PHPの公式ドキュメントや、パーフェクトPHPといった書籍や、Qiitaなどでもここらへんを触れているものはあまりないな〜と思っていて、どこも「オートローディングするとrequire_once書かなくてもよくなる」程度しか書いてないです。

そのため何故オートローディングしなきゃいけないのか、いまいち見えづらいな〜という個人的な思いが昔あったため、今回発表しました。

 

まあ最終的にPSR-0/4へ向かっていくことになって、そうなるとファイルパス=名前空間となって、ある意味ではファイルパスに依存する形にはなりますが・・・。

スポンサーサイト

コメント