ログ日記

作業ログと日記とメモ

kaedeソース探索

迷ったあげくフレームワーク基本設定の読み込みクラスを作ることにした。


その前に、kaedeは定数を使わないようにするというのを思い出して、参考に眺めてみる。

ディレクトリ構成

Core
DI
Reflection
Util
data
tests

非常にすっきりしている。CoreではなくてDIにフレームワークの主要素があるようだ。
しかしエントリポイントがわからない・・・。


昨日悩んでたのと同じ部分を発見。

<?php
class Kaede_Reflection_Class extends ReflectionClass
{
...
}

Kaede_Reflection_Class:staticInit();
?>

となっている。この方法をやめようと思った矢先にこれを見てしまうと、もう少し考えてみようって気になってくる・・。
クラスの命名規則PEAR方式なのかな?バージョンはPHP4、PHP5と書いてあるけどReflectionとかはあるようだ。そのためのPHPバージョン定数か。PHPバージョンに対応するクラスファイルをインクルードしている。


テストのためのクラスがアツい。自分もここまでテストできればいいんだが・・取り敢えずテストがめんどくさくならないようなクラスは作った方がいいな。


エラー処理はPEAR_ErrorStackを使っているが、独自実装したければKaede_Errorを変更するだけで何とかなりそうだ。でもこのクラスを入れ替えるのはちょっと危険?



・・・目的がだいぶそれた。設定ファイルが見たかったんだ。が・・フレームワークの設定って無いのかな・・。見つけられない。そもそも全部DIなら設定はDI設定ファイルということになるのか。うーん。
結構newやクラスハードコードがある。

あとdataディレクトリ。
エラーメッセージが格納されている。今のところテストケースで使われているが・・・国際化対応?


探索はこのくらいにしてそろそろ自分の場合を考えようか・・結局フレームワークとかアプリケーションの設定はどこでどうなってるのか分からなかった。DI用のConfigParserはあるのだが・・やっぱりこれで全部やってるのかな。