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


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

Ruby 初心者スレッド Part 21



1 名前:デフォルトの名無しさん mailto:sage [2008/08/06(水) 01:07:21 ]
プログラミング言語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を読め」でいいので、叩かない&怖がらせない。
 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。
 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。

809 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 07:08:07 ]
「変数には型がない。オブジェクトには型がある。」
といくら説明しても理解できない人にぶちあたると徒労感でいっぱいになる。



810 名前:デフォルトの名無しさん [2008/09/10(水) 07:09:54 ]
関数型言語使ってる人とは、これほどパラダイムが違うなんて思ってもみなかったは…

811 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 10:03:17 ]
>>809
そりゃその2つの間には関連性は希薄だからな
並べられて説明されるほど混乱するのはあたりまえだと思う

812 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:00:52 ]
オブジェクトについてのことを変数の文脈の「型」を絡めて説明するのは誤解招いてキケンだと思う…

813 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:46:47 ]
メタ議論は他所でやれ

814 名前:730 mailto:sage [2008/09/10(水) 12:57:05 ]
オブジェクト指向でプログラミングするとバグ取りが大変ですね。
久しぶりにこの感覚味わいました。

815 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 14:52:26 ]
Cだといくら難しくても構造体とポインタは避けて通れないからね…

816 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 15:03:12 ]
文法レベルで躓く男の人って・・・

817 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 15:40:58 ]
Perlだと、呼び出しの後に関数の定義があっても、きちんと認識してくれるのですが、

---------------------------------------------------
func();

sub func {
print "in func";
}
---------------------------------------------------

以下、Rubyだとエラーが出ます。

---------------------------------------------------
func #=>undefined local variable or method `func' for main:Object (NameError)

def func
print "in func"
end
---------------------------------------------------

エラーを出さないようにするには、関数を呼び出しの前に書くしかないのでしょうか?



818 名前:pl791.nas924.p-hokkaido.nttpc.ne.jp mailto:sage [2008/09/10(水) 16:30:23 ]
>>817
Rubyには関数はない
クラスやオブジェクトに関数があるということもない
メソッドのことを関数だと解説している本やサイトがあるなら晒せ

で、答はYES
クラスやメソッドの定義式の評価は実行時に行われる
実行時ということは1行目から順に実行されてるときということで、
つまり定義前のメソッドが書かれてた場合はエラーだ

まあぶっちゃけた話をするとすぐ慣れる
関数定義みたいに後ろに倉庫的にどっさりあったほうがすっきりするよねと思うことは今もあるが

819 名前:pl791.nas924.p-hokkaido.nttpc.ne.jp mailto:sage [2008/09/10(水) 16:31:19 ]
お、何だ何だ

820 名前:デフォルトの名無しさん [2008/09/10(水) 16:50:03 ]
長い説明よりスクリプトの方にしてちょ

821 名前:p3070-ipad304kobeminato.hyogo.ocn.ne.jp mailto:sage [2008/09/10(水) 17:02:55 ]
メソッドと関数の違いがわかりませんえん

822 名前:デフォルトの名無しさん [2008/09/10(水) 17:03:25 ]
>>818
そもそもオブジェクト指向というパラダイム自体不細工。
所詮は商業主義の世迷い事。
いかにも新しいことを考えましたよ、って言いたいがために新しい言葉を作っただけのこと。
本来はメソッドは関数と呼ぶべきだし、クラスも構造体と呼ぶべき。

823 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:33:18 ]
>>822 には触れないほうがいいよ

824 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:41:30 ]
>>818
サンクス
了解しました

825 名前:デフォルトの名無しさん [2008/09/10(水) 17:52:18 ]
>>823
型理論よりもちゃんとした理論体系が確立されているんですか?
間違いを通そうとして話をそらさないでくださいよ。

826 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:18:59 ]
オブジェクト指向の次って何があるの?

827 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:19:39 ]
>>825
そういう事は、それ系のスレかお前さんのブログでやってくれ。
Ruby のスレでオブジェクト指向のパラダイムを受け入れてるのは当たり前だろ。



828 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:25:16 ]
変数とオブジェクトの違いも曖昧な奴に、オブジェクト指向を語れるのか?
>>827と同じ意見だけど…

829 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:25:51 ]
しかしよく釣れるスレだなw

830 名前:デフォルトの名無しさん [2008/09/10(水) 18:26:42 ]
>>828
誰と混同してるんだ?

831 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:32:31 ]
>>826 エージェント指向とかアスペクト指向とか

832 名前:デフォルトの名無しさん [2008/09/10(水) 18:32:57 ]
なんだ厨房しかいないのかw

833 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:36:30 ]
>>826
遅延評価、monad、arrow、pi-calculus

834 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:39:01 ]
>>831
エイジェント指向ってのは一つのプログラムを作るための概念ではないよ。
もっとマクロな協調動作を目指したもの。
クラスタとかグリッドとかそっち方面の技術だよ。

835 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:40:20 ]
技術ではなくて概念 か。

836 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 19:16:46 ]
「能」という漢字を扱おうとすると必ず
unterminated string meets end of file
というエラーが出ます。どうしてでしょうか?

837 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 19:17:43 ]
ほかの漢字のときは大丈夫なんです。
「芸能」がダメで、「芸」はOKなんです。



838 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 19:27:56 ]
さあいますぐ



能\

それぞれをShift_JISで保存してバイナリエディタで開いてみるんだ

839 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 21:19:16 ]
>>837
偉大なるKENT様のご説明

文字化けについて
www.kent-web.com/pubc/jcode/index.html

840 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 21:47:26 ]
KENT様・・・

841 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 22:42:40 ]
>>801
うん。ひと晩で二、三本は生えてくるよ

842 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 22:43:37 ]
何で朝鮮人は嫌われてるんですか?

843 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 22:56:51 ]
>>842
汚くて臭いからさ

844 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 23:42:15 ]
>>831
アスペクト指向はオブジェクト指向の二番煎じ。
ITバブル時代に新しい言葉を作ってビジネス機会を作ろうと企んだが失敗に終わりそうな概念です。
ほかにもajaxとかWEB2.0とか、いろんな言葉が作られて消えていきましたが、
全部商業主義的な目的から作られた物です。
この業界をかき乱すのもそろそろやめてほしい。

845 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 23:44:57 ]
新しくも無いのにわざわざ特別な名前を与えていかにも新しくてすごそうに見えるように宣伝して儲ける手法。
全部誰かが裏で糸を引いているんじゃないかと思うほど手口が似ています。

846 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 00:10:05 ]
>>844
あんたが「本物のプログラマ」だという事はよく分かったから、
お菓子好きの集まるこのスレにはこないでくれ。

847 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 07:48:45 ]
>>844
ハスケルは学者ばかりですし、そっちではたくさん高級なメタ議論してますよ。



848 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 07:58:38 ]
だからさ,スレ違いだしもう触れるな,っての

849 名前:mx.narihara-lab.jp mailto:sage [2008/09/11(木) 08:38:43 ]
>>844
> アスペクト指向はオブジェクト指向の二番煎じ。

そうなの? 「MOP の二番煎じ」だとばかり思ってたんだが…


850 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 20:56:56 ]
Web2.0が商業用語ってどんだけ
商業にすらなってないわ

851 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 21:06:21 ]
>>850
今日のおまんこの締まり具合はどうですか?

852 名前:730 mailto:sage [2008/09/11(木) 21:08:49 ]
質問です

シンボルを宣言するとき:hogeのように記述しますが、
「:」というのはメソッドなのでしょうか?
「:」のようなメソッドを宣言する方法を教えてください。

853 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 21:27:10 ]
>>852
メソッドじゃない。

つーかいい加減マニュアル読めよ

854 名前:デフォルトの名無しさん [2008/09/11(木) 21:30:26 ]
RubyスクリプトがOut of memoryで終了してしまうんですが
どこでメモリ消費してるのか調べるプロファイリングツールみたいのはありますか?

855 名前:730 mailto:sage [2008/09/11(木) 21:33:41 ]
>>853
どこに書いてありますか?

856 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 21:40:14 ]
Stringを作るための ' や Array を作るための [ と ] がメソッドじゃないのと同じようなもんだな

857 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 21:41:57 ]
>>854
ruby -profile hoge.rb

ただし、これは死ぬほど重いので、rubygem の ruby-prof とかを使う



858 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 21:48:56 ]
>>855
www.ruby-lang.org/ja/man/html/_A5EAA5C6A5E9A5EB.html#a.a5.b7.a5.f3.a5.dc.a5.eb

859 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 21:49:09 ]
>>855
だから聞く前に読めよ

860 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 21:51:27 ]
Out of memory は RubyMagick でよく見たなあ

861 名前:730 mailto:sage [2008/09/11(木) 22:02:15 ]
>>858
ありがとうございます

862 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 23:41:24 ]
煽るような回答しかしてない人はわからないんですね、わかります。

863 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 08:40:45 ]
何を聞きたいのかイマイチ不明。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前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