A Day In The Life

とあるプログラマの備忘録

階層メニュー2

階層メニューが一通り動くようになりました。



olタグとliタグを使用し、表示はカスタムタグで行いました。

一番時間がかかったのが、DBからメニューオブジェクトを生成するところで、

すべてのデータをCompositeなオブジェクトに格納するのはかなり苦戦しました。



オブジェクトが生成できれば後は再帰的にたどるだけなのであまり時間はかかりませんでした。



今回、Compositeパターンについていろいろと勉強になりました。

デザインパターンの本を読んでいるとCompositeパターンを応用してAbstract FactoryやVisiterパターンと複合で使うともっと綺麗に行きそうな感じもしました。



まだまだソースが汚いのでもう少し見直して綺麗にしていこうと思ってます。

関連記事