learn-ruby-in-kansai:137
From: tomoya <tomoya@c...>
Date: Sun, 26 Dec 2004 20:56:38 +0900
Subject: [learn-ruby-in-kansai:137] Re: WIN32OLE についての質問2
cuzicです。 > 酒井です。 > > cuzicさん、ありがとうございました。 おかげで①は解決しました。 > cell.item(i, j).Borders(position('l')).Weight = line_w('s')が > cell[i, j].Borders(position('l')).Weight = line_w('s')と記述できるようになり > ました。 いえいえ。 酒井さんの質問で新しいテクニックを思いつくことができました。 こちらこそ、ありがとうございました。 > しかし、module定義の中のdef v.cell= cellとdef v.method_missing(name,*args) > の意味が理解できません。勉強会で教えてください。 特異メソッドの定義と method_missing は、たしかに理解しにくいですね。 これは、動的な言語である Ruby の特徴を活かした部分です。 特異メソッドと method_missing はよくある静的言語のオブジェクト指向の 方法論とかなり異なるので、賛否が分かれるところだと思います。 しかし、こんなにパワフルです。 まぁ、難しい話は勉強会で。 > > なかなか参考にできる例がVBAしかなくRubyらしくWin32OLEでEXCELを使うことは、難 > しい。 > VBAの例題は、だらだら機能を紹介記述する例が多いのとRubyのOOPに対する知識不足 > も原因の1つです。 Ruby の能力を引き出すプログラミングをするには従来の OOP の理解では 不十分な部分は多いと思いますが、そのあたりを解説した書籍なども少ないです ね。 私の連載では Win32OLE の使い方を紹介することが主な目的ですが、その中で 必要に合わせて、今回での記事のように Ruby でのすごいやり方を 説明していく予定です。 ご期待ください。 > 1.moduleによる拡張。 moduleは、Classにincludeして使うものと思っていました。 > 2.. yieldの使い方。 yieldについては、本を読んでも今1つ使い場 > 所が不明でした。 何を知らなかったかなど、教えてくださいまして、ありがとうございます。 Object#extend による拡張や、yield の使い方をこの記事を読んで 理解したという方は意外に多いかもしれませんね。 ほかのみなさんも、今回の記事で、何が知らなくて、何をすごいと思ったかを 教えてください。 今後 記事を書いていくときや、勉強会での内容の参考にしていきます。 みんなで充実した内容の勉強会を作っていきましょう。 よろしくお願いします。 -- KAWANISHI Tomoya <tomoya@c...> -- ML: learn-ruby-in-kansai@r... 使い方: http://QuickML.com/
132 2004-12-25 13:38 [sakai-n@m... ] Re: WIN32OLE についての質問2 -> 137 2004-12-26 12:56 ┗[tomoya@c... ]