From speakillof @ yahoo.co.jp Sun Jun 26 12:59:04 2005 From: speakillof @ yahoo.co.jp (speakillof) Date: Sun, 26 Jun 2005 12:59:04 +0900 (JST) Subject: [cgikit-dev 31] Aspect Oriented Language: Logger and Profiler Message-ID: <20050626035904.20904.qmail@web2701.mail.mci.yahoo.co.jp> speakillofです。 AspectRの車輪の再発明ですが、 Ruby 用の Aspect Oriented Language 用のクラスです。 (実はAspectR程の機能は無いのですが、 ライセンス上の問題で再発明せざるを得ませんでした) AOP自体はどうでも良くて これを使って簡易のLoggerとProfilerを CGIKit用に作りました。 簡単なテストを 2.0.0 preview1 で行っています。 CKWiki の webrick-app.rb の require の行の後に require 'aop' require 'aop_utils' module CKWiki class MainPage < CGIKit::Component include_aspect Aspect::SimpleProfilerAspect, {:profile => /^append_to_/ } end end を加えると、エラー出力にappend_to_responseにかかる時間が表示されます。 同じようにAOPを使ってdebug_contextも実装してあります。 # 作るのが遅くなってゴメンナサイ。 # 本当はdebug_contextが実装される前に # 出したかったのですが…。 利点は CGIKit 本体に一切手を加えずに Log と Profile を取る事が出来る点です。 AOP自体には他の使い方が色々あるみたいですが、 私には今のところその意味をあまり見出せないです。 __________________________________ Save the earth http://pr.mail.yahoo.co.jp/ondanka/ -------------- next part -------------- テキスト形式以外の添付ファイルを保管しました... ファイル名: aop.tgz 型: application/x-compressed サイズ: 1968 バイト 説明: aop.tgz URL: http://lists.sourceforge.jp/mailman/archives/cgikit-dev/attachments/20050626/12767fe0/attachment.bin From suzuki @ spice-of-life.net Sun Jun 26 19:29:37 2005 From: suzuki @ spice-of-life.net (SUZUKI Tetsuya) Date: Sun, 26 Jun 2005 19:29:37 +0900 Subject: [cgikit-dev 32] Re: Aspect Oriented Language: Logger and Profiler In-Reply-To: <20050626035904.20904.qmail@web2701.mail.mci.yahoo.co.jp> References: <20050626035904.20904.qmail@web2701.mail.mci.yahoo.co.jp> Message-ID: 鈴木です。 On 2005/06/26, at 12:59, speakillof wrote: > AspectRの車輪の再発明ですが、 > Ruby 用の Aspect Oriented Language 用のクラスです。 > (実はAspectR程の機能は無いのですが、 > ライセンス上の問題で再発明せざるを得ませんでした) > > AOP自体はどうでも良くて > これを使って簡易のLoggerとProfilerを > CGIKit用に作りました。 debug_contextを書かなくていいのが便利ですね。 オーバーライドされるメソッドで逐一debug_contextを呼ぶのは 結構面倒ですから。 > 利点は CGIKit 本体に一切手を加えずに > Log と Profile を取る事が出来る点です。 > > AOP自体には他の使い方が色々あるみたいですが、 > 私には今のところその意味をあまり見出せないです。 私も他の使い道はわかりませんが、 ログとプロファイルを取れるだけでも便利です。 Aspectをコミットしていただければロギングを修正します。 ----------------------------------- 鈴木鉄也 (SUZUKI Tetsuya) suzuki @ spice-of-life.net http://www.spice-of-life.net/ From speakillof @ yahoo.co.jp Mon Jun 27 19:00:56 2005 From: speakillof @ yahoo.co.jp (speakillof) Date: Mon, 27 Jun 2005 19:00:56 +0900 (JST) Subject: [cgikit-dev 33] Re: Aspect Oriented Language: Logger and Profiler In-Reply-To: Message-ID: <20050627100056.1061.qmail@web2702.mail.mci.yahoo.co.jp> speakillofです。 > 鈴木です。 > > > これを使って簡易のLoggerとProfilerを > > CGIKit用に作りました。 > > debug_contextを書かなくていいのが便利ですね。 > オーバーライドされるメソッドで逐一debug_contextを呼ぶのは > 結構面倒ですから。 こういうところがAOPの使い道の1つですね。 > > 利点は CGIKit 本体に一切手を加えずに > > Log と Profile を取る事が出来る点です。 > > > > AOP自体には他の使い方が色々あるみたいですが、 > > 私には今のところその意味をあまり見出せないです。 > > 私も他の使い道はわかりませんが、 > ログとプロファイルを取れるだけでも便利です。 > Aspectをコミットしていただければロギングを修正します。 じゃあ、テストを書いたらコミットしますね。 コミット先のディレクトリはどこにしますか? lib以下でも良いですが、lib/aopの方が適切かもしれません。 ライセンスはCGIKitと同じで結構です。 __________________________________ Save the earth http://pr.mail.yahoo.co.jp/ondanka/ From speakillof @ yahoo.co.jp Mon Jun 27 19:09:43 2005 From: speakillof @ yahoo.co.jp (speakillof) Date: Mon, 27 Jun 2005 19:09:43 +0900 (JST) Subject: [cgikit-dev 34] =?iso-2022-jp?b?GyRCOXE6XTI9GyhC?= Message-ID: <20050627100943.63571.qmail@web2703.mail.mci.yahoo.co.jp> speakillofです。 日記にかかれていましたが、 > UTF-8N統一でRubyスクリプトでメッセージカテゴリ作るほうが > 簡単なんじゃないか。 を採用するなら、テンプレートの文字コードを UTF-8に固定してしまう方が良いでしょう。 # これはこれで反論が大きそう。 メッセージをUTF-8Nに固定、テンプレートを任意の文字コード にしても良いです。 が、後でメッセージの文字列をテンプレートの文字コードに 変換しないといけないですから、 結構面倒かもしれません。 # iconvの悪夢再び。 __________________________________ Save the earth http://pr.mail.yahoo.co.jp/ondanka/ From suzuki @ spice-of-life.net Tue Jun 28 16:30:32 2005 From: suzuki @ spice-of-life.net (SUZUKI Tetsuya) Date: Tue, 28 Jun 2005 16:30:32 +0900 Subject: [cgikit-dev 35] Re: Aspect Oriented Language: Logger and Profiler In-Reply-To: <20050627100056.1061.qmail@web2702.mail.mci.yahoo.co.jp> References: <20050627100056.1061.qmail@web2702.mail.mci.yahoo.co.jp> Message-ID: <3814665D-0066-4B8A-A1D9-BF2C8F286E43@spice-of-life.net> 鈴木です。 On 2005/06/27, at 19:00, speakillof wrote: >> 私も他の使い道はわかりませんが、 >> ログとプロファイルを取れるだけでも便利です。 >> Aspectをコミットしていただければロギングを修正します。 > じゃあ、テストを書いたらコミットしますね。 > コミット先のディレクトリはどこにしますか? > lib以下でも良いですが、lib/aopの方が適切かもしれません。 lib/aop/ でお願いします。 AOPを使うCGIKit側のクラス (Loggingなど) は今ま で通り lib/cgikit/ に置きます。 > ライセンスはCGIKitと同じで結構です。 了解しました。 ----------------------------------- 鈴木鉄也 (SUZUKI Tetsuya) suzuki @ spice-of-life.net http://www.spice-of-life.net/ From suzuki @ spice-of-life.net Tue Jun 28 16:30:35 2005 From: suzuki @ spice-of-life.net (SUZUKI Tetsuya) Date: Tue, 28 Jun 2005 16:30:35 +0900 Subject: [cgikit-dev 36] =?iso-2022-jp?b?UmU6IBskQjlxOl0yPRsoQg==?= In-Reply-To: <20050627100943.63571.qmail@web2703.mail.mci.yahoo.co.jp> References: <20050627100943.63571.qmail@web2703.mail.mci.yahoo.co.jp> Message-ID: <6C00E9C9-B33C-4A64-B869-BBF3579DA831@spice-of-life.net> 鈴木です。 On 2005/06/27, at 19:09, speakillof wrote: >> UTF-8N統一でRubyスクリプトでメッセージカテゴリ作るほうが >> 簡単なんじゃないか。 > を採用するなら、テンプレートの文字コードを > UTF-8に固定してしまう方が良いでしょう。 テンプレートはXML文書ですから、 テンプレート・メッセージ共にUTF-8に固定するのもありかなと は思います。 メッセージはUTF-8Nで固定、テンプレートは任意の文字コードが いいかと思いますが、この場合はメッセージの文字コードを テンプレートに合わせて (自分で) 変換する必要がありま す。 CVS HEADでは、この方針で試験的に実装してみました。 どちらにしてもメッセージがUTF-8固定であれば CGIKit本体の実装にテンプレートの文字コードは影響しないので、 「メッセージカテゴリを使う場合、テンプレートの文字コードに UTF-8を推奨」 ということでいいかなと思います。 ----------------------------------- 鈴木鉄也 (SUZUKI Tetsuya) suzuki @ spice-of-life.net http://www.spice-of-life.net/