【Web】オレオレフレームワークを作ってみる~構想編~

プログラミング PHP Web

【Web】オレオレフレームワークを作ってみる~構想編~

世間はコロナ一色。
まだワタクシの業界には影響はないが、半年・一年先を考えると影響は大きいだろう。

さて、今回は
先日記事にも書いた、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で作ろう。


今回は妄想まで。
次回から、実際に作成してみようかな~。

めんどうになって放り出さなきゃいいけど…

前の記事 次の記事