N O W L O A D I N G . . .
世間はコロナ一色。
まだワタクシの業界には影響はないが、半年・一年先を考えると影響は大きいだろう。
さて、今回は
先日記事にも書いた、PHPのフレームワークの話。
手軽なものがないという結論。
そうなりゃ、作るしかないよね。
無い物は作ればいいんです。
楽をする手段はいくらでもありますが、楽してダメ人間になってしまってはイカンですよ。
まずはざっくりと構想から。
・MVCデザインパターンを採用する
MVCデザインパターンとは、Wikiをみてくだされ。
Wikipedia
・テンプレートエンジンにSmartyを採用する
PHPで作成されたテンプレートエンジン。
Wikipedia
・クラス自動ロード機能を採用
この機能は自分で作成する。
こんなもんか。
次はディレクトリ構造を考える。
├─bases ← 基本クラスを配置
├─config ← 設定ファイルを配置
├─controllers ← コントローラークラスを配置
├─datas ← データクラスを配置
├─libralies ← 外部ライブラリを配置
├─models ← モデルクラスを配置
├─loader ← ローダークラスを配置
├─tmp
│ └─smarty ← Smartyコンパイルデータディレクトリ
└─templates ← Smartyテンプレートを配置
妄想的にはこんな感じか。
新たな機能を追加する場合には、basesディレクトリに機能クラスを作ればいけるっしょ。
Smartyはコンパイルした結果が作成されるので、tmpディレクトリにSmarty用のディレクトリを作成。
後にログ機能なんか入れた時にはtmpディレクトリに書き出せばよいかと。
クラスを自動でロードするには…
Composerを使用した自動ロードか、自前でauto_load_registerを書くか。。。。
悩ましいが、vendorディレクトリも邪魔だし、なるべくピュアに。
今回は複雑にならない予定なので後者のauto_load_registerで作ろう。
今回は妄想まで。
次回から、実際に作成してみようかな~。
めんどうになって放り出さなきゃいいけど…