tonextone.com/note/

Last-modified: 2006-09-01 (金)

Copyright ©master_at_tonextone.com All rights reserved.

PHP on Cake

Posted : 2005-07-17 00:00 / Category : [開発日誌]
Ruby の Rails, Perl の Catalyst のデモンストレーションムービーを見て感動した。
(動画:Catalyst, Rails)
で、同様の PHP 版フレームワーク、Cakeを試してみた。
まずは、Tutorial にしたがって、これを作ってみた。
まだ、開発途上っぽいが、ザックリ使えたので、好感触。

以下、手順。

DB 作成して、config/database.php で DB 設定。
PostgreSQL でも問題無さそう。

で、いよいよ bake 。
      $ cd /path/to/cake/;
      $ ./scripts/bake.php controller Post;
      $ ./scripts/bake.php model Post;
      $ ./scripts/bake.php view Post/index Post/detail Post/add Post/edit;
これで、必要なファイルが deploy される。
で、各ファイルを Tutorial 通りに編集したのが、 これ

トラックバック

(1)
[ このエントリへはツッコミ出来ません ]

Bayesian filter その2

Posted : 2005-07-02 00:00 / Category : [開発日誌]
先日のエントリの続き。
とりあえず、POPFile の SQLite を .dump してみた。
単語テーブル(words)と、バケツテーブル(buckets)があって、
「どの単語がどのバケツに何回入ったか」が、
リレーションテーブル(matrix)に記録される。
  1. 単語テーブルのレコードの、登録、更新、削除の条件。
  2. リレーションテーブルのレコードの、登録、更新、削除の条件。
  3. リレーションテーブルから分類の尤もらしさを計算。
この辺のアルゴリズムの調査を進めよう。
[ このエントリへはツッコミ出来ません ]

Bayesian filter その1

Posted : 2005-06-22 00:00 / Category : [開発日誌]
ある確率を計算するシステムを、逐次トレーニングすることによって、
その確率の「主観的な」尤もらしさを高めていくという考え方。 (参考)
結構採用されているのが Bayesian filter で、SPAM フィルタなどで実装されている。
Google でも援用されているらしい。

sparQuery でも、そのうち導入しようかと思います。
実装例が少ない。愛用中の POPFile(perl) でも、参考にするか。あるいは bsfilter(ruby) か。
[ このエントリへはツッコミ出来ません ]

JS::Lib その1

Posted : 2005-06-06 00:00 / Category : [開発日誌]
Ajax の勉強を兼ねて、こんなのを作っています。
俺は JavaScript 初心者なので、ゴニョゴニョするには出回ってるライブラリを使うとこから始めています。

以下まとめ:

Ajax 系

まず、
  1. Sajax
  2. JPSPAN
は、Ajax やりたい時に便利な JavaScript を PHP で自動生成しようというヤツで、
Perl の HTML::Prototype らへんと同じ思想です。だと思います。
俺は初心者なので、とりあえず Sajax 使ってました。

次に、
  1. prototype
  2. Sack
  3. JKL.ParseXML
は、JavaScript ライブラリそのもので、
所詮自動生成な上記 Sajax, JPSPAN よりも、JavaScript 的にいろいろ出来ます。
特に、prototype はこんな事もできるので、Sajax から乗り換え検討開始。

テンプレート系

  1. TrimPath
  2. Jamritas
  3. JKL.Hina
TrimPath では、テンプレートブロックを普通に書いておくと、
DOM 的に正しい解釈で HTML 要素が書き換えられてしまうらしく、
textarea 内に書くのが良いらしいです(参考)。これは痛い。
俺は、JKL.Hina を使っています。
[ このエントリへはツッコミ出来ません ]

JS::Object その2

Posted : 2005-05-27 00:00 / Category : [開発日誌]
昨日のエントリの続き。
結局、
myObject = {
            myProperty : 'プロパティ',
            myMethod : function() { /*メソッド*/ }
           };
は、
myObject = new (
                function(){
                  this.myProperty = 'プロパティ';
                  this.constructor.prototype.myMethod = function() { /*メソッド*/ };
                }
               );
と、等価という風に理解した。

参考:
http://wsabstract.com/jsref/
http://www.hawk.34sp.com/stdpls/jsnotes/
http://www.interq.or.jp/student/exeal/dss/ejs/
http://www.parkcity.ne.jp/~chaichan/src/2ndthema.htm
[ このエントリへはツッコミ出来ません ]