トップページ⇒tech
1001コメント279KB

Rubyについて Part 29

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2007/10/29(月) 23:27:18
オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。

Ruby Home Page
http://www.ruby-lang.org/ja/

= 前スレ
Rubyについて Part 28
http://pc11.2ch.net/test/read.cgi/tech/1187298711/

過去スレ・関連スレは >>2-
0552デフォルトの名無しさん2007/12/23(日) 21:19:37
逆に何の何が楽しいのか聞いてみたい
Rubyの謳い文句に裏切られたってだけで、
プログラミング自体楽しく感じないってことはないよね?
05535352007/12/23(日) 21:22:47
>>550
>現在グーグルにいる人のこういう文章もあって

どの組織にもある言語が好きな人はいると思うので、
その手のソースはあまり意味を持たない気がします。
私のグーグル含めて友人、少ないですが、は少なくともruby好きは少数派です。
(やってる人は少なくありませんが、pythonでもいいじゃん、という人がほとんどで、
rubyは特別”楽しい”という事を明確に説明できる者はいません。)

そういう研究室出身だからかもしれませんが。。。
0554デフォルトの名無しさん2007/12/23(日) 21:23:22
Rubyが楽しいってのはまあわかるけど楽しいの定義は人それぞれだな。

俺はF1押したら詳細なリファレンスが出てきて
ドット押したらメソッドがずらずら出てきて
マウスでGUIを設計できて
奴隷グラマを部屋に押し込めて鞭打って書かせた充実したクラスライブラリがあって
高機能なデバッガとエディタがついてくる環境が楽しいぜ。

C#3.0は言語仕様の進化もなかなか興味深い。
0555デフォルトの名無しさん2007/12/23(日) 21:24:47
多分、それぞれの言語の好みとかあるんだろうけど、漏れはRubyが一番すんなり
考えてることをコードに落とせるんだよなあ。
0556デフォルトの名無しさん2007/12/23(日) 21:27:54
根本的にどこが楽しいのか、と言われてmatz自身が「自分にとって」とか、カンファレンスで開発志向をhobbyと断言してるからな

本家、取り巻き含めて「楽しい」を無作為に標語に挙げ過ぎてる感じはあるかなー。
波長合えば楽しい、てのはどの言語でも大差ないしな。
>>550
のURLって個人の趣味出しまくってるなw
こういうの読むの面白いけど、知らない人に妙な先入観与えそうではある

俺はJSは書いてて楽しいな。波長の問題かな。
phpは苦痛。Javaは苦痛というよりはめんどくさい感じ。
そんな波長。
0557デフォルトの名無しさん2007/12/23(日) 21:29:35
>>>555
俺もそう思うのだが、
結局それは慣れの問題では、ないかと?

俺がクソ嫌いな perlでのOOPとかでも、ネットとかでいるperlerは、すんなり書けるんじゃないの?
0558デフォルトの名無しさん2007/12/23(日) 21:33:45
そらそうだ
それは好みの要素語る際の前提でせう
05595352007/12/23(日) 21:37:01
>>552
>プログラミング自体楽しく感じないってことはないよね?

そういう意味ではありません。
実際、Erlang等、個人的に楽しいだけですが、楽しんでいるものもあります。

>>551
>ま、動的スクリプト言語がこれだけ一般的になる前の宣伝文句だから

そういうことであれば、私の過度な期待だったのかもしれません。。

0560デフォルトの名無しさん2007/12/23(日) 21:38:31
つttp://i.loveruby.net/w/WhyRuby.html
0561デフォルトの名無しさん2007/12/23(日) 21:46:32
おめでとう!
とうとうRubyも一般常識になった!
0562デフォルトの名無しさん2007/12/23(日) 22:30:42
>>549
> >>548
> python、javaと比べても?

Java に比べたら明らかに俺には Ruby の方が使い易いな。
Java を使ってるとかなりかったるい。Ruby のような気楽さはない。
Ruby はスクリプト言語だし、比較すべきかわからんが。

Python は使いこなしたことないけど、ちらっと見た感じだと俺には
Ruby の方がとっつきやすい。本質的な差では無いと言えるかも
しれんが表面的なものも使うときに大事だと思うよ。Python とだったら
両方楽しいでいいんじゃないの?

ただ、>>546 であげてる perl, lisp とあと Java に比べたら Ruby
の方が俺は楽しい。
0563デフォルトの名無しさん2007/12/23(日) 22:39:13
大ざっぱ分けると
「弄るのが楽しい言語」と「目的を達するのが楽しい言語」があると思う
アセンブリとかは前者だと思うけどRubyはどちらかというと後者じゃね?
勿論前者として使う人も居るから一概には言えないけど
0564デフォルトの名無しさん2007/12/23(日) 23:33:30
「弄るのが楽しい言語」
Lisp、Perl(?)

「目的を達するのが楽しい言語」
Ruby、Python

「面倒な言語」
Java、C++

追加、変更頼む
0565デフォルトの名無しさん2007/12/23(日) 23:34:44
神:Ruby

うんこ:その他有象無象

これでいいよ
0566デフォルトの名無しさん2007/12/23(日) 23:36:02
単に変な先入観持ってやってるだけだろ。
>>535はただのアンチだから相手にするだけ無駄。
本人でさえ自覚が無いからタチが悪い
0567デフォルトの名無しさん2007/12/23(日) 23:39:15
Rubyは言語フェチなところがあって、それがいいんだよね。
要はみんなまつもとさんのセンスが好きなんだよ。

個人的にはインデントが意味を持つ言語は常用したくない。Make/Python/Haskell(ML系)ね。
Yamlも嫌い。そういうのはプログラマの自由が侵害されてると感じるんだ。
0568デフォルトの名無しさん2007/12/23(日) 23:46:22
インデントが意味を持つとなんで自由が阻害されるの?
0569デフォルトの名無しさん2007/12/23(日) 23:48:16
golfしづらい
0570デフォルトの名無しさん2007/12/23(日) 23:49:21
>>567
Haskellは多分ML系とは言わないと思うぞ。
それにSMLもOCamlもインデントに意味はない。
0571デフォルトの名無しさん2007/12/23(日) 23:50:34
あれそーだっけ、勘違いしてたかな
0572デフォルトの名無しさん2007/12/23(日) 23:51:29
YAMLのインデント志向は俺も苦手だけれど
じゃあ他に何を使うべきなんだ、と考えると……

XMLやJSONも一長一短だし
iniは長いテキストを入れるのに困るし
他のフォーマットは潰しが利かないし
0573デフォルトの名無しさん2007/12/24(月) 00:00:10
>>567
まぁインデントは好みだね。俺も空白が意味持つのは好きじゃないけど。
昔の Fortran を思い出すなぁ。{} も使いたいし。これも好みだとは思うが、
Java, C++ も使ってるから、結構気になる。
0574デフォルトの名無しさん2007/12/24(月) 00:00:43
>>569
>golfしづらい
まじめに聞いた俺がバカだったよ
0575デフォルトの名無しさん2007/12/24(月) 00:44:41
プログラマの自由(笑)
0576デフォルトの名無しさん2007/12/24(月) 00:47:30
プログラミング自体が楽しい行為なんだよ(それを否定する人は論外)。

Rubyの楽しさは、オブジェクト指向のパラダイムのスジを通しつつ、
表現者の自由度が高くできるように言語的な束縛を少なくデザインされ、
行いたいこと(目的)を簡素に表現できるところなんだと思う。

LISPやHaskelは知的なアカデミズムの臭いがプンプンするけど、
アチラのおもしろさはまた別物。
0577デフォルトの名無しさん2007/12/24(月) 00:48:04
インデントに文法上の意味付けをする
って合理的だと思うけどなー。
それで、lisp のキモい )))))))))))))))))))))))))))));
みたいなのが減れば嬉しいやん。目に優しい。
Haskell もそうなのか。ちょっと興味沸いてきた。
0578デフォルトの名無しさん2007/12/24(月) 01:03:19
Lisperの目には括弧が殆ど見えていないから、
「コンパイラにもエディタにも優しい」という意味で括弧は減らないと思う。
0579デフォルトの名無しさん2007/12/24(月) 01:13:08
Lisper:
そういえばカッコなんてものがありましたっけ。

Pythonista:
そういえばインデントなんてものがありましたっけ。

Rubyist:
そういえばendなんてものがありましたっけ。
0580デフォルトの名無しさん2007/12/24(月) 01:16:07
まずはその生産性の低いループ話をどうにかした方がいい。
0581デフォルトの名無しさん2007/12/24(月) 01:22:03
pythonianではないのかなぁ。
0582デフォルトの名無しさん2007/12/24(月) 01:28:25
スクリプト言語はCの構文糖にすぎない。
Ruby, Python, Perl, PHP
結局慣れの問題で、どれも同じようなものに思えてきた。
0583デフォルトの名無しさん2007/12/24(月) 01:29:37
>>582
いずれもチューリング等価な世界で何を言っているのだ?
0584デフォルトの名無しさん2007/12/24(月) 03:30:13
>>581
Pythonista も結構見るが?
0585デフォルトの名無しさん2007/12/24(月) 03:31:19
>>532
>1.9.1までに安定させれば無問題 
あと一日あるかないかで安定させられるかよw
0586デフォルトの名無しさん2007/12/24(月) 09:22:32
>>576
>Rubyの楽しさは、オブジェクト指向のパラダイムのスジを通しつつ、
>表現者の自由度が高くできるように言語的な束縛を少なくデザインされ、
>行いたいこと(目的)を簡素に表現できるところなんだと思う。
結局何の特徴もない、まで読んだ。
0587デフォルトの名無しさん2007/12/24(月) 09:37:19
これ以上はアンチスレの方が釣れるんじゃないか
いよいよイブだし。

クリスマスリリースってのは明日中ってことかな?
0588デフォルトの名無しさん2007/12/24(月) 10:03:09
hotlinks見るたびに、赤いtrunkが気になる
もう諦めた方が良いんじゃ...

ゆったりと家族サービスしとけよ
0589デフォルトの名無しさん2007/12/24(月) 10:19:04
いいじゃんとりあえず出して、あとからこっそり1.9.1.1を出せば
0590デフォルトの名無しさん2007/12/24(月) 10:20:55
不眠不休で頑張っているMatzの指先に
聖なる小人さんが宿ってコード直してくれるから大丈夫だろう。
0591デフォルトの名無しさん2007/12/24(月) 11:09:34
方向音痴な初心者です
Python.とRuby.は変数の使用形式は変わりますか?
0592デフォルトの名無しさん2007/12/24(月) 12:58:26
>>591
質問の意図が分からないけど、RUBY 初心者スレッドへGO
0593デフォルトの名無しさん2007/12/24(月) 13:00:28
>>591
お好きな方へ
Ruby 初心者スレッド Part 16
http://pc11.2ch.net/test/read.cgi/tech/1197120980/

Pythonのお勉強 Part22
http://pc11.2ch.net/test/read.cgi/tech/1196426978/
0594デフォルトの名無しさん2007/12/24(月) 14:13:02
gemsとかrails関係に付いてくる文書フォーマットの名前を教えてください

== H1
adsafdjsakfljkafl;jakfljdskf;jsa

== H1
fjsdaljas

みたいなやつです
0595デフォルトの名無しさん2007/12/24(月) 14:40:19
>>594
RD http://ja.wikipedia.org/wiki/Ruby_Document_format
0596デフォルトの名無しさん2007/12/24(月) 15:35:28
Lispの括弧は、慣れると解りやすいな
「こう書くとこういう風に解釈される」
とか悩むことがない

でも言語がエディタ選ぶってのはどうか思う
0597デフォルトの名無しさん2007/12/24(月) 15:58:44
http://eigenclass.org/hiki/Changes+in+Ruby+1.9
0598デフォルトの名無しさん2007/12/24(月) 17:14:12
>>595
あれ、そうなの?RDocかと思ってた。
0599デフォルトの名無しさん2007/12/24(月) 17:19:08
>>586
> 結局何の特徴もない、まで読んだ。
他の言語から、いいところ取りをしてリデザインしたのがRuby何だから、
とがった特徴なんてあるわけないじゃん。
0600デフォルトの名無しさん2007/12/24(月) 17:33:42
けなしたつもりでけなしたことになってないってかっこ悪いよね
0601デフォルトの名無しさん2007/12/24(月) 18:10:19
Rubyの楽しさとは何かというと、正規表現や様々なライブラリがそろっていて、
適度に力を抜いて、割と素直なオブジェクト指向のコードを書けるというところかね。
PerlやPythonと何が違うといわれると、Perlほど汚くはないしとか、
インデントがどうたらとかの話になるわけだけど。

そう感じる人は楽しいというのに同意するけど、
そうじゃない人には理解しにくい、とても感覚的な謳い文句だな。
0602デフォルトの名無しさん2007/12/24(月) 19:05:47
MacってSpotlightに
delete
って打つと
File#delete
Dir#delete
とかリファレンスが出てくるの?
0603デフォルトの名無しさん2007/12/24(月) 19:24:56
今晩なの?
0604デフォルトの名無しさん2007/12/24(月) 19:26:45
出ないよ。そういう挙動にしたければSpotlight Pluginを作る必要あり
0605デフォルトの名無しさん2007/12/24(月) 19:30:13
こんなのがあった
Ruby Spotlight Importer
http://www.arcadianvisions.com/downloads/RubyImporter.html

riじゃなくてなまの.rbスクリプトが対象のようだが。
0606デフォルトの名無しさん2007/12/24(月) 22:51:51
まだ/repos/ruby/tagsや/repos/ruby/branchesの下に1.9は存在しないんだなぁ。

0607デフォルトの名無しさん2007/12/24(月) 23:41:50
質問します。
Rubyのクラスについてですが、
例えば、
Tableというクラスを作ったとします。
そこにはArrayクラスのインスタンス変数などが含まれます。
他のクラスにTableクラスを渡す事は出来ますか?
それともその中にある@arrayを参照して渡さないとダメですか?
メッセージパッシングは既存のデフォルトクラス(数値クラスなど)
を用いて行うのがソフト工学的には正しいのでしょうか?
自作した、もしくは標準ライブラリのクラスそのものを渡す事はどうなんでしょうか?
0608デフォルトの名無しさん2007/12/24(月) 23:46:58
>>607
何を言いたいのか分からないが、初心者スレ相当ということはわかる。
0609デフォルトの名無しさん2007/12/24(月) 23:50:37
>>607
>他のクラスにTableクラスを渡す事は出来ますか?
Oui.
>それともその中にある@arrayを参照して渡さないとダメですか?
状況次第。
0610デフォルトの名無しさん2007/12/24(月) 23:52:29
うん、何を伝えたいのか理解が困難。
何か他の言語の毒を抱えているのかも知れないなぁ。

> 他のクラスにTableクラスを渡す事は出来ますか?

できるよ。委譲であれ、メソッドの引数であれ。
0611デフォルトの名無しさん2007/12/24(月) 23:54:12
>>607
日本語でおk
というかそもそも板違い。初心者スレに行きなさい
0612デフォルトの名無しさん2007/12/24(月) 23:55:18
「クラスを渡す」が理解できない
インスタンスではなく、そういうのもあるの?
0613デフォルトの名無しさん2007/12/25(火) 00:04:23
class Table
def initialize(v, h)
@v = v; @h = h
@array = Array.new
v.times do |i|
@array[i] = Array.new(h, 0)
end
end

def show
print "Table status\n"
@v.times do |i|
@h.times do |j|
print @array[i][j], "\s"
end
print "\n"
end
end

def reset
v.times do |i|
h.times do |j|
@array[i][j] = 0
end
end
print "Table is reset, \n"
end
end
0614デフォルトの名無しさん2007/12/25(火) 00:08:23
>>611
板違いって・・・日本語でおk
0615デフォルトの名無しさん2007/12/25(火) 00:11:29
例えばこんなクラスを作ります。
2次元配列で数値を保存してくれるクラスですが、
別に、配列を引数として
GUIで数値を表示する(例えばマインスイーパみたいに)クラスを作ります。
その時に、そのクラスの数値を表示するメソッドは、
Tableを引数とすべきなのか、Arrayを引数にすべきなのか。
2次元の配列を引数にするという事は出来ますか?

例えばですが、このメソッドが配列を引数で成り立つと仮定して、
def show_gui(array2d)と書けるとします。
この時、array2dには縦横の長さが分かりません。(メソッド中で調べるしかありません)
なので、Tableクラスに限定した方がいいと思うのですが、
一方、Tableクラスしか使えない事にすると、拡張性が失われます。
デフォルトのArrayクラスを引数にした方がいいでしょう。
しかしおれには、メソッド内で
・なんだ引数は2次元じゃないじゃん、てか文字列じゃんw
・数値じゃなくて文字列が入ってるんですけど・・・
とか判定させるのはソフト工学的にいけないと思うのですが、
この場合、どうするのが正しいのでしょうか?
0616デフォルトの名無しさん2007/12/25(火) 00:13:35
もっともこのTableクラスでは、
数値以外にも持ってしまえますが、
数値の代入以外を禁止するのはそんなに難しい事ではないかと思います。
0617デフォルトの名無しさん2007/12/25(火) 00:26:27
>>615
とりあえずおちついて初心者スレへ行けって。
なんかあっちでも配列いじくってるから。
0618デフォルトの名無しさん2007/12/25(火) 00:28:13
おれの言ってるのは
ただ仕様がどうとかいう単純な事ではなくて
「どう作るべきか」
という方法論なのですが。
Rubyは動的型づけなので、引数をなんでもとってしまう。
その為、どういう風に書けばいいのかに迷う事になる。
0619デフォルトの名無しさん2007/12/25(火) 00:47:39
>>618
それはOO上でデザイン時に、全体を見通した上でクラスをどう切り分けしていくかの話なので、
一律な解答はなく、動的だとか言語の問題は直接関係ない。
0620デフォルトの名無しさん2007/12/25(火) 00:56:02
では使い捨てのクラスを作ってもいいという事ですか?
OOPの利点は拡張性だと思います。
継承が出来ないような汎用性のないクラスを作ってしまったら
非常に非効率的です。
上記の場合も、
本当なら、Tableクラスを引数にしたいですが、
そうすると汎用性が失われます。
Tableクラスを使わないと、このGUIのクラスは動かない事になります。
あるいは同じようなインスタンス変数を持つクラスがあった場合に、
誤作動を起こす可能性もあります。
なので、2次元配列を渡すのがベターかと思ったのです。

基本クラスのみを使ってかけば汎用性は最大になります。
引数に自作のクラスインスタンスをとるような設計は間違いではないのですか?
0621デフォルトの名無しさん2007/12/25(火) 01:12:30
使い捨て大いに結構。
0622デフォルトの名無しさん2007/12/25(火) 01:14:57
継承を行うことによって拡張を行うののがよいと考えらえていたのははるか昔の話。
ともかく、

> 本当なら、Tableクラスを引数にしたいですが、
> そうすると汎用性が失われます。
> Tableクラスを使わないと、このGUIのクラスは動かない事になります。

この考えはおかしい。もちろん、Tableを基底にしたクラスを利用してもよいが、
ダックタイプがあるのだから、別にTableクラスが必要はワケではない。

拡張性たって、どこまでも拡張性を仕方がない。
閉めるところは閉めて、緩めるところは緩めると決定を下していくのがOOの設計じゃないなか。
つまり、あんたが考えて、都合のよい実装を見つけるしかない。
0623デフォルトの名無しさん2007/12/25(火) 01:17:59
何で自作クラスのインスタンスを渡すようにしたら汎用性がなくなるの?
そもそも二次元配列の認識が間違ってるし、
配列のやり取りがしたいだけなら上のTableクラスの意義もよく分からん
構造の保障されないArrayを直接渡すより、Tableに統一した方がマシに見える
って全体を見てないから憶測だけど
0624デフォルトの名無しさん2007/12/25(火) 01:21:23
スクリプトなんてかかなければ汎用性最大だと思うんだ
0625デフォルトの名無しさん2007/12/25(火) 01:29:13
>>620
Java とか使ったこと無いんだろうなぁ。
Applet とか使い捨てのクラス作らないで何作るんだろう…

俺は Ruby は気楽に使い捨てができる言語として大変重宝してる。
書くのが楽なら使い捨ても負担にならない。
0626デフォルトの名無しさん2007/12/25(火) 01:33:56
Ruby自体・・・
0627デフォルトの名無しさん2007/12/25(火) 03:11:31
ruby-dev:32713

やれやれだな。
0628デフォルトの名無しさん2007/12/25(火) 03:44:59
>>620
まず質問がよくわからん
コード見ないことには、どんな設計しているのか見当がつかん
そのメソッドに汎用性が必要なの?Tableクラス以外渡せないと困るの?
別にTableクラスで困らないならTableクラスにすればいいとしかいえん
あとは2次元配列からTableクラスを簡単に作成できるようにしとけば、
つまり foo(array) はできなくても foo(Table.new(array)) とできるようにしとけばいいんじゃない?
0629デフォルトの名無しさん2007/12/25(火) 04:03:03
>>607から>>613 >>615 >>616 >>618 ときて >>620が同じ人だとして、
最初の質問から思いっきりぶれてないか?別人ならすまんが

原則にこだわるのもいいけど、何をこの場ではっきりさせたいのかが
まったく分からない
と、こんな時間に読んでる俺が言ってみる
0630デフォルトの名無しさん2007/12/25(火) 04:43:35
なんで、この時間におきてるんだw?
0631デフォルトの名無しさん2007/12/25(火) 08:41:16
>>623
自作クラスのインスタンスを引数にしか出来なかったら
他のクラスのインスタンスは引数に出来ない事になる。
これは汎用性が失われた事になる。

クラスは独立すべきです。
だから、引数を基本クラスに限定すべきだと思いました。

こういう話を考えます。
会社クラス
@employees * 100
payment_up(x)

従業員クラス
@y

というクラスを考えます。@employeesは従業員クラスのインスタンスで、
コンポジションされています。payment_upは従業員の頑張りに応じて
給料を上げるメソッドです。
さて、xですが、ここにはどう考えても従業員クラス限定で引数を指定したいわけです。
しかしここで問題が起きます。
従業員の給与変数がyとなっている事です。
これによって、他のインスタンスを入れた時に誤作動する可能性があります。
かといって、ここに数値クラスの給与そのものを持ってくるのは
少し池沼っぽいです。(数値を上げるだけのメソッドになって、数値ならなんでも
引数にとれてしまう)

これは動的型の仕様ですか?
0632デフォルトの名無しさん2007/12/25(火) 09:01:16
def [](index_i, index_j)
return @array[index_i][index_j]
end

def []=(index_i, index_j, value)
@array[index_i][index_j] = value
end

こんなメソッドを追加して、代入が出来るようにしました。
しかしこれではおれの要求には達しません。
おれとしては
[][] = value
の形で代入したりしたいのですが、
何か方法はありますか?
0633デフォルトの名無しさん2007/12/25(火) 09:13:52
>>630
きっと飲み会から帰ってきたんだよ
ほら、祝日だし
0634デフォルトの名無しさん2007/12/25(火) 10:00:41
三時か!
あと5時間!最後のバグとりがんがってほしい。
0635デフォルトの名無しさん2007/12/25(火) 10:01:08
>>631
がんばれ、もっと考えるんだ!
一番すっきりしたコードになった時、それが答えだ!
0636デフォルトの名無しさん2007/12/25(火) 10:03:46
>>635
助けてください。
当方ゆとりです
0637デフォルトの名無しさん2007/12/25(火) 10:26:29
最近突然多次元配列関連の質問がどっと増えた気がするんだけど、気のせい?
最近何かあった?
0638デフォルトの名無しさん2007/12/25(火) 10:27:57
ヒント: クリスマス
0639デフォルトの名無しさん2007/12/25(火) 10:50:03
それもあるけど
純粋に強化学習の課題が出ていて、
それについてクラスをどう作るべきなのか悩んでいるのです。
当方京大生で、たぶん情報工学を専攻します。
オブジェクト指向はとても興味深いので質問しています。
まともに答えてください。

引数をどういう形でとるべきかというのは
ソフト工学上とっても大事な問題なのです。
0640デフォルトの名無しさん2007/12/25(火) 11:00:29
>>639
立木秀樹にでも聞いてこい
0641デフォルトの名無しさん2007/12/25(火) 11:02:33
なんだこの面白い研究室はああああああああああああ

でも騒人か・・・
0642デフォルトの名無しさん2007/12/25(火) 11:03:53
2ちゃんで聞く時点でまともとか言われてもなあ・・・。
教授か友達に聞くか、MLに池よ。せっかくの学生生活を2ちゃんで過ごすのって
すごーくもったいないぜ。
第一、レポート書くときに参考文献に「2ちゃんねる」って書くのかい?ありえんよ。

もうひとつ、池沼とか書くなバカ死ね
0643デフォルトの名無しさん2007/12/25(火) 11:24:06
> 参考文献に「2ちゃんねる」

書いて欲しいと思った…。
0644デフォルトの名無しさん2007/12/25(火) 11:34:39
>>631
>クラスは独立すべきです。
>だから、引数を基本クラスに限定すべきだと思いました。
こういう新しい発想は嫌いじゃないけど、この主張は今まで聞いたことがない。
少なくとも、今までの偉い人はそんなこと主張していないし、引数を基本クラスに限定しなくてもみんな特に困ってはいない。
そのあとの例も何言ってるのかよくわかんないんだけど、

>しかしここで問題が起きます。
>従業員の給与変数がyとなっている事です。
>これによって、他のインスタンスを入れた時に誤作動する可能性があります。

これは、他のまったく関係ないクラスで@yをつかっていた場合、そのクラスのインスタンスを渡せてしまうことを心配しているのかな。
もしそうなら、動的な言語ならそれは仕方ない、そういうものだと思ってあきらめてください。
これは引数を基本クラスに限定したつもりでも同じことだし、そもそも『引数を基本クラスに限定する』ということ自体できない。

つうかさ、ほんとに京大生なら自分の意図をわかりやすく説明しろよな。こんな質問だと何言ってるのかわからんわ。相手はおまいさんほど賢くはないんだから。
0645デフォルトの名無しさん2007/12/25(火) 12:29:19
クリスマスイブに学歴と立て続けでスレが殺気立ってますね(^^;;
0646デフォルトの名無しさん2007/12/25(火) 13:34:36
Rubyの問題というよりは、日本語の問題
0647デフォルトの名無しさん2007/12/25(火) 13:36:17
突貫工事おもろい
0648デフォルトの名無しさん2007/12/25(火) 14:27:12
Ruby 1.9.1はruby1.8.6に変わるものだと思っていいんですよね
0649デフォルトの名無しさん2007/12/25(火) 14:41:48
>>648
まったくの別物
0650デフォルトの名無しさん2007/12/25(火) 14:58:55
>>648
それはRuby2.0から。

そういや今はもうruby-shimとかruby-sumoとか作らないよね。個人的には
ruby-1.8コードをyarvで動かせるパッケージが欲しい。
0651デフォルトの名無しさん2007/12/25(火) 15:07:07
今回 1.8.7 って出るんだっけ?
0652デフォルトの名無しさん2007/12/25(火) 15:27:37
立木とかいう教授にメルしてみよ。
もっと勉強してから来なさいってみっくみっくにされそうだけど、
だけど他学部の人から相談を受けたらそんなに嫌な顔はしないかもな。
ソフトウェア工学は興味があるが、
あくまでもプログラミングのテクニックとしてで、学問的にはどうでもいい。
とか言ったらその場で抹殺されそう。

>>644
新しい発想じゃないだろ。
どんな本にでもクラスは独立すべき、依存したクラスはよくないと書いてある。

強化学習のプログラム書いたら
おれのHPにうpするから
評価しろよな。
そこまで偉そうにするんだったら採点くらい出来るだろ。

プログラミングはバックグラウンドでは0と1で計算しているだけ。
また、ある時に1と入れたら(乱数を使わない限り)、必ず0か1のどちらが出るようになっている。
だから、必ず最善の手法が存在するはずである。
■ このスレッドは過去ログ倉庫に格納されています