[#30426] CGI でグラフを描くときにお勧めのライブラリは? — 堀川 久 <vzw00011@...>
こんにちは。
宮内といいます。
高橋征義です。
[#30453] syntax check without execution? — Tanaka Akira <akr@...17n.org>
最近、eRuby のまねごとをしていて、そのなかで Ruby のコードを生成してい
まつもと ゆきひろです
In article <994217165.945078.13509.nullmailer@ev.netlab.jp>,
まつもと ゆきひろです
Yukihiro Matsumotoさんの<994219298.882129.13585.nullmailer@ev.netlab.jp>から
[#30479] Object#dup — "Shin'ya Adzumi" <adzumi@...>
あづみです。
まつもと ゆきひろです
あづみです。
わたなべです。
[#30507] Ruby/Tk TkPhotoImage#data — Noritsugu Nakamura <nnakamur@...>
[#30512] open errno EALREADY triggerd — "Inoue" <inoue@...>
井上です。
井上です。
なかだです。
[#30514] Ruby module frame work? — Takahiro Kambe <taca@...>
こんにちは。
まつもと ゆきひろです
In message <994643239.367096.2557.nullmailer@ev.netlab.jp>
[#30522] Walrus (WEB Application Server) — NAKAJIMA Taku <tnaka@...>
中島@ブレーンです。
[#30523] RTtool & RDindex new package — rubikitch <rubikitch@...>
るびきちです。
こんにちは,とみながです.
From: Kazuto Tominaga <tominaga@snake.m.ns.it.teu.ac.jp>
[#30529] InterBase を使用したい — "YOUJI KUROKAWA" <CQE10242@...>
環境
黒川です たいへんおせわになっております。
[#30530] Question about script on the book "Ruby nyuumon" — NAWATE Masahiko <agul@...>
縄手@松江と言います。
From: NAWATE Masahiko <agul@mag.shimane-u.ac.jp>
縄手@松江です。
From: NAWATE Masahiko <agul@mag.shimane-u.ac.jp>
At Tue, 10 Jul 2001 00:26:41 +0900,
From: "Akinori MUSHA" <knu@iDaemons.org>
[#30551] RTtool 0.1.4 (was Re: RTtool & RDindex new package) — Takahiro Kambe <taca@...>
こんにちは。
From: Takahiro Kambe <taca@sky.yamashina.kyoto.jp>
In message <20010710035601.TZZG14050.mail.rdc1.kt.home.ne.jp@witch>
[#30552] 名前の異なるコンストラクタを複数持つには? — keiichi matsunaga <ma2@...>
はじめまして。松永と言うものです。
[#30586] case 文で文字列を判断したい — Takuo Tabata <taku@...>
[#30601] ruby-1.6.4 build on gcc-3.0/glibc-2.2.3/kernel-2.4.7pre5 — KUSUNOKI Masanori <masanori@...>
楠です
[#30614] ライブラリから別のライブラリを呼び出すときのパスについて — keiichi matsunaga <ma2@...>
松永です。
[#30622] RDtool requires amstd? — Kazuhiro NISHIYAMA <zn@...>
RDtool 0.6.10のインストールが
[#30649] \ mark in path of a script — "Y.ITO" <gfh05223@...>
はじめまして。Ruby/eRuby を最近使い始めたばかりです。
[#30655] XMLParser & DTD — skoba@... (KOBAYASHI Satoshi)
はじめまして、小林@豊橋技術科学大学です。
[#30680] overwride method — "Inoue" <inoue@...>
井上です。
[#30692] Ruby 開発環境のご紹介 — 斉藤和樹 <QZS01353@...>
はじめまして、斉藤と申します。
なひです。
[#30705] 下位バイト 0x5c の文字が化けてしまいます — "ANAKI Kyosuke" <anaki@...>
初めまして。穴木と申します。まったくのRuby初心者です。どうぞよろしくお願い
At Mon, 23 Jul 2001 20:18:45 +0900,
[#30725] mswin32 版の改行コード — "Y.ITO" <gfh05223@...>
先日はeRuby mswin32最新版の件でお世話になりました。
[#30731] irb で Thread.critical = true — Kazuhiro NISHIYAMA <zn@...>
irbでThread.critical = trueにすると別スレッドが動き続けるのですが。
[#30734] UML クラス図と Ruby の記述についての対応 — Ken-ichi HASHIMOTO <ken@...>
橋本@福井県在住です。
[#30738] cgi について — 岩本次郎 <jiro3@...>
岩本次郎です。
[#30755] ruby-orbit support server side — Dai <MAP2303@...>
[#30764] int/int => float? — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
あづみです。
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
たけ(tk)です。
まつもと ゆきひろです
KONISHI Hiromasaです。
いけがみです。
けいじゅ@日本ラショナルソフトウェアです.
あべです。
[ruby-list:30736] Re: UML クラス図と Ruby の記述についての対応
けいじゅ@日本ラショナルソフトウェアです. In [ruby-list :30734 ] the message: "[ruby-list:30734] UML クラス図と Ruby の記述についての対応 ", on Jul/28 14:32(JST) Ken-ichi HASHIMOTO writes: >橋本@福井県在住です。 > はじめまして、初めてruby-listにメールを出します。 > > さて、本題ですが、「UMLクラス図」と「Rubyのクラス定義」について > どのように対応しているか?ということです。 > <背景> > UnixのX上(またはWin32上)で動作するUML図もかけるDiaというドローソフト > があります。 > また、dia2codeとよばれている、diaの保存形式から C++/Java/(C?)のソースを > 生成してくれるツールもあります。 > それぞれ ソース公開されGPLだったと記憶しています。 > # 補足: 他の高いTOOL(例:バラ)などは、逆もできるなど利点がありますが > # 個人ユースの場合、クラス図 -> ソースの機能だけでも有用です。 そういう会社のものです. > <対応> > <クラス図> > +---------+ > | Person | > +---------+ > +---------+ > +---------+ > </クラス図> > <Rubyソース> > class Person > > end > </Rubyソース> > </対応> > <対応> > <クラス図> > +----------+ > | Person | > +----------+ > |+name | > |-age | > +----------+ > |+inc_age()| > |-do_hoge()| > +----------+ > </クラス図> > <Rubyソース> > class Person > @name > attr_accessor :name > @age Rubyのインスタンス変数は、UMLで言うところのprotected(#)な属性になります. UMLで言うところのprivate(-)は今のところありません. 現在ruby-dev MLで議論 中ですね. > def inc_age() > # TODO > end > def do_hoge() > # TODO > end > private :do_hoge これもRubyで言うところのprivateは、UMLで言うとことのprotected(#)に近いで すね。UMLで言うとことのprivate(-)なメソッドは今のところありません. > </Rubyソース> > </対応> > <対応> > <クラス図> > +---------+ > | Base | > +---------+ > +---------+ > +---------+ > △ > | > +---------+ > | Dived | > +---------+ > +---------+ > +---------+ > </クラス図> > <Rubyソース> > class Dived < Base > > end > </Rubyソース> > </対応> > <対応> > <クラス図> > +---------+ > |<<mixin>>| > +---------+ | My_mixin| > | Base | +---------+ > +---------+ +---------+ > +---------+ +---------+ > +---------+ △ > △ | > | +−−−−−−−+ > | | > +---------+ > | Dived | > +---------+ > +---------+ > +---------+ > </クラス図> > <Rubyソース> > module My_mixin > end > > class Dived < Base > include My_mixin > > end 個人的には、moduleのステレオタイプを<<module>>に、includeを汎化に <<mix-in>>ステレオタイプ付けようと提案しています。 > </Rubyソース> > </対応> > <対応> > <クラス図> > +----------+ > | Person | > +----------+ > |+name | -age +----------+ > +----------+◇--------→| Date | > |+inc_age()| 1 +----------+ > |-do_hoge()| +----------+ > +----------+ +----------+ 下の意図とすると、ロール名のついている関連端が逆ですね。Date側にageでは ないですか? あと, -ageではなく#ageでしょうね. 理由は属性の時と同じです. > </クラス図> > <Rubyソース> > class Person > @name > attr_accessor :name > @age # refarence to Date > def inc_age() > # TODO > end > def do_hoge() > # TODO > end > private :do_hoge > end > </Rubyソース> > </対応> > > もしかして、UMLクラス図とはうまく対応しないのでしょうか? 立石さんのメイルにもありますが、目的は何でしょう? 1. UMLで表現されたものをRubyに落としたい 2. Rubyでプログラムするうえで、設計レベルをUMLで表現したい? つまり、 Rubyで表現できることすべての設計レベルの記述をUMLで行いたい? 1はそんなに難しくないと思いますが、2は難しいと思います. 実際、自分が作っ たRubyのプログラムをUMLで表現することは難しいことが多いです。 理由はいくつかあって: 1. Rubyの変数には型がない。UMLでは、属性は型がなくても良いですが、関連は必然的に 型を決めなくてはいけない。 2. Rubyは動的な言語。例えば、動的にメソッドが定義できる。あと, obj.extendもある 3. Rubyには、特異メソッドがある。UMLにはない。 4. moduleのネストクラス。UMLでもネストクラスの概念はありますが、それを直 接表現できない。 __ ..............................石塚 圭樹@日本ラショナルソフトウェア... ----------------------------------->> e-mail: keiju@rational.com <<---