1 名前:デフォルトの名無しさん [2008/02/22(金) 14:31:31 ] プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。 【Ruby1.9 は不安定な開発版であり初心者には全く向きません】 【最新安定版の Ruby1.8.6 の使用を強くお勧めします】 関連スレやURLは>>2-8 あたりを見てください。Ruby on Railsの質問はRailsスレへ。 ■質問する人へ 質問する前に次の3つをすること。ここで回答を待つよりそのほうが早い。 ・モジュール名やエラーメッセージでググる ・マニュアルで引っかかったクラスの記述を探す www.ruby-lang.org/ja/man/ ・FAQを一応読む www.ruby-lang.org/ja/man/?cmd=view;name=Ruby+FAQ 質問には以下を書くこと。へたくそな質問は再提出を要求される。 ・詳しい内容(「動きません」「うまくできません」では回答しようがない) ・エラーメッセージ(自力で訳さずなるべくそのままで) ・実行環境(OS名、Rubyのバージョン(ruby -v でわかる)) ・最終的にやりたいこと(もっとよい方法がある場合が多いので) 回答してくれた人には「ありがとう」のひとことをいってあげて。 ■回答する人へ 相手は初心者、根気よく育てるつもりで。質問がへたくそなのも大目にみてあげる。 それができないならこないこと(だって初心者スレだもん)。 ・既出な質問やFAQは「XXXを読め」でいいので、叩かない&怖がらせない。 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。
2 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 14:36:38 ] 【よくあるしつもん】 Q: いちからRubyを始める初心者向けのRuby入門書は何がおすすめでしょうか? A: プログラム作成の初心者だったら 「たのしいRuby 第2版 Rubyではじめる気軽なプログラミング」 www.amazon.co.jp/dp/4797336617/ 他の言語経験があるんだったら 「プログラミングRuby 第2版 言語編」 www.amazon.co.jp/dp/4274066428/
3 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 14:39:10 ] ■前スレ Ruby 初心者スレッド Part 17 pc11.2ch.net/test/read.cgi/tech/1200472887/ ■関連スレ Rubyについて Part 30 pc11.2ch.net/test/read.cgi/tech/1200106073/ Rubyの宿題教えてください。 pc11.2ch.net/test/read.cgi/tech/1106572657/ pc11.2ch.net/test/read.cgi/tech/1200175247/ 【ActiveScript】RubyをWindowsで使うスレ【GUI】 pc11.2ch.net/test/read.cgi/tech/1155031689/ Ruby on Rails pc11.2ch.net/test/read.cgi/tech/1191381506/ Rubyについて(アンチ専用) Part002 pc11.2ch.net/test/read.cgi/tech/1200210768/
4 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 14:40:19 ] ■公式/非公式関連リンク Ruby Home Page www.ruby-lang.org/ja/ Rubyリファレンス(よくサーバーエラーになります) www.ruby-lang.org/ja/man/ www.ruby-doc.org/ (英語) リファレンスのHTMLヘルプ版配布 elbereth-hp.hp.infoseek.co.jp/ruby.html # Windowsで便利 Ruby FAQ ruby-lang.org/ja/man/?cmd=view;name=Ruby+FAQ Programming Ruby - The Pragmatic Programmer's Guide www.ruby-doc.org/docs/ProgrammingRuby/ # 好評書籍をWebで公開中、ただし英語 逆引きRuby www.namaraii.com/rubytips/
5 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 14:41:17 ] RAA - Ruby Application Archive raa.ruby-lang.org/ RubyForge www.rubyforge.org/ # Rubyのアプリやライブラリが検索できる 日本Rubyの会 公式Wiki jp.rubyist.net/ # メニューに表示されていない埋もれた情報ページ多数 Rubyist Magazine - るびま jp.rubyist.net/magazine/ # コードレビューが好評 Ruby hotlinks 五月雨版(日記やblogのアンテナ) www.rubyist.net/~kazu/samidare/ Rubyの本一覧 www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=Ruby%A4%CB%B4%D8%A4%B9%A4%EB%BD%F1%C0%D2 <rubyXML/> www.rubyxml.com/ Matzにっき(Ruby作者の日記) www.rubyist.net/~matz/
6 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 14:42:08 ] ■最近できたWiki Ruby 初心者スレッド Hiki starlet.s145.xrea.com/ruby/hiki/ Ruby Portal ruby.morphball.net/portal/
7 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 14:51:23 ] テンプレ終わり
8 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 15:04:01 ] _,,....,,_ _人人人人人人人人人人人人人人人_ -''":::::::::::::`''> ゆっくりした結果がこれかよ!! < ヽ::::::::::::::::::::: ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄ |::::::;ノ´ ̄\:::::::::::\_,. -‐ァ |::::ノ ヽ、ヽr-r'"´ (.__ _,.!イ_ _,.ヘーァ'二ハ二ヽ、へ,_7、 ::::::rー''7コ-‐'"´ ; ', `ヽ/`7 r-'ァ'"´/ /! ハ ハ ! iヾ_ノ !イ´ ,' | /__,.!/ V 、!__ハ ,' ,ゝ `! !/レi' (ヒ_] ヒ_ン レ'i ノ ,' ノ !'" ___ "' i .レ' ( ,ハ /_ / 人! ,.ヘ,)、 )>,、 _____, ,.イ ハ
9 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 15:23:45 ] r'ニニニ二二二ニニニ、ヽ | | .@ | | ト、____, へ rー┤| |├、 ヽ } | | | Π | | | ≡三ーーーーァ / l l l lニ コ .| | | ≡ / / | l l |_| | | | ≡三 ./ / l__l_l______|_|__| っ .≡ / / | / ,イ,へ 丶、 ヘ ≡三./ / ノ| | ,' / // \| \ ト、 ヽ ', つ ≡{ 丶ーーーー' } !j./l / ` ヽト、ヽ } ゝ、_______丿 . | | .!/.! ○ ○ l l |ヽ,' ⊃ l | | .l/////////////! | !.| .| ! | ト、 ,-ー¬ .ィ| .| l こ、これは>>1 乙じゃなくてバギクロスなんだから | l ! l l` r --.' <j ,' | | 変な勘違いしないでよね! | .l ', l |ャ-ミ≡彳ァトイ ,'! ! .| | ヽ| | l r´ )/ハy / | ',
10 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 15:29:55 ] < ̄ ̄ ̄>  ̄>/ / / / <___/| |______/ | /  ̄  ̄ \ / ノ \ \ / <●>::::::<●> \ こ、これは乙じゃなくてエナジーボンボンなんだから | /// (__人__) /// | 変な勘違いしないでよね! \ ` ⌒´ / / ̄ ̄ ̄ ̄ ̄ ̄ ̄ \
11 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 15:40:31 ] AA厨うぜえ
12 名前:デフォルトの名無しさん [2008/02/22(金) 17:48:57 ] ifの条件をorで繋げて書いているのですが凄く長くなってしまいます、 途中で改行したいのですがどうしたらいいでしょうか?
13 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 18:10:07 ] orが行末にくるように改行を入れる。 見やすさのためにthenを省略しないようにするといいかも。
14 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 18:43:09 ] Rubyスクリプティングテクニック ― テスト駆動による日常業務処理術 www.oreilly.co.jp/books/9784873113562/ これいい本ですか?
15 名前:デフォルトの名無しさん [2008/02/22(金) 22:53:02 ] >>13 ありがとうございます _ _綺麗になりました。 立て続けに質問すみません。 Ruby/Tkで部品(ラベル)を作成しその中のテキストを処理中に複数回変更したのですが、 即時に変更されず、一番最後の変更のみが反映されます。 バッファリングがなされているのかと思い、STDOUT.flashを間に挟んでみたのですが、うまくいきませんでした。 ご助言頂けると嬉しいです _ _
16 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 23:12:59 ] >>15 Thread.start{処理} ってして見るのはどうか。
17 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 10:48:38 ] matlabから乗り換える言語の候補でrubyを考えてるのですが 行列計算やグラフのplotはRと連携するのでしょうか? Rとの連携ってどこまでできるのでしょうか?
18 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 12:28:44 ] >>17 うむ、Rでできることのほとんどについて、ロクにサポートできないといっていい というか、matlabから移行する先としては不適当だろ Rubyは単なる汎用なオブジェクト指向スクリプト言語に過ぎない
19 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 13:04:05 ] matlabとは性質が全然違うと思う octaveなら分かるがw
20 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 14:03:52 ] 組込クラスや標準ライブラリに木構造を扱うクラスが無いのはなぜでしょうか
21 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 15:00:05 ] ネタにマジレス(ry
22 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 15:02:57 ] >>17 Python で numpy 使うといいよ
23 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 16:12:50 ] >>17 RSRuby ttp://web.kuicr.kyoto-u.ac.jp/~alexg/rsruby/
24 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 16:40:25 ] rushってどうよ?あなたのはづかしい体験談プリーズ journal.mycom.co.jp/news/2008/02/22/042/index.html
25 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 20:00:55 ] Rushはプログレハード
26 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 21:37:26 ] RubyでJAVACCみたいなパーサ生成 モジュールってありますか? AST扱える奴がいいのでつが
27 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 23:21:42 ] 今だと treetop とか。
28 名前:デフォルトの名無しさん [2008/02/24(日) 12:01:00 ] >>26 Racc Lex なら StringScanner または Ragel
29 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 12:31:43 ] >>28 フォロー。 Raccはyaccみたいなパーサジェネレータだから、ASTは自分で組む必要がある。
30 名前:デフォルトの名無しさん [2008/02/24(日) 12:47:04 ] メール送信をしようと思って、 gemsを見たらメール関連のパッケージがたくさんあります 現在一番使われてるパッケージってどれですか?
31 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 13:19:48 ] …TMailかな Rubyだけでもなんとかなると思うけれど require 'nkf' mail=<<EOM From: #{@sender} <#{@from}> To: <#{@to}> MIME-Version: 1.0 Subject: #{NKF.nkf('-jM',@subject.tojis)} Date: #{@now.rfc2822} Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit #{NKF.nkf('-Ej',@body)} EOM Net::SMTP.start(@smtp_server,25,@helo_domain){|smtp| smtp.send_mail(mail, @from, @to) }
32 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 13:53:43 ] テストツールの利用の仕方がよくわかりません
33 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 14:08:46 ] >>32 テストの知識がないとだめだよ ソフトウェアテストをRubyでも行うというツールであって、ソフトウェアテストをRubyでも学べるというツールじゃない タイミング的に Rubyスクリプティングテクニック ― テスト駆動による日常業務処理術 ttp://www.oreilly.co.jp/books/9784873113562/ これを持ち出して「ただの初心者本であってテスト駆動云々については書いてないじゃん!」とかDisるのがよいぞ 「Rubyで学ぶテスト入門」とかいうのは需要はあると思うんだけどねえ
34 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 14:17:54 ] メソッド間の値の受け渡しのとこにてきとーな値と正しい答えのペアを持ってきて メソッドが正しく動作するか検証するツールだろ
35 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 14:20:44 ] >>33 Rubyを256倍使うための本 極道編 というのがあるこたあるが、2001年というのはこの世界だと古文書だな。
36 名前:デフォルトの名無しさん [2008/02/24(日) 16:39:43 ] >>32 「Ruby Test::Unit」または「RSpec」でぐぐれ
37 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 16:40:08 ] >>29 >Raccはyaccみたいなパーサジェネレータだから、ASTは自分で組む必要がある。 kwsk
38 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 16:50:50 ] >>36 そういう話ではないと思われ
39 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 17:19:48 ] >>33 「disる」とかいうのやめ
40 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 21:48:25 ] >>37 BNFとか書けばASTを完璧に組み上げる パーサを生成してくれるわけじゃないという意味。 (というかそこまで出来たらコンパイラコンパイラ名乗って いい気がする) 構文解析である文法規則に還元されたときの 処理は自分で書かないといけない。
41 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 23:11:50 ] >>40 それは Racc の説明であって JavaCC ではないという理解で OK? もしそうなら、JavaCC はASTを自動で作ってくれるの?
42 名前:40 mailto:sage [2008/02/25(月) 00:53:05 ] ぉk。 JavaCCのことはさっぱり。 ただ>>26 の要求にRaccは微妙かなと思って。
43 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 06:21:28 ] class Foo class <<self end end これの2行目の意味が良く分からないんですが・・・
44 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 06:32:09 ] >>43 特異クラスの定義 Railsで時々見るな ttp://www.ruby-lang.org/ja/man/html/FAQ_A5AFA5E9A5B9A1A2A5E2A5B8A5E5A1BCA5EB.html#a6.2e6.20.c6.c3.b0.db.a5.af.a5.e9.a5.b9.a4.c8.a4.cf.b2.bf.a4.c7.a4.b9.a4.ab
45 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 10:51:44 ] すいません、クイッククエスチョン。 特異メソッドは特異クラスのサブクラスに継承されるけど クラスインスタンス変数は継承されないよね?あってる?
46 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 11:27:47 ] rhtmlファイルでシンタックスエラーがあるみたいなんですが、どこがエラーか分かりません。 調べる方法があればおしえてください。
47 名前:デフォルトの名無しさん [2008/02/25(月) 11:52:29 ] ppよりもっとディープなインスペクション(そのインスタンスの メソッドやプロパティーのリストまで表示したり)をするには どうしたらいいですか?
48 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 11:52:45 ] >>45 そんな感じだったような気がする >>46 静的なファイルなのなら、コマンドラインからerbやerubyコマンドに渡せばいい スクリプトで動的に生成されたものにエラーがあるという話なのならちょっと違う ~$ cat test.rhtml <title>てすと</title> <h1>Hello, <%= World %>.</h1> ~$ erb test.rhtml (erb):2: uninitialized constant World (NameError) ~$ cat test.rhtml <title>てすと</title> <h1>Hello, <%= "World" %>.</h1> ~$ erb test.rhtml <title>てすと</title> <h1>Hello, World.</h1>
49 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 12:06:33 ] >>47 よーわからんがここ読め ttp://www.ruby-lang.org/ja/man/html/Module.html irb> 'str'.class.instance_methods ["send", "between?", "%", "rindex", "reject", "[]=", "split", "<<", "object_id", "strip", "size", "singleton_methods", "downcase", "gsub!", "count", "succ!", "__send__", "downcase!", "intern", "member?", "squeeze!", ... irb> require 'net/http' irb> Net::HTTP.instance_variables ["@proxy_port", "@proxy_addr", "@proxy_pass", "@is_proxy_class", "@proxy_user"]
50 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 18:59:27 ] #:nodoc: とか #.nodoc: ってなに?
51 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 19:31:31 ] ドキュメントなんか書くものか!というRubyistの強い意志
52 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 22:34:11 ] >>46 erb -x test.rhtml | ruby -wc または erubis -z test.rhtml つーかここよめ ttp://d.hatena.ne.jp/kwatch/20080222/1203680051 >>48 それはtest.rhtmlを実行しているだけなので、シンタックスエラーのチェックには向かない。
53 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 01:42:14 ] ハッシュを使い回すのではなく、俺用データのクラスを作ろうと思いました def initialize の中で、インスタンス変数を @hoge=nil @hage=nil @fuga=nil ... と15個くらい書いてるんだけど、initializeの時点でnil入れておくって無意味だよね?
54 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 02:22:09 ] @hogeの使途が分からない俺たちにとってnilを入れておく事に意味が有るか無いかは判断できない @ary = [] @ary.each{|e| p e} ってやれば何も出力されないけど @ary = nil @ary.each{|e| p e} ってやるとnilでっせって怒られる いきなり @ary.each{|e| p e} ってやると@aryなんて知りまへんでって怒られる 俺は1番目を良く使うけどね
55 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 02:39:29 ] >>54 自分でそのコード実行してみた?
56 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 02:42:47 ] irb(main):001:0> nil.each{|e| p e} NoMethodError: undefined method `each' for nil:NilClass from (irb):1 from :0 irb(main):002:0> @hoge.each{|e| p e} NoMethodError: undefined method `each' for nil:NilClass from (irb):2 from :0 irb(main):003:0> @hoge = [] => [] irb(main):004:0> @hoge.each{|e| p e} => []
57 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 02:51:17 ] >>54 >いきなり >@ary.each{|e| p e} >ってやると@aryなんて知りまへんでって怒られる インスタンス変数でなくローカル変数の場合はその通りなのだが 未初期化のインスタンス変数を参照した場合は nil となるはず >>53 上記のことを踏まえての質問ということでおk? やってもやらなくてもnilが入っているという意味ではその通りかも知れないが クラスで用いるインスタンス変数を明示的に示しておくという意味では無意味ではないと思う
58 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 02:53:56 ] >>55 インスタンス変数は「定義」しなくてもnilだってのは忘れられがちだよな インスタンス変数の「定義」をinitializeでする意味はRuby的にはあまりないと思う
59 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 02:59:02 ] 厳密にはメソッドが追加されるからただの定義ではないけど attr_reader とか
60 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 02:59:28 ] 外部からアクセスされるなら直後のattrに名前が出るし 外部からアクセスされないインスタンス変数って一体 あ、サブクラスからアクセスしたいか
61 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 03:23:53 ] >>60 外部からアクセスされないインスタンス変数はあっても全然おかしくないと思う むしろすべての実装を外部からアクセスできるように公開する方がまずいのでは
62 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 03:28:17 ] インスタンス変数は外部からアクセスしたいときにのみおもむろに使え、ということなのでは それ以外ではメソッド引数とかで細々とやれと
63 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 03:42:22 ] Rubyのスコープはちょっといろんな言語と違うからね a = 100 def foo() return 1 + a end foo() とすると何がかえってくると思う?aが定義してないってエラーになるんだぜ
64 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 03:43:47 ] こういうときはaを@aに変えるのが定石
65 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 04:08:26 ] >>63 そもそもの問題として、メソッド定義の中以外にローカル変数なんて置くなよ…
66 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 04:16:55 ] トップレベルに定義したメソッドなんだろ トップレベルのローカル変数は特別扱いしてくれてもいいような気もするけどな
67 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 06:06:31 ] でもnilの特別扱いは要らない…
68 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 06:25:56 ] irb(main):001:0> a=[0,1,2] => [0, 1, 2] irb(main):002:0> [a] => [[0, 1, 2]] irb(main):003:0> [*a] => [0, 1, 2] irb(main):004:0> [3,4,5,*a] => [3, 4, 5, 0, 1, 2] irb(main):005:0> [*a,3,4,5] SyntaxError: compile error (irb):5: syntax error, unexpected ',', expecting ']' [*a,3,4,5] ^ from (irb):5 4行目は良いのに5行目はダメっていう挙動が理解できないんだが・・・
69 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 06:59:48 ] >>68 *arrの「うしろ」に置けないだけ 先頭に書けないんじゃなくて、展開後にも何かがあると文法エラー irb> a = [1, 2, 3] [1, 2, 3] irb> [9, 8, *a, 7] SyntaxError: compile error
70 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 07:01:21 ] ていうか、もしかして *array を「arrayの要素をバラす表現」とかいう理解をしてる?
71 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 07:06:23 ] 1.9なら通るよ
72 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 13:04:14 ] 自作プログラムをクラスごとにファイルに分けると20ファイルくらいになる 「ああ、実行するたびに20回もHDDにアクセスしてるんだ」と考えると憂鬱になる ということで開発用ディレクトリと実行用ディレクトリを分けた 実行用ディレクトリには開発用ディレクトリにあるスクリプトを連結したものを入れてる これならファイルアクセスの回数は数回で済む いや標準添付のクラスとかrequireしてる時点で何個もファイル読み込みまくってるのはわかってんだけど
73 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 21:55:41 ] >>72 その最適化で何秒早くなったの?
74 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 21:57:22 ] 時間が問題だと思ってる?
75 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 22:17:03 ] >>74 >>72 はそういうことを言いたいわけではないと思われ
76 名前:75 mailto:sage [2008/02/26(火) 22:17:55 ] >>72 じゃなくて>>73 だorz
77 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 22:30:19 ] >>72 は一言も最適化とは言ってないな。
78 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 23:34:14 ] ディスクアクセスが無意味に多いのが心情的に嫌なのだろう そう感じるセンスそのものは悪くはない
79 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 01:28:06 ] 無意味に多いのかそれは、とか 全部動かさずにユニットテストしろよ、とか
80 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 01:49:05 ] 要するにプリコンパイルヘッダーが必要ということか?
81 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 04:45:24 ] C++ とかやると、コンパイル時にいくつヘッダ読んでるかなんて 全く気にならなくなるZE
82 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 11:05:29 ] コンパイル時(>>72 の例だと開発中)はどうでもいいんだが、実行時に、というのが心情的に気持ち悪いという話だろう。
83 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 11:26:02 ] なら、コンパイル系の言語を使えばいいんじゃまいか?
84 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 11:54:36 ] そんな読み込み程度を気にするのがいかにも初心者だな
85 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 11:55:55 ] Ruby使いはお茶でも飲んでまたーりするがよい わっはっはっは
86 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 12:06:07 ] >>84 そうか? 「それ自身は事実だから好きにせえ」以外の必死な否定論が出ることのほうがよっぽど初心者だと思うが…
87 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 12:07:32 ] ところでCが書けないRuby書きはニワカだと思いますがどうですか。
88 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 12:13:07 ] I/O を工夫することはパフォーマンスチューニングでは基本事項。 もとの環境や条件が不明だけど、CGIのようにリクエストのたびにプロセスを 実行しなきゃいけない場合は、読み込み速度を工夫するのは別におかしな話ではない。 ファイルサイズが小さくても、ファイルの数が多ければハードディスクのシークタイムは バカにならない。 ただ、ファイルを連結しても断片化してたら効果は少ないから、デフラグを ちゃんとやってやる必要があるけど。
89 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 12:17:28 ] もうそんな時代でもないんだけどな
90 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 12:24:31 ] >>89 ストレージへのアクセスが問題にならないコンピュータができたならぜひ教えてくれ というか最近の子は「HDDがガリガリ言う」とか気にしないもんかね 静音化されて意識しなくなったんだろうか
91 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 12:29:29 ] HDDはアクセスすると壊れるからなあ いや、こんなんで壊れる確率がはっきり増えるHDDってのもかなりアレだが… とりあえず 「クラス単位の細切れファイルをインストール時に数個にまとめとく」 というのは別に非難されるようなことじゃないと思うぞ というかそんなにまでして行為そのものを否定する理由を知りたい
92 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 12:30:48 ] ガリガリ言うほどのアクセスを問題にしてるのか? そもそもそんなこと言ってたらRubyなんて選択肢にならんだろ
93 名前:デフォルトの名無しさん [2008/02/27(水) 12:32:34 ] 鈍足のRubyを使う人は達観した境地にあるので小さいことは気にしない
94 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 12:57:19 ] 正直、完全に論点がずれてるような気がしてならない。 元発言は、無駄を嫌うというプログラマの美徳を発揮してるだけじゃないの?
95 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 13:04:35 ] チューンナップを突き詰めるとRuby使うなになるからおすすめしない
96 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 13:08:02 ] Railsみたいな糞のかたまりで遊ぶのがRubyistだからな
97 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 13:16:36 ] Railsのナカミを喜んでる人は少数だと思う Railsは開けないほうがよい箱だ あくまで外部から自分のために便利に使うシステム
98 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 14:42:30 ] これが SyntaxError になるんだけど何故でしょうか? def foo?; end def bar?; end case when not foo? when not bar? end
99 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 14:52:00 ] >>94 まぁ、美意識の問題だわな。 そしてそれは、そんな変なエネルギーってわけではない。
100 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 15:15:48 ] >>98 notだから。 case when (not foo?) when (not bar?) end か case when ! foo? when ! bar? end なら期待通りに動く
101 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 15:16:13 ] >>98 この辺の話かな ttp://www.ruby-lang.org/ja/man/html/trap_A4C7B2F2B7E8A4B9A4EBA4E2A4CE.html when (not foo?) ならおkのはず