«前の日記(2003-07-27) 最新 次の日記(2003-07-29)» 編集

Matzにっき


2003-07-28 [長年日記]

_ [機械]CD-ROMドライブ(その2)

やはり複数の環境で動作確認しないと故障と断言してはいかんだろう、と思い、 本当に久しぶりにWindowsをブートしてみた。何ヶ月ぶりだろう。

すると動くではないか、なんと、悪いのはドライバであったか。

じゃあ、カーネルをupgradeしたときにドライバにバグが混入したのだろうな、 しかたないなあ、と思って普段の環境に戻したのだが、なんと

動くではないか

こういうリセットすれば動くとかいう「マジック」な対応は好きじゃないんだが。 「コンピュータの機嫌が悪くなったのでリセット」ではまるで素人ではないか。

ところで、久しぶりに使ったWindowsはやっぱり使いにくいOSであった。 どうも私とは相性が悪いみたい。慣れてないってことだとは思うんだけど。

_ [言語]PHP(その2)

PHPについて書いたら、いくつか反応をいただけた。ありがたい。

トラックバックしていただいたishinaoさんのものが 一番詳細のようだ。

まとめるとPHPの良い点というのは

  1. HTMLに埋め込める
  2. DBアクセスライブラリが標準
  3. Apacheモジュールのできが良い
  4. ドキュメントのできが良い

というあたりだろうか。(1),(2)あたりはRubyでもeRubyやDBI/Rubyで対応できているのだが、 標準というところが大きいのだろうか。Rubyも1.8.1あたりではDBI/Rubyを標準添付にしようか。

ところで、「オブジェクト指向でないから」という意見をいただいたが、 これは理解できない。理解できないだけで否定するわけではないが。

PHPにもオブジェクト指向機能があることを考えると、 この意見の意味は「純粋オブジェクト指向言語でないから」という意味だと思うのだが、 私自身はその方が良いと思ったことは一度もない(まあ、Rubyの作者としては当たり前なんだけど)。 世の中にはそうでない方が良いと感じる人もいるらしいことは前から知っているけれども、 それがなぜなのかはまだ知らない。実に興味深い。

ところで、世の中のプログラミング言語には

  • 悪口や愚痴しか聞かないけど、よく使われるもの
  • ほめる人とけなす人の両方がいるもの
  • もっぱらほめる人が多いもの

がある。Perl、PHPやC++は最初のもののような気がする。 「よく使われる」ってところが重要で、これがないと「消え行く言語」になってしまう。 2番目の典型例はLispかな。 RubyやPythonは3番目かなあ。 言語のどのような特徴がこれらを引き起こしているかも今後ぜひ考察していきたい。

追記: Pythonはちょっと2番目入ってるかも。 そういえば、OSCONのDave ThomasのRuby in a Dayチュートリアルの最中にGuido van Rossumが登場して、

Rubyコミュニティの連中はPythonについて誤解を広めている

と文句したそうだ。心当たりはないんだけど。でも、その場に居合わせたかったなあ。 どう考えても、見ものだったはず。

_ [言語]「悪口しか聞かない割によく使われる」

頻繁に使われるからこそ欠点も見えてくる」 というのはもっともで、その辺を意識して

「よく使われる」ってところが重要

って書いたわけです。だから私は「悪口しか聞かない割によく使われる」とは思ってません。

しかし、

  • 悪口を言いたくなるのにやっぱり使う心理
  • 悪く言われる言語の欠点は無くすことができるか
  • 悪口を言いたくならないようなよく使われる言語が存在できるか

などには興味があります。

本日のツッコミ(全9件) [ツッコミを入れる]
_ rufein (2003-07-28 15:18)

自分の場合は悪口をいいたくなるけど使わざるを得ないという状況です。既に使う言語が決まっていたプロジェクトに放り込まれたので。<br>それから、<br>・よく使われる言語はその分ノウハウがたまっているので、次の開発にも使う(新しい言語に移らない)<br>・よく使われる言語しか使えない人がいるので、その人に合わせて仕方なく使う<br>という状況も考えられるのではないでしょうか。

_ haruki (2003-07-28 16:18)

オブジェクト指向でなくても、それほど苦じゃなくできることは、<br>オブジェクト指向を使わずに出来たほうが、<br>考えることが1つ減って楽じゃないですか?

_ まつもと (2003-07-28 16:38)

それは「純粋オブジェクト指向言語の方が考えることが増える」ということが前提になってますよね。<br><br>しかし、実際Rubyでは「オブジェクト指向じゃなくてもそれほど苦じゃなくできること」については「オブジェクト指向を意識しなくてもできる」ようになっていると思ってます。ということは、別に考えることは増えないわけですよね。<br><br>ちゅーことはちっとも楽になってないんじゃないかと。<br><br>それなのにそう思う人たちが(harukiさんに限らず)たくさんいるということは、私の見落としているなにかがあるのか、あるいは誤解が広まっているのか。

_ haruki (2003-07-28 17:40)

「自転車って倒れないようにバランス取らないといけないから、<br>歩くか走って行くほうが楽じゃないですか?」<br>「いやいや、またいで地面をければ、歩くのと同じように使えるよ。それに、乗れるようになれば、普通の道なら、バランスなんて意識しないで大丈夫だよ。」<br>「でも、やっぱり、難しそうだからやめとく。」

_ まつもと (2003-07-28 17:50)

うーん、このたとえ話の意図は分かるような気がするんですが、だからどうするか、ということが重要ですよね。<br><br>だから「思いこみで損してるね」とあわれむ(だけ)なのか、<br>だから「自転車なんて乗り物は要らないんだ」なのか。<br>個人的には「大衆は愚かだ」という結論は出したくないのですが。

_ pp (2003-07-28 19:23)

PHPとPerlは分かります。現在rubyに挑戦中なのですが、<br>オブジェクト指向の部分でつまづいています。<br>クラスやメソッドの言葉の意味は本を読んで(多分)理解したのですが、<br>PHP&Perlの関数と比べてオブジェクトはどういうメリットがあるのでしょうか。<br>「再利用できる」とあるのですが実業務にあった具体例はないでしょうか。<br>オブジェクトの説明も鳥や動物を例に取るのではなく、<br>実際に使えるコードで説明してある書籍やリンクなど教えてくれると嬉しいです。

_ hiroshi (2003-07-29 12:33)

>>pp amazon.co.jpなどで書評を読むといいかと。<br><br>「考えることが増える/減る」「開発が苦/楽」というのは必ずしもリンクしているとは思えません。頭の中でちょっと考えてあげるだけでコーディング量を三分の一にできるとしたら、そういうふうにしたいと思いませんか?<br>最近、オブジェクト指向を知らない人が書いたVBのコードをオブジェクト指向+Pythonで大幅に書き換えたときに行数にして3分の1どころか10分の1とかになったりしたのでそう思いました。

_ G7 (2003-07-31 04:52)

>オブジェクト指向でなくても、それほど苦じゃなくできることは、<br>>オブジェクト指向を使わずに出来たほうが、<br><br>それ、オブジェクト指向の代わりに、それ以外の何らかの別の指向(?)を使ってる筈ですから、<br>考えることは減らないですね。<br><br>それよりも、<br><br>「オブジェクト指向以外のXXXを使うほうが、オブジェクト指向を使うよりも、<br>それほど苦じゃなくできることは(以下略)」<br><br>という状況を探すほうが、意味が有ると思います。<br><br>「オブジェクト指向じゃない」という状態がどういう状態なのかを<br>はっきり(=意識)させたほうが良さそう。<br>それは(あなたにとって)XXXかも知れないしYYYかも知れない。

_ side7 (2003-08-01 15:53)

>>pp PHPにもオブジェクト指向が含まれてるよ。

お名前:
E-mail:
コメント:
[]

«前の日記(2003-07-27) 最新 次の日記(2003-07-29)» 編集

track feed Matzにっき Creative Commons License This work is licensed under a Creative Commons License.