[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 03/12 09:10 / Filesize : 211 KB / Number-of Response : 848
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Ruby 初心者スレッド Part 35



1 名前:デフォルトの名無しさん [2010/03/04(木) 11:00:57 ]
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。

★注意★ Ruby 1.9.1 は初心者にはまだ時期早尚です。初心者には Ruby 1.8.7 を強くお勧めします。
   (理由:現時点では有名ライブラリやアプリが 1.9.1 に完全には対応していないためです)
 1.8.7 でも 1.9 系に導入された新機能のいくつかが利用可能なため、1.8.7 を習得すれば将来スムーズに 1.9 系に移行できるでしょう。

関連スレやURLは>>2-5あたりを見てください。Ruby on Rails の質問は Webプログラミング板の 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を読め」でいいので、叩かない&怖がらせない。
 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。
 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。

331 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:38:10 ]
>>328
riには普通にあったよ
るりまにはないようだ

332 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:39:34 ]
>>329
ftp://ftp.ruby-lang.org/pub/ruby/binaries/
これはどういう位置づけなの?

333 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:46:00 ]
>>330
適当に選んでは駄目
実用上、コンパイラが何かということよりも
プラットフォーム文字列にwin32の文字列が含まれているかどうかが重要

C:\>ruby -e "p RUBY_PLATFORM"
"i386-mswin32"

mingw32はRubyに慣れた人向け
スクリプトの修正とかできない人が使ったらどーでもいいとこで詰まるぞ

334 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:49:13 ]
>>332
こんぱいるしたひとがるびーのさばにふぁいるをおいてる

インストーラつきじゃないから少なくとも初心者スレで話題に出すようなもんでもないかと

335 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:54:58 ]
>>332
そういやこれは結局どうなったんだっけ
本気で「ふぁいるおきば」以上の意図はないんだっけ
根性入れて更新するけど公式にサポートしたバイナリではないとかそんな立ち位置なんだっけか

336 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:58:21 ]
Rubyにはサポートレベルというものがあるんだが、
実はWindows系とMacOSXとFreeBSDは同じレベルにあるんだよな。
とてもそんな扱いを受けているようには見えないが。


337 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:58:50 ]
ガラクタの寄せ集め言語なんていらない

338 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:05:45 ]
Pathologically Eclectic Rubbish Listerのこと?


339 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:13:26 ]
初期Rubyユーザが母なるPerlを叩く図式は最高にかっこわるかったな



340 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:13:38 ]
RubyでGUIは鬼門、という方向に話が流れてるなあ…
Pythonのように、インストールすれば即座にTkも使える状態になってれば
少しは違ったんだろうか…
かといって、VisualuRubyを推すのもどうなんだという気もするし…
アレはWindows限定だし…

言語の作者自身が「Windowsなんか知らね」属性の人だったのが
そもそも不幸の始まりだったのだろうか…
Windows嫌ってる人って、GUIも否定的な人が多い印象もあるし

341 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:13:40 ]
何も見ずにもう一回書いてみろ

342 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:14:07 ]
うが。何故瞬間に2レスも間に入るw

343 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:24:04 ]
Wdh=cgi["width"]
<INPUT type="text" name="width" value="50">
print Wdh
Wdh =Wdh / 2

としたところ、
undefined method `/' for "":String
と怒られてしまいました。右も左も分からないので解決策をご教示願います。

344 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:25:04 ]
>>343
とりあえず、てきとうな解説サイト(お勧めは特にない)か本読め

345 名前:343 mailto:sage [2010/03/12(金) 20:25:16 ]
すみません、追記です。
print Wdhの結果は何も表示されませんでした。

346 名前:343 mailto:sage [2010/03/12(金) 20:33:33 ]
>>344
ありがとうございました。

347 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:40:36 ]
>>344でよかったのだろうか…

348 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:43:31 ]
>>347
適切ではあったとは思う
変数の規則知らない上にエラーの読み方わからんのではさすがに遠隔ではどうにも

349 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:45:44 ]
単純には、文字列(String)は整数(Integer)ではないから割り算したいなら
変換しろ、ってだけのことなんだけど。

cgiがCGIクラスのインスタンスだとして、こいつの返すパラメータはかなり
変態なので、今後もいろいろ罠に掛かるかもしれない。





350 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:53:25 ]
>>349
>Wdh
>print Wdhの結果は何も表示されませんでした

351 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:59:49 ]
>>343
たのしいRuby 第3版
www.amazon.co.jp/dp/4797357401/

352 名前:343 mailto:sage [2010/03/12(金) 21:25:59 ]
数々のエスパーレスありがとうございます。
すみません、Wdhが読み込まれてない原因はHTMLのFORM文にミスがあったせいでした。

>>349
個人的にRubyの変数に型はないからString/Integerは気にしなくておkという先入観があったのですが、この先入観はトチ狂ってるのですね。
エラーは脱せていませんがおすすめの書籍と関連サイトで粘ってみようと思います。ありがとうございました。

353 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:28:19 ]
変数には型はない。
オブジェクト(値・モノ)には型(クラス)がある。

これは、変数はどんな型のオブジェクト(値・モノ)でも指せるってこと。



354 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:29:51 ]
>>331
へぇそうなんだ
riはファイル数削減のため削除した
ウィルスチェックを毎日フルスキャンする義務があるんで
消したらだいぶスキャン時間が短くなった

355 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:33:08 ]
何度でも言われるがRubyの変数は箱ではなくただのラベル
いつ剥がれるか(変数名で参照できる範囲)は決まってるが、貼る先のオブジェクトは区別しない

356 名前:343 mailto:sage [2010/03/12(金) 21:41:39 ]
わかり易い説明ありがとうございます。
なるほど、ラベルに入ったオブジェクトの型は明示してやる必要があるのですね。
アドバイス通りに検索するとすぐに解答がありました。
Wdh=cgi["width"].to_i
として解決しました。

357 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:52:41 ]
>>356
違う
Rubyには型は存在しない
クラスは型ではない
>>353は誤り

358 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:56:58 ]
タコツボここに極まれり、か

359 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:01:38 ]
そもそも型とかいう考え方は即ごみ箱に捨てろ



360 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:08:36 ]
型(Type)だな
一時期オブジェクトの説明に間違って使われたタイヤキの鋳型(flask)が後を引いて…はいないか

361 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:11:13 ]
>>360
あれは「型」という字にはタイプとテンプレートと鋳型の3つがあるということを失念した例示だったと思う…
タイプやテンプレート相当のものを持った言語を中途半端に習った人大混乱

362 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:15:51 ]
この流れはすごいなあ
というかたのしいRubyってタイヤキの例え使ってなかったか

363 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:25:27 ]
>>362
うん使ってる
言われてみれば言葉の選び方的にあまりよくないな
鯛焼きのカタという言葉は「変数の型」を想起させて混同させる可能性があるのか
第3版が出ようかというときに新しすぎる知見だろそれ

鋳型ならいい?

364 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:34:09 ]
タイヤキの型って、まさしく鋳型じゃない?
>>363の言葉選びのポイントがよくわからん

365 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:44:17 ]
>>363
型ってのはそもそも値の集合と操作の集合なので
別にRubyに使ってもなんもおかしくない

んでクラスとインスタンスは英語で言うところのaとtheの関係なので
タイヤキの鋳型とタイヤキでなんも問題ない

366 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:51:37 ]
数学的な話ではなく、変数の型とクラスの型の2つの混同で
クラスを従来の変数の型のようなものとして誤解してしまう可能性があるという話では
>>356のように

367 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 23:02:35 ]
それは「変数に型があるかデータに型があるか」の話
型ってそもそもなによって話とは無関係

368 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:09:45 ]
>>336
Windowsならスレッドがちゃんと動くが他のプラットフォームだと動かない、
とかいう罠があったりしたこともあるので、なかなか侮れない。


369 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:13:40 ]
Unicode の U+2295 みたいな表記を Ruby1.8 で該当バイナリ文字列に変換する方法はありませんか



370 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:24:07 ]
>>369
「U+2295」が文字列という前提で

(0.入力文字列の書式をチェックします。)

1.分割します。

U+ … ポイ
22 … 1バイト目
95 … 2バイト目

2.1バイト目と2バイト目をごにょごにょします。Array#pack() 、かなあ?

371 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:27:09 ]
>>369
require 'nkf'
s = 'U+3042 U+3044 U+3046'
puts NKF.nkf('-w, --numchar-input', s.gsub(/U\+(\d+)/){"&#x#{$1};"})



372 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:32:54 ]
>>371
> /U\+(\d+)/
16進数じゃない?

/U\+([0-9a-fA-F]{4,6})/
でいける?

373 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:37:46 ]
>>371
間違ってるぞ

puts NKF.nkf('-w, --numchar-input', s.gsub(/U\+([\da-f]+)/i){"&#x#{$1};"})

374 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:52:39 ]
1.8では、量が多くない場合はNKFに頼るのが間違いないと思う
1.9だと簡単なんだけど

375 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 01:20:47 ]
$ cat a.rb
require 'nkf'
sikaru = NKF.nkf('-w, --numchar-input', %w(20B9F).map{|s| "&#x#{s};"}.join)
p sikaru
puts sikaru
$ ruby -Ku ./a.rb
a.rb:2: [BUG] Segmentation fault
ruby 1.8.7 (2010-01-10 patchlevel 249) [i686-linux]

うひょう

376 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 04:18:36 ]
本来はiconv使うべきとは思うが、実用的なのはnkfだしなあ。

377 名前:デフォルトの名無しさん [2010/03/13(土) 05:37:51 ]
>>369
"U+20B9F".gsub(/U\+([0-9A-Fa-f]{4,6})/){[$1.to_i(16)].pack("U*")}

>>371
-w, の , が余計

378 名前:66 mailto:sage [2010/03/13(土) 05:57:18 ]
> File.expand_path('あ', '/'.force_encoding(Encoding::ASCII))
Encoding::CompatibilityError: incompatible character encodings: UTF-8 and US-ASCII
となるのですが、これはバグ?
ちなみに実際やりたいことは、Tempfile.open('あ') です。

環境:fedora11、ruby 1.9.2dev (2010-03-06 trunk 26825) [i686-linux]

379 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 06:46:02 ]
ライブラリのインストールに滅茶苦茶時間掛かるんだが
なにこれ



380 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 10:12:06 ]
gem search -r hoge
searchっていちいち入力するの面倒いだけど、searchの短いオプションって無いの?

381 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 10:50:10 ]
スレのバージョンお勧めに従わない人間は自業自得なのでスルー

>>379
そりゃ君のパソコンがプア過ぎるのだよ
気になるなら -V をつけて gem install -V hogehoge すると固まったような時間帯に何してるのか見える
"Building native extensions. This could take a while..." はCで書かれたファイルをコンパイル中(ものによっては遅い)

ごっついライブラリだと定番ライブラリを10個くらい追加インストールするからどんなマシンでも一見とても遅いぞ
来週くらいに gem -V update しても遅いならまたおいで

>>380
sea

なにこれ超中途半端
正確には先頭から文字列にマッチするコマンド探してるので、s と se では複数マッチしてエラー
$ gem s mechanize
ERROR: While executing gem ... (RuntimeError)
Ambiguous command s matches [search, server, sources, specification, stale]
$ gem se mechanize
ERROR: While executing gem ... (RuntimeError)
Ambiguous command se matches [search, server]
$ gem sea mechanize

*** LOCAL GEMS ***

mechanize (1.0.0, 0.9.3)


382 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:01:06 ]
質問ですが、

PythonのPython Image LibraryみたいなRubyの画像処理ライブラリってありますか?

383 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:13:21 ]
>>382
ありません
ImageMagickインストールしてgem install rmagickするしかないねえ

384 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:13:50 ]
用途にもよるけど、既存のCで書かれた画像処理ライブラリを
Rubyから呼び出して使うことが多いと思う。

RMagick(ImageMagickのライブラリを使用)
Ruby/GD2(GD2を使用)
Rcairo(cairoを使用)
など。

ImageMagickは機能過多だ、サムネが作りたいだけなんだという
人向けにImageScienceというのもあるな。サムネ作成専用。

385 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:15:29 ]
>>381
スレの勧めないバージョンインストールしておきながら
お勧めなら引っかからない基本的エラーで文句言うような人はスルー
というのが正しいかと思う

お勧めでなくても入り口以外で引っかかってるなら質問どうぞ

386 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:19:17 ]
>>378
バグっぽい気がしたのでチケット切ってみた。 #2955


387 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:21:38 ]
>>383-384
なるほど、ありがとうございます。
画像出力より入力の機能の方を重視したいので
PILと同程度のライブラリとなるとImageMagickをつかないといけないんですか・・・
FFIするならGIL辺りが良さそうですね。
参考になりました。


388 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:23:54 ]
春休みスレ

389 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:32:34 ]
>>388
間違ってるならあとから正せばいい

質問者には数時間くらいは待ってもらえるといいかもしれん



390 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:55:34 ]
>>380
俺は面倒だから工夫してる。何度も同じコマンドうつのはDRYじゃあるめえ

Windowsなら以下の内容をgems.batとしてパスが通ったところに置いておき、コマンドラインで gems hoge で検索
gem.cmd search --details --both --all %*

Unix系でbashなら、~/.bashrcに以下を書いておいて gems hogeで検索
alias gems="gem search --details --both --all"

あくまで例なのでコッチのほうがいいとか指摘してください

391 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:58:15 ]
あんまりコマンドのエイリアスは設定しない方がいいって
誰か言ってなかった?

392 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 12:03:40 ]
* 別の環境に移ったときになんぞこれってなるからエイリアスすんな派
* 自分好みに環境をカスタマイズしてこそUNIXのシェルだろJK派

どっちを選ぶも自由

393 名前:66 mailto:sage [2010/03/13(土) 12:03:56 ]
>>386
ありがとうございます!

文句を言いたいわけじゃなく、バグなのか仕様なのか自分の勘違いなのか自信が持てないから、
このスレを利用させてもらっちゃったんですが、相応しくなかったみたいですね。
すみません。
もう書くの止めときます。


394 名前:380 mailto:sage [2010/03/13(土) 12:46:52 ]
>>381
seaね、ありがとう
>>390
linuxを使っているならaliasを使うけど、
今はwindowsを使っているからそんな方法があるなんてわからんかったよ

395 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 12:55:19 ]
>>393
1.9.1だったなら俺も>>385に同意だけど、1.9.2devは本スレが妥当じゃないかな

396 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 12:55:54 ]
ライブラリが全然整理されてない印象<Ruby

397 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:11:18 ]
うおお、ライブラリが全然整理されてない印象さんがRubyと喋ったぞ

398 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:45:08 ]
<Rubyでなくて>Rubyだと思う
固定された意味はないけど

質問
エンコーディングプラグマ、通称マジックコメント、は、
該当するマルチバイト文字のようなもんが書かれてないようなライブラリを
自作して公開する場合はつけないほうがいい?

399 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:45:51 ]
あ、>>398は1.9.1の場合ね



400 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:48:35 ]
require 'Qt4'

app = Qt::Application.new(ARGV)

hello = Qt::PushButton.new('Hello World!')
hello.resize(100, 30)
hello.show()

app.exec()
テストコード(コピペ)を動かそうとしているんだけど、動かない
>C:\Ruby\lib\ruby\gems\1.8\gems\qtruby4-2.1.0-x86-mswin32\lib\ はちゃんとあるんだけどね
環境変数が問題なのかな?

401 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:52:19 ]
>>400
動かないのならエラーメッセージを貼っておくれ

スクリプトをダブルクリックして実行したのなら
コマンドプロンプトから実行して

402 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:59:36 ]
おー、WindowsでQtライブラリ使ってる人初めて見た

403 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:08:03 ]
rubygemsでインストールしたパッケージのヘルプってどうやって見れますか?

404 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:09:59 ]
>>398
書かない場合は US-ASCII を指定したのと同義。
ASCII文字しかないなら書いても書かなくても結果は同じ。

8ビット目が立ったシングルバイト文字は入れてないよね?


405 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:12:27 ]
>>403
riかrdocか。
gem server を起動して localhost:8808/ でも読める。


406 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:13:09 ]
正規表現の動作が変わるんじゃなかったか

407 名前:400 mailto:sage [2010/03/13(土) 14:14:30 ]
>>401
test.rb:1:in `require': no such file to load -- Qt4 (LoadError)
from test.rb:1
見てのとおりライブラリの読み込みに失敗しています

let-your-heart-soar.txt-nifty.com/blog/2008/07/qtqtrubywindow_82d9.html
この通りにやって、C++のチュートリアルは動くようになっています
でも、こんな事をやってqtrubyに関係あるのか疑問

>>402
ruby gtk2を使おうかなと思ったけど、gtk+のライブラリ全然わかんないから
linuxでもqtrubyが動けば、linuxで開発してwindowsでexeを作ろうかな〜と

それに、2週間くらい前にこんな本を買ったし
>入門 Qt 4 プログラミング
>ttp://www.oreilly.co.jp/books/9784873113449/

408 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:15:52 ]
>>403
gemディレクトリ/ruby/1.8とか/doc/ の中にファイルが入ってるので好きなときに読め
ActiveSriptRubyの場合はC:\Program Files\ruby-1.8\lib\ruby\gems\1.8\doc\

409 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:17:57 ]
>>407
require 'rubygems'
require 'Qt4'



410 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:25:42 ]
>>406
US-ASCIIなソースにUS-ASCII以外のマジコメを書く場合?

411 名前:400 mailto:sage [2010/03/13(土) 14:26:51 ]
>>409
文法を覚える前にテストをするもんじゃないですねwww
助かりました、ありがとうございます

412 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:44:08 ]
>>403
HTMLファイルでいいならシェルから

gem environment

した出力の

- GEM PATHS:

の1行目(になかったら2行目)の場所の doc ディレクトリの中に

413 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:20:07 ]
#=>って習慣なの?

414 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:25:32 ]
>>413
doc.okkez.net/187/view/help

415 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:26:05 ]
習慣かどうかはしらん
ふつうコメントの直後にスペースをひとつ挟むから
# => value だよな
はちどりのRuby本もそうなってる

416 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:39:23 ]
個人的にはあまり好きではない
まあ、書籍向けの表現だと思う

417 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 17:23:40 ]
gem install -r XXXX
ERROR: could not find gem XXXX locally or in a repository
何これ?

418 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 17:33:32 ]
文字通り。


419 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 17:33:47 ]
>>417
その質問に至った経緯をまず聞こうか



420 名前:413 mailto:sage [2010/03/13(土) 17:37:04 ]
>>419
linuxでそう入力しただけだけど
得にそれ以外に何もしていない

421 名前:420 mailto:sage [2010/03/13(土) 17:37:46 ]
名前を間違えた
>>417

422 名前:420 mailto:sage [2010/03/13(土) 17:39:28 ]
ごめん、ただのスペルミスですたorz

423 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 17:39:54 ]
まずはgem search- rを使うんだ、でその結果から選ぶがよろし
自分で入力せずに素直にbash,zshの補完機能に頼った方がいいと思う

424 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 21:46:53 ]
他の言語のisXXXメソッドは、XXX?とrubyではなってるみたいですね
三項演算子とかと一緒に使うと読みにくいと思います
お前らはどうやっていますか?

return windows.visible? ? 値A : 値B

425 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 22:07:58 ]
それほどでも・・・
return (windows.visible?) ? 値a : 値b


426 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 22:10:57 ]
ぶっちゃけ、うっかり
window.visible? A : B
と書いて怒られることはよくある。


427 名前:424 mailto:sage [2010/03/13(土) 22:13:57 ]
そんなもんですか
そんじゃ気にしないようにしますわ

428 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 22:20:29 ]
条件演算子はぶっちゃけそれほど使わない
不自然感を感じてるうちにifとかに書き換わるのでむしろラッキー

429 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 23:03:17 ]
include Enumerable した場合、自分のクラスで each を定義しますが

def each
@array.each do |e|
yield(e)
end
end

def each(&block)
@array.each(&block)
end

どちらが好ましい書き方なんでしょうか?



430 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 23:27:40 ]
後者

irb1.9> class C; include Enumerable; def initialize; @a=[1,2,3]; end; def each(&b); @a.each(&b); end; end
irb1.9> p C.new.each
#<Enumerator:0x931483c>

irb1.9> class C; include Enumerable; def initialize; @a=[1,2,3]; end; def each; @a.each{|e| yield(e)}; end; end
irb1.9> C.new.each
LocalJumpError: no block given (yield)


431 名前:429 mailto:sage [2010/03/13(土) 23:43:14 ]
>>430
なるほど、ありがとうございます。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<211KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef