<< Prev Page Next Page >>

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


スゴいフレームワークの構想

最近自分とこで使うために作ったPHPのフレームワークがとても良い感じで、

  • データベースから何か取り出して表示する
  • 入力画面ではJavaScriptで便利に入力補助
  • XHRで入力値を送信してバリデーションを行い、ひっかかったら入力画面に表示、ひっかからなかったらデータベースに登録
  • 入力画面の内容をJavaScriptで変化させて確認画面にする→もどす
  • オブジェクトや配列の内容をログにダンプする
みたいなことを、恐ろしく少ないコーディングでできるようになった。jQueryバンザイ。

データベースから取り出すときも、テーブル定義が規約に従ってればLEFT JOINするテーブル名を引数で指定するだけで自動でJOINしてくれる。複数テーブルのJOINもJOIN先テーブル名を配列で渡すだけ。超簡単。

リンク用の別テーブルを使ってn*nの参照をしてる場合も1メソッドで参照先テーブルの内容を取ってこられる。

バリデーションのコードも本当に必要な最小限。

なによりも、SQLとかSmartyとかURLとかを隠蔽しない。だから便利クラスを使って出来ないことをしたければゴリゴリ書いてしまって何も不都合がないし、使う人は、その不都合がないことを見てすぐ解る。と思う。多分。

StrutsからRoRにいたるまで、URLを隠蔽する仕組みっていうのは、ブラウザ上で何かしたとき不都合があったらどのファイルを見ればいいのかわからない。いや、規約に従ってるから知ってる人はわかるんだけど、やっぱり隔靴掻痒な感じが否めない。それにルールを知らない人にはわからない。アドレスバーに表示されてるファイルを編集すればいい、ってルールでいいじゃん。mod_rewriteとかメンドクセ。

Strutsにページ遷移を支配されてると、じゃあJavaScriptでページ遷移するときはどーすりゃいいの、struts_config.xml読んでその通りにすんのかヨみたいなことになる。

たとえば一覧のページをめくっていくようなUIで、URLが
hostname/path-to-listpage.php
 ↓
hostname/path-to-listpage.php?page=1
 ↓
hostname/path-to-listpage.php?page=2
と変化すればいいことになってれば、後からJavaScriptで自動でページめくりしたければちょろっと書けばいいということが誰にでも解る。ここが大事。そのフレームワークを知らない人には手が出せないなんて、そんなの間違ってる。困ったときに他の人に手伝ってもらったりしないつもりならいいかも知れんけど。

フレームワークは「小さな政府」がいい。あんまりでしゃばらないのがいい。

フレームワークに用意されてる範囲で出来ることを
  • 知ってる人は超簡単にできる
  • 知らない人は自分のやり方でできる
フレームワークに用意されてない範囲のことを
  • 知ってる人はフレームワークの助けを借りて少し楽にできる
  • 知らない人は自分のやり方でできる
そういうのが、いい。


この記事に対するコメント

この記事に対するコメントの投稿



管理者にだけ表示を許可する

この記事に対するトラックバック

トラックバックURL
http://tockri.blog78.fc2.com/tb.php/49-1be34363
この記事にトラックバックする(FC2ブログユーザー)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。