1 名前: 【大吉】 mailto:sage [2009/01/01(木) 13:13:22 ] プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。 【Ruby1.9 は不安定な開発版であり初心者には全く向きません】 【最新安定版の Ruby1.8.7 の使用をお勧めします】 ※1.8.7 は1.8 と 1.9 の橋渡しをするためのリリースです。 1.9 の新機能の一部が利用可能なので初学者にお勧めです。 ※ただし十分安定しているとは言えないので プロダクション環境での利用にはお勧めしません。 関連スレや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を読め」でいいので、叩かない&怖がらせない。 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。
428 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 16:55:33 ] >>427 どうソートしたいのか考えれ 崩れるも何も、ソートする順番の問題に過ぎない class Person attr_reader :name, :sex def initialize(name, sex) @name, @sex = name, sex end def show [@name, @sex] end def Person.sort_sex(sex) if sex=='male' then 1 else -1 end end end members = [] members.push Person.new("sasaki", "male") members.push Person.new("kato", "famale") members.push Person.new("fukada", "male") members.push Person.new("akai", "female") members.sort_by {|p| [Person.sort_sex(p.sex), p.name]}
429 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 17:09:06 ] >>428 うまくいきました。 サンクス。
430 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 18:13:53 ] diaspar.jp/node/185
431 名前:デフォルトの名無しさん [2009/01/11(日) 19:37:19 ] Hpricot::Elem.new(Hpricot::STag.new('form')) をノコギリで書き換えようと思い Nokogiri::XML::Node.new('form')としたら ArgumentError: wrong number of arguments (1 for 2) のエラーが出ました。 RDocには,new(name)、と引数は一つなのですが,どうしてでしょう。このnameはStringで与えてもだめ?
432 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 19:53:44 ] >>431 ttp://nokogiri.rubyforge.org/nokogiri/classes/Nokogiri/XML/Node.src/M000044.html 第2引数はNokogiri::XML::Documentっぽい ドキュメントが間違ってるんだろうな
433 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 22:53:05 ] >>419 Aptanaとか、EclipseベースのIDEならいけるんじゃないかな。
434 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 23:17:19 ] >>419 どうせEmacs使わんだろうけどコメントしとく emacsのruby-electric-modeだと defスペース と打った時点でendが補完される その後 ruby-mode の ruby-reindent-then-newline-and-indent を使って改行すればインデントも同時にされる この程度ならEmacsユーザならごく当たり前のこと というかRuby用の動作があるエディタならみんな似たようなことできるでしょ?
435 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 00:38:32 ] >>419 Vim の場合 runtime/ftplugin/ruby.vim runtime/indent/ruby.vim を調べてみたけど、そういうのなかった。 %HOME%/vimfiles/ftplugin/ruby.vim か $HOME/.vim/ftplugin/ruby.vim に、 以下を入れておけば、OK inoreab <buffer> module module<cr>end<up><end> inoreab <buffer> class class<cr>end<up><end> inoreab <buffer> def def<cr>end<up><end> inoreab <buffer> do do<cr>end<up><end> inoreab <buffer> case case<cr>end<up><end> inoreab <buffer> begin begin<cr>end<up><end>
436 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 01:06:25 ] hash = {} [:a, :b, :c].each {|k| hash[k] = @hash[k] } という処理をもっと簡単に書く方法があれば教えてください。
437 名前:デフォルトの名無しさん [2009/01/12(月) 01:14:36 ] hash = @hash.dup()
438 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 01:45:16 ] >>435 endwise.vim というプラグインがある www.vim.org/scripts/script.php?script_id=2386
439 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 03:17:20 ] >>419 EclipseかNetBeansでsnipet使うのはどうだろうか? リターンでは無理だが別のキーで、コードの展開はできるぞ
440 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 04:15:34 ] >>436 hash.merge!(@hash)
441 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 07:19:55 ] >>436 それが一番短い部類 「○○というキーを持つペアを [k, v] の配列で返す」みたいなメソッドって標準には無いんだよね hash = Hash[@hash.find{|k, v| [:a, :b, :c].include?(k)}]
442 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 07:22:22 ] 書いててなんか短いなとは思ったんだ hash = Hash[*@hash.find{|k, v| [:a, :b, :c].include?(k)}.flatten] うーん
443 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 07:31:20 ] hash という変数名は全てのオブジェクトに存在する hash っていうメソッド名と被るから、 特に拘りがあるのでなければ避けておいたほうが吉 プログラム(1行のみ): p hash 結果: 22412530 適当なハッシュの変数名は h が人気 h と書かれていれば、ほぼ全員がハッシュかなと推測してくれる
444 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 09:09:34 ] 遅延評価はあるから バックくおーとみたいなのはできるかもしれない
445 名前:デフォルトの名無しさん [2009/01/12(月) 10:04:50 ] ActiveRecordでsqlite3のDEFAULT CURRENT_DATEに 相当するのは何? 今,record.date = Date::todayみたいにいちいちやってるのだけど, なんだか,もっとスマートな方法がある気がするので,質問
446 名前:デフォルトの名無しさん [2009/01/12(月) 11:02:22 ] 質問です。 スキルアップのためにRubyでビジネス向けシステムを作れという課題が出ました。 勤怠管理システムのような物を作ろうかなと考えています。 私の言語スキルはCのみでオブジェクト言語は概念しかわかりません。 Cは基本情報合格しました。 とりあえずRuby1.8をインストールしようとしましたが失敗しました。 (コンソール画面から先に進めません) こんな初心者にお勧めのRuby書籍を教えてください。 前述の通り、インストールから失敗してしまいましたので インストール方法も解説している物が欲しいです。 最終的に簡単なシステムを作らなければいけないので 入門系と実践系の物をお勧めいただければと思います。 どうかよろしくお願いします。
447 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 11:08:49 ] >>446 何をもって「失敗した」と言ってるの? Rubyインストールしただけだったら別に開発環境が入るわけじゃないぞ。 あと使ってるOSは?
448 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 11:14:05 ] Ruby学習者に必要なもの(ある程度持っていると暗黙のうちに仮定されているもの) ・ OSへのある程度の習熟 ・ コマンドライン操作 ・ HTTPとウェブに関する基礎知識 ・ データベース利用に関する基礎知識(Rails限定) ・ PerlかUNIX Cの教科書的な基礎知識
449 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 11:19:00 ] >>448 …持ってなくてもいいが、まあ、持ってないとひたすらに遠回りではあるな 歩行練習と自転車乗る練習を同時にするようなもんで、学習量と学習時間が倍くらいになる >>446 本当にCで自分用プログラム作れるだけの技量があるか怪しいと思うんだが、コマンドライン操作はできるかい
450 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 11:22:55 ] できるだろ Cができるってことはmakeとかも使えるってことなんだから
451 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 12:13:45 ] >私の言語スキルはCのみでオブジェクト言語は概念しかわかりません。 >Cは基本情報合格しました。 Cができるなんてどこにも書いてないぞ
452 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 12:16:51 ] Cが出来てRUbyで着ない香具師なんていない 初心者詐称 釣り決定
453 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 12:19:53 ] > こんな初心者にお勧めのRuby書籍を教えてください。 >>2
454 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 12:21:46 ] >>446 よろしければその会社でのあなたの給料と実質労働時間を教えてください
455 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 12:23:32 ] >スキルアップのためにRubyでビジネス向けシステムを作れという課題が出ました。 会社員だなんてどこにも書いてないぞ
456 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 12:26:23 ] インストールも出来ない初心者向きの本を勧めれば回答終了じゃないのか、これ。
457 名前:446 mailto:sage [2009/01/12(月) 12:35:30 ] 早いお答えありがとうございます。 こちらの回答が遅くて申し訳ありません。 下で個別にもレスしますがCの実践的な開発経験はありません。 資格試験(基本情報)で問題として出されるレベルのプログラムを 一人で完成させる事はできます。 わかりにくいようでしたらプログラムの基礎の基礎(ループやメモリ)だけは わかるズブの素人としてご指導頂ければ、と思います。 >>447 RailsをインストールするためにDOS画面にコマンドを打ち込んでも NoFound〜的文章が表示されて先に進みません。 今、手元にインストールしようとしたマシンがないので 正確なエラー文はわかりません。 インストールガイドはネット上で見つけた動画を参考にしたのですが これもインストールするパソコンにブックマークしていたので 今この場ではわかりません。 わからない事が多くてすいません。 「これが必要」という情報があれば調べてきます。 OSはWindowsVistaです。
458 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 12:36:15 ] オライリーの「初めてのRuby」。まじおすすめ。 Railsやるならなんだろう?
459 名前:446 mailto:sage [2009/01/12(月) 12:36:27 ] >>448 ・ OSへのある程度の習熟 ある程度、がどのくらいかわからないのですがマニュアルを見て 再インストールはできました ・ コマンドライン操作 ほとんど使用したことがありません。 試験勉強のためにログオンやログオフ、プリンタの操作を数回だけ。 ・ HTTPとウェブに関する基礎知識 基礎知識なら何とか… ウェブページが表示される仕組み程度はわかります。 ・ データベース利用に関する基礎知識(Rails限定) データベースの概念やSQL文までは一通りわかります。 >>449 図々しいのですが、持っていない人間が効率的に学習できる順番など もしありましたら教えていただけませんか…? >コマンドライン操作 ほとんど使用したことがありません。 試験勉強のためにコマンドライン一覧のようなマニュアルを見てやった時は とりあえずできました。 自分用プログラムを作ったことはありません。 ・ PerlかUNIX Cの教科書的な基礎知識 Perl・UNIXはわかりません。 Cの教科書的なことならわかります。(解説書も持っています)
460 名前:446 mailto:sage [2009/01/12(月) 12:50:45 ] >>450 Cの知識はありますが実践経験はありません。 makeのやり方も解説を読む限りでは理解できたのですが そこまで辿り着けませんでした…。 >>451 試験に合格できただけなのでたぶんできないと思います。 >>452 Cもできないようです… >>453 入門・はじめて〜と付いている物が多すぎて… 一番最初に読むと良い物を教えていただけないでしょうか。 (できればインストール法が詳細に載っているとありがたい)
461 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 12:51:17 ] >RailsをインストールするためにDOS画面にコマンドを打ち込んでも >NoFound〜的文章が表示されて先に進みません。 >今、手元にインストールしようとしたマシンがないので >正確なエラー文はわかりません。 インストールしようとしたマシンが使える環境になったらまたおいで
462 名前:446 mailto:sage [2009/01/12(月) 12:51:32 ] >>454 >>455 会社員ですがプログラミング職ではありません。 ずっと経理でやってきました。 自主的に基本情報を取得したところ社長がそれを聞きつけて 「手当て出すからもっと本格的に勉強しろ。 今度経理システムの作成をソフトウェア会社に依頼するから それまでに一通りわかるようになって開発に加われ。 依頼予定の会社はRuby使うって言ってるからRuby勉強しろ 」 要約するとこんな感じです。 「とりあえず実際に使える物を作ったら覚えるだろ」という事らしい。 29歳の高卒女。情報系の学歴はなし。 実質労働時間は9時間くらいかな。 今までの仕事(経理)をする時間を引いたら毎日3時間程度。 でも来週で引き継ぎ終わるから、そしたら9時間Ruby学習に充てていい。 >>456 そういう物を教えていただけるとありがたいです。
463 名前:446 mailto:sage [2009/01/12(月) 13:01:04 ] >458 ありがとうございます。 レビューなどを見ると入門より少し難しいようなのでこれを一冊と もっと基礎的な物がないか捜してみようと思います。
464 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 13:19:44 ] >>462 それはチャンスって言えばチャンスだね。でも、フルタイム学習に あてていいとなると、失敗した時のリスクも結構大きいかも。 研修参加も可能かどうか相談したほうがいい。 環境のインストールから、ということであればまずはこのへんの本でも。 www.amazon.co.jp/%E3%81%8B%E3%82%93%E3%81%9F%E3%82%93Ruby-Rails%E3%81%A7Web%E5%88%B6%E4%BD%9C-%E9%BB%92%E7%94%B0-%E5%8A%AA/dp/4798116793/ref=sr_1_2?ie=UTF8&s=books ただし、環境のインストールについては過剰に詳しく書いてあるけど、 言語要素についてはあまりにさらっとしてるし本質的な理解には至らない かもしれないので、これでざっと環境を作ってサンプルとか動かして みたら、さっさと他の方法もあたったほうがいいと思う。 あと、ギブアップするなら傷が深くならないうちにお早めに。
465 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 13:33:43 ] >>463 だから >>453 も言ってるが >>2 を見れ しかし、プログラミングもできないのに SI 名乗る人たちがいるのに、 >>462 のような理由でプログラミングの勉強をしろとは、 社長はなかなかの大人物。(か、ちょっと勘違いしちゃってるのか、分からんが) 先は途方も無く長いけどがんがって下さい。
466 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 14:13:30 ] 断ったほうがいいと思う
467 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 14:16:57 ] 良いチャンスだとは思うが、 ちゃんとした研修を受けれないなら断るのも手か。
468 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 14:28:34 ] >>466 だな 自社のシステムを学習者に任せるとか根本的にありえない こっちから人出せば開発依頼費が浮くとか勘違いしてるだけに過ぎない
469 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 14:38:27 ] >>468 馬鹿発見 こういうのは社長がシステム会社側に余分に数百万金積んでんの
470 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 14:45:08 ] なにそのお妾さんシステム
471 名前:446 mailto:sage [2009/01/12(月) 14:47:06 ] いろいろアドバイスありがとうございました。 とりあえず今から都市部の大きな本屋に行って自分に合いそうな 初心者向け書籍を探してみようと思います。 あとはみなさんのアドバイス頂いた物をネット注文予定。 最後の方、個別にお礼をレスできなくてすいません。 うちは小さな会社で社長もワンマンなので残念ながら研修や断るという選択肢はありません。 社長が大昔に配送業務を外部委託したときに超ぼったくりされた苦い思い出から 外部と提携する時は必ず社員も加える事になっています。 もし私が断ったらエクセルワードくらいしか使えない経理部長がやらされそう… 一応期間的には半年くらいは貰えるようですが、厳しい道のようですので 最悪の場合は転職の覚悟もしておくことにしますw 丁寧にいろいろありがとうございました!
472 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 14:56:09 ] > 外部と提携する時は必ず社員も加える事になっています いやそんなこたわかってる(というかそんな理由しかありえん) それでもなお、 「依頼する会社が○○で開発するから話合わせるために○○を覚えろ」 というのは完全に間違っている というか、それでは何の解決にもなっておらず、遠からず同じ大火傷が起こるだろう
473 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 15:29:14 ] 会社の事情も何も分からんのに、そんな脊髄反射でスレ違いな話することもなかろう
474 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 15:36:57 ] 企業様におかれましては仕様固めるとか意思伝達スムーズにするとかのほうにリソース割いてほしいのう 開発言語なんて1ミリも知らなくていいのにっていうかむしろそっちに入り込まれると邪魔
475 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 18:21:32 ] >>445 created_on というカラムを作ればレコードの作成日が 勝手に残る(ようにActiveRecordが面倒みてくれる)けど、それではだめ?
476 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 18:32:32 ] 今日さ、普段使ってるファイルでFile#flock(File::LOCK_EX)のテストしてたんだよね。 そしたらFile.open("hoge", "w")したとたん中身消えちゃって涙目になった。
477 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 18:51:39 ] この前、アホアホに彼女と行きましたそうしたら、奥の座敷に、芸能人が10人ぐらいいました。 その中でアホアホ鍋食べていたら、芸能人の人が一緒に飲もうよと、誘ってくれました。 凄くうれしいかたよ。 それから、毎週アホアホに言っています。
478 名前:デフォルトの名無しさん [2009/01/12(月) 20:31:09 ] プログラム上でウェブサイトにpostしたいのですが、 そういうライブラリがあれば教えて下さい
479 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 20:33:41 ] 標準の net/http gem の httpclient gem の Mechanize 好きなの選べ
480 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 20:38:35 ] ありがとうございます!
481 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 00:03:14 ] >>478 Mechanizeが直感的で一番かんたんじゃないかな? わかりにくいけど
482 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 01:26:33 ] >>481 >Mechanizeが直感的で一番かんたんじゃないかな? >わかりにくいけど パラドックス?
483 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 08:38:42 ] おまいら高卒アラサーだと雌でも食いつき悪いのな。 どんだけ二次元嗜好なんだよwww まあコンピュータ言語知識のあるPGやSEでも糞な仕様作るのはいくらでもあるので、ユーザ側でコンピュータ言語知識有ってもいいでしょ。 結局、IT業界って客商売だし、お金出す側の客が、システムの奥深くまで把握して金出したいって要求なんだから迷惑とか関係無いわな。 ほぼ、Cの実務知識無さそうだし、現状取り組むならrubyもCも変わらないね。 >>448 に上げてある、システム開発するうえで前提と成る基礎スキルの習得がまずは必要だと思う。 依頼予定の会社のruby使用のシステムの詳細をもう一度確認したら? Ruby on Rail使う予定というなら、 【Ruby】Ruby on Rails Part6 pc11.2ch.net/test/read.cgi/php/1224838013/l50 とか、どーぞ。 貴重な体験だと思うので、日記でも付けて、あとで書籍化でもすると、ルビー神の一人に成れて世界変わるかもしれないwww
484 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 10:32:08 ] >>436 >hash = {} >[:a, :b, :c].each {|k| hash[k] = @hash[k] } >という処理をもっと簡単に書く方法があれば教えてください。 たぶん、ない。 class ::Hash def elems_at(*keys) h = {} keys.each {|k| h[k] = self[k] } h end end とでもして、hash = @hash.elems_at(:a, :b, :c)としとけ。 >>437 >hash = @hash.dup() これは違うだろ。選択した要素だけを選び出すのであって、要素をすべてコピーするわけではない。 >>440 >hash.merge!(@hash) 上に同じ。 >>442 >hash = Hash[*@hash.find{|k, v| [:a, :b, :c].include?(k)}.flatten] include? は線形探索だから、それを何度も行うのは効率悪そう
485 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 11:20:42 ] >>hash = Hash[*@hash.find{|k, v| [:a, :b, :c].include?(k)}.flatten] >include? は線形探索だから、それを何度も行うのは効率悪そう [:a, :b, :c]に対しての探索だから3要素ならたいしたことないんじゃないの
486 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 12:02:02 ] そりゃ本来のデータなんてスレに書きこまんだろ 例示のために3要素にしてるに過ぎない可能性が高い ていうか、>>436 で用が済むんだけどね これより妥当で遅れない汎用な書き方はまず無いと思われ 基本的な記法を使い倒せる技術最強伝説
487 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 13:20:46 ] うん、>>436 が一番、やりたいことが素直にコードになってていいと思う。 hash = [:a, :b, :c].inject({}){|h, k| h[k] = @hash[k] ; h } こんなんもあるけど、自分ならやらない。
488 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 21:30:11 ] でもまあ初心者はmapとか使わずeachしか使ってなかったりするからなあ。 eachじゃない書き方があれば教えてあげるのは悪いことでもない。
489 名前:デフォルトの名無しさん [2009/01/13(火) 22:34:17 ] 今、ドラクエやってるんだけど、太陽の石ってどこにありましたっけ?
490 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 23:19:46 ] みつかりました ありがとうございました
491 名前:デフォルトの名無しさん [2009/01/14(水) 00:13:04 ] >>490 ざけんなw
492 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 01:04:46 ] >>436 keys = [:a, :b, :c] hash = Hash[*keys.zip(@hash.values_at(*keys)).flatten] これでもできるような気がするけど、自分ならやらない。
493 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 02:57:57 ] Time.nowを簡単に日本語で出力する方法はないでしょうか? 今は、 puts Time.now.strftime('%Y-%m-%d(%a) % %H:%M:%S') とやっています。%aは ["日", "月", "火", "水", "木", "金", "土"][Time.now.wday] に置き換えればよいと思いますが・・・ > ruby -v ruby 1.8.7 (2008-06-20 patchlevel 22) [i386-mswin32]
494 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 03:02:36 ] 標準ではない。そのへんはその要領で自分で書いておくれ。
495 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 03:45:37 ] >>494 ありがとう。適当に書いてみます
496 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 03:50:57 ] >>493 TimeでなくDateTimeクラスなら以下のように: $ irb -rdate -rational -Ku -f irb> RUBY_DESCRIPTION => "ruby 1.8.7 (2008-08-11 patchlevel 72) [i686-darwin9.5.0]" irb> Date::const_set('ABBR_DAYNAMES', %w(日 月 火 水 木 金 土)) warning: already initialized constant ABBR_DAYNAMES # ミナカッタコトニ => ["日", "月", "火", "水", "木", "金", "土"] irb> t = Time.now => Wed Jan 14 03:47:50 +0900 2009 irb> dt = DateTime.civil(t.year, t.month, t.day, t.hour, t.min, t.sec, Rational(t.utc_offset, 86400)) => #<DateTime: 21209863247/8640,3/8,2299161> irb> dt.strftime('%Y年%m月%d日(%a) %H:%M:%S') => "2009年01月14日(水) 03:47:50"
497 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 10:56:07 ] // / / パカッ //⌒)∩__∩ /.| .| ノ ヽ / | | ● ● | / | 彡 ( _●_) ミ まピョーん☆ / | ヽ |∪| /_ // │ ヽノ \/ " ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
498 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 11:12:39 ] >>488 map は写像製造だし、写像を作ること以外に使うべきではない
499 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 11:33:28 ] 498の読解力のなさは委譲
500 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 12:24:21 ] Array.new と Array::new の違いは何ですか?
501 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 12:40:02 ] >>500 字面の雰囲気
502 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 12:41:33 ] >>500 スクリプト作者の出身言語および硬直思考の頑な度
503 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 12:45:21 ] >>500 タイプ数 ネタなのかも知れんが、一応マジレスしとくと定数とかのからみで "::" を使うと 面倒引き起こす可能性が無いとはいえないから、理由が無いなら "." を使っとこ
504 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 12:56:20 ] メソッド起動に :: を使うことは Ruby では極めて稀というかメリットは何もないよ 他人の書いたスクリプト中で クラス::メソッド という記法を見つけたら心の中でm9(^Д^)プギャーしとくといい 自分から使う理由はないからさ
505 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 13:01:33 ] >>501-504 サンクス 違いはないけど、ドットを使ったほうRuby流なんすね
506 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 13:29:36 ] クラスメソッドとインスタンスのメソッドの呼び出し方に違いはありますか
507 名前:デフォルトの名無しさん [2009/01/14(水) 16:59:10 ] rubyでアンテナサイトつくってみたいんですけど 何をしたらよいのかわかりません。 何かよい書籍とかありませんか? 実際のアプリケーション作成となると、全くわかりません。
508 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 17:01:03 ] >>506 ないっす File = Class.new(IO) def Fie.basename(...) ... end File.basename("aaa/bbb") # => "bbb" クラスもClassクラスのインスタンスなもんで。
509 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 17:59:41 ] (゚∀゚)ラヴィ!!
510 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 18:26:19 ] >>507 作るな
511 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 18:35:30 ] まあねえ ネットに関するプログラムは自力で学んでもらってなんぼだしな 何していいのかわからないなら作るのはまだ早い
512 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 18:56:25 ] アンテナみたいな、作り方によっては他人に迷惑をかけまくるものは、 「何をしたらよいのかわかりません」レベルの人間には手を出して ほしくないね。 とりあえずもっと別のところから修行するんだ!
513 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 19:13:47 ] その別のところというお題で適当なものを考えてあげようか。 初心者が上達するには題材が必要だろう。 youtubeのRSSを定期的にとってきて、関心のあるキーワードに引っかかったエントリをメールで送信してくれるようなプログラム。
514 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 20:51:58 ] >>507 まずはHTTPの仕組み、それと既存のアンテナがどんなことやってるのかを学ぶべき 513のお題も学習に良さそうだ ただメール送信はちょっとややこしいから、エントリの表題をシェルに表示するぐらいでいいかも
515 名前:デフォルトの名無しさん [2009/01/14(水) 21:58:54 ] すいません、まだドラクエやってるんですが、竜王ってどこにいましたっけ?
516 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 21:59:53 ] 竜王城
517 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 22:00:52 ] 玉座の後ろの隠し階段だよ
518 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 22:12:27 ] ryuou.castle.search('ryuou')
519 名前:デフォルトの名無しさん [2009/01/14(水) 22:15:02 ] 一緒に世界征服しようとしたらバッドエンドだ、気を付けろ
520 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 22:26:02 ] 昔ファミコンでやってた時何も知らずにバッドエンドだった時は放心した。。。 パスワードとらずにやってたから初めからやり直しだったなwww 苦い青春だったぜ
521 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 00:41:39 ] Mac OS X で ruby-1.9.1-rc1 をコンパイルすると、i686ではなくi386になる。 $ ruby -v ruby 1.9.1 (2008-12-30 patchlevel-0 revision 21203) [i386-darwin9.6.0] i386用にコンパイルされていると遅いよね? i686用にコンパイルしたいんだけど、どうしたらいい?
522 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 04:03:10 ] 誰かrarff使っている人いますか?
523 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 07:29:43 ] >>520 2か3で誰かと入れ替わるイベントもあったよな。どっかの王様だっけ? あん時はパニックになって友達に泣きついたが、あとから考えると 恥ずかしかったな。
524 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 08:41:56 ] 古いバージョンで動いてたスクリプトを最新版で動くようにする変換機とかありますか?
525 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 10:03:15 ] >>524 原理的に無理でしょう 人間の手で書き換えるしかないんじゃないかと
526 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 15:20:40 ] >>523 3で王様になるイベントだな。 あれは最初どうにもならんでリセットしたわw
527 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 17:31:34 ] irb> file.scan(re[:method]) RegexpError: Stack overflow in regexp matcher ぬう これでカッコ多いか生意気な
528 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 04:09:51 ] 下位互換性確保のために、古いバージョンの実行環境を残しておくのは重要。