オレオレフレームワーク実装中(3)
今日も色々と割り込みが入り、実装が進まずにイヤン(´・ω・`)
定時を過ぎてからが、自分の仕事の時間です、みたいな。
まあ、週末には実装も終わるだろうし、デザインもあがってきたので、来週は一気にアプリケーションの組み上げという感じで(´ω`)
で、実際にデータソースを作ってみて分かったこと。
SQLを自動で組み立てたりするためには、テーブルのメタ情報が必要になるわけですが。
SELECT * FROM INFORMATION_SCHEMA.TABLES
とかで取ってくる情報ッスね。
問題はその保存場所。
毎回取りに行くのも馬鹿らしいわけで、本当は初回時のみ取得して、後はアプリケーションスコープにキャッシュしておきたいものですが。
でも、所詮そこは走りきりのスクリプト言語ということで、アプリケーションスコープの概念が無いのでどうしたものか( ゚Д゚)
ちなみに、フレームワークっぽいモノを作っていると「アプリケーション」の概念が無いのって結構マンドクサイものだな〜と気がついてみたり。
だから、フィルタやルーティングを行うコントローラ周りは、mod_rewrite様のお力を借りることになるわけですが。
で、メタ情報の扱いについては、DRYに反するような作りにするのもアレなので、とりあえず毎回DBから取る方法のままで。
同じリクエスト間はキャッシュしているし、そんなに負荷のかかるシステムに使うわけでも無いので。
ちなみにアプリケーションスコープの入れ物を作ろうとした場合、やっぱりファイルにシリアライズする実装になるかしらん?
まあ、それでどれくらい嬉しいのか実測してみないと分からないので、とりあえずは保留だよもん(´ω`)