2006-08-01から1ヶ月間の記事一覧

メジャーリリース?

Moony、0.11.xの次はメジャーリリースかなぁ。そろそろ実案件に投入してもいいかも。

リリース延期

Moony 0.11.0のリリース、今月中には無理そうです…。 ソースはほぼできたけど、ドキュメントがまだ手付かずの状態。もうしばらくお待ちくださいませ。

初期化するメソッド

メソッド名で悩む。 init initialize 慣用的に「init」で通用すると思うけど、他で省略していないのでなんだか気持ち悪い。

Smarty

テンプレートエンジンとしてSmartyも使えるように。 フロントコントローラで以下のように記述: require_once '/path/to/Moony.php'; require_once '/path/to/Smarty.class.php'; $moony = new Moony; $moony->useSmarty(array( 'compile_dir' => 'templates_…

あれー?

Bloglinesが動いていないような気がする…。ときどき挙動があやしい。

若冲と江戸絵画展

ようやく行ってきた*1、最終日。来月2歳になる息子を連れて、親子3人で上野の国立博物館へ。入場制限中、待ち時間10分。この時点で息子、飽きる(当然だ)。半分ぐずり気味の息子を抱えて、急ぎ足で入館、鑑賞。屏風の光の当たり具合がきれいだった。虎の絵…

出力フィルター

出力時のエンコーディング変換をFilterクラスに委ねることにしたんだけど、無条件に全てのアクションに適用されてしまうというのも困るような気がする。スクリプト側から画像を出力する場合とか。どういうふうにするかもう少し考えてみる。

テンプレートエンジンのライブラリ

なんか仕事の合間にゴニョゴニョやってたらテンプレートエンジンができたよ! メソッド一覧: assign($var, $value = NULL) fetch($template) display($template) escape($str) plugin($name, $param = NULL) __call($name, $params) setTemplateDir($dir) se…

Savant

http://phpsavant.com/yawiki/index.php?area=Savant2 http://phpsavant.com/yawiki/index.php?area=Savant3 素のPHPを扱うテンプレートエンジンを見つけた。Savant2はPHP4/5、Savant3はPHP5に対応。

そうそう、

Template Liteもよさげ。Smartyより軽くて高速、らしい。

やっぱりテンプレートエンジン

Smartyは使わない方向で。「ちゃっちゃと作る」には不向きだよ。Moony_Templateというクラスを用意、素のPHPファイルをテンプレートとして扱えるようにする。ただし、将来的にテンプレートエンジンを差し替えられるようにするかもしれない。Moony_Templateの…

アクションでやること

簡単に分類すると: Initialization: 初期化 Conversion: 入力値変換 Validation: 入力値検証 Execution: 処理の実行 それぞれをアクションクラスのメソッドとして定義する: Action::initialize() Action::convert($converter) Action::validate($validator) …

テンプレートエンジン

何だかんだ言ってSmartyは便利。プラグインの機構をきちんと備えているし。ただすこし機能過多かもしれない。PHPは言語構造としてテンプレートのように扱えるけど、使いづらいと思うこともしばしば。Moonyのビュー部分は引き続きSmartyベースで行こうかな、…

PHPカンファレンス2006に行ってきた

URL: http://www.php.gr.jp/seminar/20060819/ http://www.php.gr.jp/seminar/20060819/prog.html 気になった: まだまだPHP4の使用率が高い模様 http://www.hardened-php.net/ PHP6はICUを利用してユニコード対応 PHP6からfilterエクステンションが標準添付 …

自動生成時のコメント

"Generator.php"なのに"[create]"っていまいちだなー。

自動生成ツール

Moony 0.11.x、自動生成ツールを実装中。カレントディレクトリを「/www」だとすると:アプリケーションの初期化 $ php /path/to/Moony/Generator.php -init $ [create] /www/actions/ $ [create] /www/templates/ $ [create] /www/modules/ $ [create] /www/i…

8月15日、

通りで靖国神社反対のデモが行われていて、その後ろを街宣車が走っている。 大音量で、「靖国神社に仇なすデモ隊を粉砕しろー」。いいのか、その組み合わせで。

Rails本

Ruby on Rails入門優しいRailsの育て方作者: 西和則出版社/メーカー: 秀和システム発売日: 2006/07/31メディア: 単行本購入: 2人 クリック: 237回この商品を含むブログ (118件) を見る昼休みに三省堂まで行って買ってきた。冒頭のオブジェクトに関する説明が…

まだモジュール取得機能強化中(Moony 0.11.x)

そもそも直接インスタンスを取得できる必要があるのか、というと案外ないかも。というわけで、Zend Frameworkのように適宜ロードする方式にしてみましたよ: $moony = new Moony; $moony->setModuleDir('/path/to/modules'); ...上記のようにMoonyを起動する…

モジュール取得機能強化中(Moony 0.11.x)

モジュールのインスタンスを取得する際、コンストラクタに必要な引数を配列で渡せるように。 一応任意の数だけ引数を渡せるようにしたけど、3つより多い場合は内部でeval関数を使うから速度低下に注意。コンストラクタの引数だからそんなに多くないと思うけ…

Moony 0.11.xのプラグインモジュール機能

以前検討していたコンテナ機能だけど、結局「プラグインモジュール」として利用できるように。Moony::setPluginDir($dir)Moony::setModuleDir($dir)を使用してディレクトリを設定しておくと、そのディレクトリ内のクラスをインクルード、インスタンスをアク…

Moony 0.11.xのクラス構成

Moony 0.11.xのクラス/ファイル構成が大体決まった。すごくシンプルになりそう。 クラス名 機能 Moony フロントエンド、各種設定 Moony_Context コンテキスト情報の保持、プラグインモジュール取得 Moony_Controller コントローラ Moony_Filter 入力値変換、…

標語とか

Moonyは「手っ取り早い」フレームワーク、ということで。 きちんとした業務アプリを作るには向かないかもしれないけど、ちょっとしたアプリを手早く作るのはありかな。

カバーしない部分

いや、もちろん業務で使えるレベルにはするつもりだけど。ただ、いろいろと機能が必要になってきた場合、例えばSymfonyのようなフルスタックなフレームワークを採用した方が利点が大きいかもしれない。Moonyがカバーしない部分: DBアクセス ログ出力 DIコン…