[#37248] [Feature:1.9] Enumerator#inspect — "Yusuke ENDOH" <mame@...>

遠藤です。

12 messages 2008/12/02

[#37337] [Feature #841] Object#self — "rubikitch ." <redmine@...>

Feature #841: Object#self

13 messages 2008/12/09

[#37513] Current status of 1.9.1 RC1's issues — "Yugui (Yuki Sonoda)" <yugui@...>

Hi, folks

14 messages 2008/12/20
[#37516] Re: Current status of 1.9.1 RC1's issues — Masatoshi SEKI <m_seki@...> 2008/12/20

咳といいます。

[#37576] [BUG:trunk] encoding for stdio's — "Yugui (Yuki Sonoda)" <yugui@...>

Yuguiです。

11 messages 2008/12/24

[ruby-dev:37246] Re: RSS::Maker.create(version)

From: "Akinori MUSHA" <knu@...>
Date: 2008-12-02 11:31:11 UTC
List: ruby-dev #37246
At Mon, 1 Dec 2008 21:48:34 +0900,
Kouhei Sutou wrote:
> In <86skp8vcvv.knu@iDaemons.org>
>   "[ruby-dev:37238] Re: RSS::Maker.create(version)" on Mon, 1 Dec 2008 11:32:31 +0900,
>   "Akinori MUSHA" <knu@iDaemons.org> wrote:
(snip)
> >  私は RSS::Maker(version) という案には賛成です。
>
> もう1つ思いついたのですが、これではどうでしょうか?
>
>   maker = RSS::Maker[version].new
>
> or
>
>   maker = RSS::MAKERS[version].new
>
> こっちの方が変なことをしていないように見える気がします。

確かにハッシュだと変なことをしていないように見えますが、むしろ
将来高度なこと、たとえば version 文字列に表記揺れを認めるとか、
追加パラメータを取り、(クラスでなく) new/make メソッドを持つ
オブジェクトを生成して返すとか、モジュールを動的ロード化する
とか、そういうことを実現する際の足かせになる懸念があります。

もちろん .[]() や Hash#default_proc で対応は可能でしょうが、
それこそ変なことをしていると言われそうです。

従って、ハッシュ(に見えるもの)を露出させるよりもメソッドとして
提供する方がインターフェースとしては好ましいと私は思います。

--
Akinori MUSHA / http://akinori.org/

In This Thread