- 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を読め」でいいので、叩かない&怖がらせない。 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。
- 231 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 12:53:06 ]
- >>230
OneClickInstallerを使って1.8.7になるはずがない あれは1.8.6しか存在しない 君が使ったのはRubyInstallerで、これはtkライブラリは含まない Windowsでtkライブラリを使いたいのなら>>6のActiveScriptRubyを使うべき これならActiveTclが別途入ってればなんとかなる 余談だけど > 更新日時:2005/11/16 21:36:46 5年も前の記事をほいほい参考にすべきではない
- 232 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 13:47:54 ]
- >>224-227
Thanks! やっぱソコソコ手間かかるか 目的を正直に白状すると,デフォルトのUAがアレなので 常時ナチュラルなUAでライブラリを使用したいだけなんだよね 俺仕様ってことで推奨されない方法で行きます
- 233 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 13:53:49 ]
- >>228
str = "hoge/aaa\/bbb/fuga" re = /\/[^\/]++\/[^\/]++\// p str.slice(re) #=> "/aaa/bbb/"
- 234 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 13:59:46 ]
- >>232
Net::HTTP を直接使用することは極力避けたほうがいい(第一面倒だ) 自作のスクリプトで何度も使うというのならそのようなライブラリを自作するチャンス 俺は wget を定義して require 'orelib/wget' してしばらく使い回してたぞ
- 235 名前:232 mailto:sage [2010/03/11(木) 14:15:56 ]
- >>234
>極力避けたほうがいい それはどうして? net/httpのAPIは結構気に入ってるんだけど コネクションがスレッドセーフじゃないとか Errno系の例外が不親切とかそこら辺?
- 236 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 14:28:03 ]
- Net::HTTP は抽象度がわりと低いほうだからじゃないでしょうかぬ
システム的な問題ではないと推測
- 237 名前:220 mailto:sage [2010/03/11(木) 15:25:24 ]
- >>231
仰る通り単体のRubyを入れていたようです oldと書いていたので新しいもののほうがいいと思って そっちをダウンロードしてしまったみたいです ActiveRubyをダウンロード gemのアップグレード この時点で試しに require "tk" したけどエラー、tcltklibbなどtk関連のファイルがあるのに開けないみたい >これならActiveTclが別途入ってればなんとかなる この一文がなければここで挫折してました そしていろいろぐぐっているとVisualuRubyはすでに入っているようなので こちらでGUIを作りたいと思います ありがとうございました
- 238 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 16:51:12 ]
- すみません。お尋ねします。
ファイル上書き確認のコードを書いているのですが if File.exist?(outfile) print "#{outfile} は存在しています。上書きしますか ? (y/n): " answer = STDIN.gets if /y/i !~ answer exit; end end 問題ないときもあるのですが、状況によっては(その状況が いまいちよく分からないのですが)printが実行される前に STDIN.getsに入って、何も表示されないまま待ち受け状態に なってしまいます。printの対象を事前にflush(?)するには どうしたら良いのでしょうか?
- 239 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 17:08:07 ]
- >>213
あんまりよくわからんなりにソースを読んで見たところ(Windows版Ruby1.8.7だとして) sleep は引数が無いなら WinapiのSleep(INFINITE)で無限に待つみたいで 引数があるなら Winsockのselectっていうのを呼んでた selectはタイムアウト0秒だとすぐに帰って来るみたいなので sleep(0) だと sleep() とは違ってすぐに帰ってくるようだ るりまが間違ってるんじゃないだろうか? あんまり自信があるわけじゃないので だれか詳しい人、正確な説明よろしく
- 240 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 17:08:27 ]
- 自分で答言ってる
if File.exist?(outfile) print "#{outfile} は存在しています。上書きしますか ? (y/[n]): " $stdout.flush exit if $stdin.gets =~ /\Ay/i end
- 241 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 17:09:19 ]
- >>238
flushって言葉を知ってるなら IOのインスタンスでありprint等の出力先である$stdoutにそれをすればいい と言えばわかるんじゃないかな
- 242 名前:238 mailto:sage [2010/03/11(木) 17:25:47 ]
- >>240, 241
バッチリ動きました。ありがとうございました。 情けないことに$stdinの方をflushして 動かんなー、と悩んでました・・・。
- 243 名前:220 mailto:sage [2010/03/11(木) 18:02:05 ]
- tkの方が解説サイトや機能が多いので
TCLフォルダにActiveTCL入れてみたけど実行するとエラーになる いろんなサイトみて環境変数にパスもちゃんと入れたのに TCL_LIBRARY TKL_LIBRARY INCLUDE LIBなど 実行するとここを読みに行ってエラー /Ruby/lib/ruby/1.8/i386-mswin32 ここにもActiveRuby入れたときのTCLがあるのになぜエラー? もう疲れたよ・・・
- 244 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 18:11:21 ]
- ActiveScriptRuby(ActiveRubyというものは存在しないしこう表現してもいけない)は
デフォルトで C:\Program Files\ruby-1.8 にインストールするはずだが C:\Ruby にインストールされるのは RubyInstaller の Ruby
- 245 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 18:18:22 ]
- RubyInstallerをアンインストールしなかったのか
予想外だ というかRubyでGUIなんかわざわざやろうという人はもっと熟練して賢いもんだと思ってた
- 246 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 18:24:04 ]
- やはりTkへのアクセスの存在は隠したほうがいいのかもしれない
もう応対がめんどくさすぎる デフォルトOFFのRubyInstallerの判断は賢い …正式版じゃないからかもしれないが どうしてもTkに処理を渡したいとき用のライブラリであって、 Rubyでウィンドウを作るためにあるわけじゃない なんでRubyでウィンドウアプリケーションを作ろうと考えるのかもう全く理解できない
- 247 名前:220 mailto:sage [2010/03/11(木) 18:32:29 ]
- 簡単なのはRubyと聞いたのでやろうと思ったんだけど
まさかインストールするだけで2日かかるなんて
- 248 名前:220 mailto:sage [2010/03/11(木) 18:35:42 ]
- >>244
空白開いてるといけないとかどこかで見たから デフォルト変えてD;\直下にインストールしただけ エラー表示されるときのパスもちゃんとインストールされた 場所のTCLを参照しているし、でもエラーが出る RubyInstallerはActivescriptRubyを入れる前に ちゃんとアインインストールしました 残ったフォルダも直接削除しましたし
- 249 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 18:38:28 ]
- >>247
簡単だよ ただ、OS操作とコマンドライン文化に不慣れなプログラミング初心者が独学でやっても簡単だと言った人がいたなら 俺が許可するのでグーで殴れグーで
- 250 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 18:40:00 ]
- >>249
スレのテンプレすら読めない人も追加で
- 251 名前:220 mailto:sage [2010/03/11(木) 18:46:47 ]
- >>246
>なんでRubyでウィンドウアプリケーションを作ろうと考えるのかもう全く理解できない ここを見たので、この通りやろうとして躓きました jp.rubyist.net/magazine/?0002-FirstProgramming 逆になぜ作ってはだめなのか私にはわかりません そういった説明もないですし
- 252 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 18:48:50 ]
- >>250
そだな、>>1の注意書きとか読めてないような人にはたぶん無理だな
- 253 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 18:51:41 ]
- Rubyを使ってる人は程度が低いので、Ruby以外の知識が要求されるGUIプログラミングを否定しようとします
そういった人に騙されないようにしましょう
- 254 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 19:00:11 ]
- >>253
今のお前恐ろしくつまんないんだけど…
- 255 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 19:05:13 ]
- いや、Rubyとかじゃなく、GUIに関するドキュメント少なすぎるだけだと思う。
LinuxでGTKプログラミングやろうとすると多くの人が挫折するし。
- 256 名前:220 mailto:sage [2010/03/11(木) 19:06:06 ]
- エラー内容
D:/Ruby/lib/ruby/1.8/i386-mswin32/tcltklib.so: tcltklib: fail to open tcl_dll (LoadError) from D:/Ruby/lib/ruby/1.8/tk.rb:6 Complete(1) ソースコード require "tk" Tk.mainloop xpsp3で以下をダウンロード ActiveScriptRuby 1.8.7(p249) with-winsock2 tcl-stub ActiveTcl8.5.8.1.291945-win32-ix86-threaded.exe 参考サイト arton.hp.infoseek.co.jp/indexj.html www.db.is.kyushu-u.ac.jp/rinkou/ruby/activescriptrubyinstallwindows.html lldev.jp/ruby/tips/ruby_tk_install.html など・・ こんな感じです
- 257 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 19:27:32 ]
- 環境変数が設定できてないか参照できていないように見える
コマンドプロンプトから C:\>echo %TK_LIBRARY% C:\Tcl\lib\tk8.4 C:\>echo %TCL_LIBRARY% C:\Tcl\lib\tcl8.4 C:\>ruby -e "require 'tk'" (何もエラーが出ないまま終了) どうせ RDE がなんかしてるんだろうと思う
- 258 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 19:29:51 ]
- Ruby と Tk をインストールしてから一度も RDE を再起動してない場合はこうなるな
- 259 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 19:43:46 ]
- RubyもTclも入ってない環境だったので Windows 7 Ultimate 64-bit で試してみた
1. ActiveScriptRuby 1.8.7(p249) with-winsock2 tcl-stub をインストール 2. ActiveTcl8.5.8.1.291945-win32-ix86-threaded.exe をインストール (インストーラは管理者として実行) > cd "C:\Program Files (x86)\ruby-1.8\bin" > irb irb(main):001:0> require 'tk' => true irb(main):002:0> Tk.mainloop() # ここでTcl/Tkのウインドウが表示される => true ウインドウを出すところまでは普通に動くね
- 260 名前:220 mailto:sage [2010/03/11(木) 19:56:49 ]
- >>257
全く同じ結果でエラーも出ませんでした もしやと思って、test.rbをdblclickしたら普通に起動しました ruby consoleで >test.rbとやってもフォームが表示されました >>258 再起動は何度もしましたが同じ結果でした >>259 そのTCLはActiveScriptRubyに入っているTCLですか? それとも別途インストールしたほうのTCLでしょうか? どこかのサイトにRubyが参照しているライブラリのディレクトリを表示する コマンドが書かれていたんですけど、閉じてしまってわからなくなった
- 261 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 20:00:39 ]
- 詰まる初心者の9割はRDE使ってるよな
なんなの
- 262 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 20:12:21 ]
- >>261
誘蛾灯みたいなもんだと思う コマンドプロンプト上から ruby -e "require 'tk'; Tk.mainloop" を実行してウィンドウが出るのに RDE のエディタ部に require 'tk';Tk.mainloop と書いて F5 押してエラーログが出るなら RDE の問題
- 263 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 20:58:57 ]
- zipとrarを回答する短いプログラムを作ろうと思っているんだけど、
OSのコマンドを使わずに作りたい できればwindowsとlinuxのどっちでも動くようにしたい 教えてエロい人!!
- 264 名前:220 mailto:sage [2010/03/11(木) 21:01:03 ]
- 初心者は蛾扱いか
プログラマってこういう人間ばっかりか
- 265 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:05:01 ]
- >>263
ソース読んでそういうライブラリ作るとか。 tarは自分で作ったことあるよ。
- 266 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:10:03 ]
- 正直RDEというだけで話聞く気9割減
- 267 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:13:10 ]
- >>264
1〜2日くらいしか考えてないんだろ そんくらいで怒るなよ みんな親切にしてるじゃないか
- 268 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:16:51 ]
- >>263
コマンドじゃなければいいだけなのならほぼ全てのスクリプト言語でできるぞ その言語環境がインストールされていることが前提だが というかシェルに展開を任すような処理をしてる言語を俺は知らない
- 269 名前:263 mailto:sage [2010/03/11(木) 21:18:06 ]
- >>265
tarを解凍するコードをRubyで書くのって、面倒じゃないんですか? Rubyの文法がまだ分からないんでorz 頑張って作ってくれと頼まれたもので..
- 270 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:21:00 ]
- >>269
いやtarの展開だけなら数百行でおk。 アーカイブに追加するのは、ちゃんとテストしないと恐ろしいのでやめた。 面倒なら外部コマンドに投げるのが楽。
- 271 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:25:18 ]
- >>266
Rubyを知らない人間がRDEを使うのは嫌われる Ruby on RailsはRubyとは実質無関係なので他所で Ruby1.9.1はとりあえず初心者は使うな RubyInstallerはインストール後がめんどくさいから使うな Rubyで関数と言って教える何かがあったらそいつから即手を切れ こんなもん? >>269 それは 「ZIPとTARの仕様構造を自力で調べてそれを展開するようなプログラムを作ることで勉強しろ」 という意味だろうから話がちょっと違う Rubyは(少なくとも1.8は)いわゆる文字列とバイナリ列は同じなので ○バイト目から△バイト目までをどうにかする、という処理は普通に書ける もし「外部コマンドがインストールされてないとZip用ライブラリやTar用ライブラリが動作しないのではないか」 と思っているのなら、そんなことはない 普通にインストールされていればRubyは両者をそれこそ3行くらいで展開する
- 272 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:27:13 ]
- あ、Zipってそっちか
それはrubygemからの追加インストールがいるな
- 273 名前:263 mailto:sage [2010/03/11(木) 21:27:41 ]
- >>268
zipを解凍するライブラリーはrubyにもあると思いますが、 rarはライセンスのせいでライブラリーが・・・と思ったので >>270 さすがに、制限時間があるなかで「Rubyの文法 + 解凍のコード」を 書くのは厳しいですね〜
- 274 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:47:28 ]
- @hoge = hoge
こんなコードがrubyにはあるわけですが、 perlと同じく変数は宣言しなくていいんですか? 最近のperlはmyをつけて、変数を宣言するのが一般的になってきていると思うのですが
- 275 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:51:18 ]
- >>260
> そのTCLはActiveScriptRubyに入っているTCLですか? というか ActiveScriptRuby には Ruby と Tcl をつなぐものしか入ってなくて Tcl は ActiveState のサイトから持ってきた ActiveTcl に入ってる ActiveTcl をインストール済みなら環境変数 PATH を使って Ruby/Tk が勝手に Tcl を見つけてくれるはずだよ でもって > もしやと思って、test.rbをdblclickしたら普通に起動しました > ruby consoleで > >test.rbとやってもフォームが表示されました RDEの設定に問題があるんだろうから RDE から ENV['PATH'] して Tcl\bin が含まれているかチェック もし含まれていなければ環境変数 PATH か RUBY_TCL_DLL に Tcl\bin でも設定して試してみて
- 276 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 21:55:04 ]
- >>274
Rubyの変数はハコではない Rubyのデータは全てオブジェクトでどこか「オブジェクト置き場」に厳然と存在してて、 「変数代入」はその置き場に転がってるオブジェクトにその名前のラベルを貼る行為に同じ ただのラベルだから宣言はいらない オブジェクトはすでに存在してるわけだし @var = hoge は hoge の指す(というか hoge の返す)オブジェクトに 「@var」という4文字のラベルをつける行為 …実際は宣言してるはずなんだが、完全に隠蔽されててRubyスクリプトからは見えないし触れないし関われない
- 277 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:02:08 ]
- プログラミングがしてみたい、というだけなら
今はMSのSmall Basicがいいんじゃなかろうか。
- 278 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:07:28 ]
- >>277
うん、マニュアルだけ見れば十分な既言語取得済該当言語初心者はいつもそう言う プログラミング初心者に本当に必要なのは十万の解説と百万のサンプル
- 279 名前:274 mailto:sage [2010/03/11(木) 22:19:12 ]
- >>276
オブジェクトは既に存在していて、オブジェクトに対して名前をつけているってことか? @var = hogeはjavaでいうと class Hoge { Test test; void setTest(Test t) { this.test = t; }} と同じになるの?
- 280 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:24:11 ]
- >>275
ごめん、もうアンインストールした この2日間、時間の無駄使いしただけだった
- 281 名前:220 mailto:sage [2010/03/11(木) 22:31:58 ]
- 環境変数という言葉すら初耳の状態からスタートしたおれにとって
まさに>>278の言う通り 教えてくれても、専門用語だらけでわからない それでも単語ひとつひとつぐぐりながらこの2日間がんばったが コード一つ書かないまま、いや、2行だけは書いたが 終わってしまうとはまさに予想外 俺の考えている初心者とプログラマーの初心者の立ち位置が違いすぎた あなた達とはもう2度と出会うことはないでしょう さようなら
- 282 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:36:06 ]
- >>278
その見地ならJavaが最適ってことで。 でもなぜかJavaを勧める人はあんまりいない、気がする。
- 283 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:42:04 ]
- >>281
本当にもう見ていないことを期待して書くが、たとえば キーボードやマウスの使い方、エクスプローラの使い方なんかは言語の範疇外だ それと同様、コマンドプロンプトやOSの環境変数、標準のインストーラ動作なんかは言語解説の範疇外 コマンドプロンプトに日本語を表示したら化けたとかそういうのも本来無関係 文字コードって何ですかとかシフトジス?ってなんですかとかそういうの知らないのも問題外 HTTPとURI関連のライブラリ使うならRFC準拠の基礎知識くらいは持ってから来いやポートの説明からか泣くぞオラ とまあ、どこまで巻き戻ることを想定するかは残念ながらこちらで決めさせてもらわざるを得ないのだ Rubyさんは貧乏でリソースは有限であるがゆえ もし他の(お金持ちでそれゆえ親切な)言語でプログラミングの楽しさを身に付けたなら、 そのときは気が向いたときにでも振り返ってRubyを検討してみてくれると嬉しい
- 284 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:46:46 ]
- すこぶるRDEは嫌われてるみたいですが、
ここに居る人はどんな環境使ってるんですかね? 自分は会社だとEmacs。家だとEclisp WindowsだとEmacs使う気が失せるんですよ・・・・。 ちなみに仕事はソフトウェア関連ではなく超初心者です。
- 285 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:47:03 ]
- 最近はさすがに減ったが、「プログラミングの全くの初心者にもRubyは簡単」という喧伝が多すぎたな
プログラミングの経験がなくても結構使うまでいける言語である保証は頑張ってしたいところだが、 そこまでの道のりがどなたにも簡単かと言われるとかなり大きな疑問符
- 286 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:49:52 ]
- >>284
えまくすくりーんぷてぃー 何らかの手段でLinuxを起動して接続してその上でRuby使うのがたぶん一番妥当 Windows上でRuby使うとかなんかボリショイサーカス見てる気分になる
- 287 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:50:44 ]
- やろうとしたことが GUI でしかも IDE 使用という
二重のトラップにかかったのが不幸だったといわざるを得ない 『たのしい Ruby 』とか適当な初心者本買って コマンドプロンプト+テキストエディタでリベンジしてほしいな 地味だけど
- 288 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 22:54:57 ]
- >>287
コマンドプロンプトではエラーなく動作してる時点で 「あっじゃあこっちでやりますRDEはステで」 という判断にならなかったのがなんかもう供養塔立てて忘れないよう祀るレベル 今度から「RubyではGUIできません」と答えることにしようと思う
- 289 名前:デフォルトの名無しさん [2010/03/11(木) 23:10:44 ]
- >>281
プログラミング初心者ならそれこそ1日や2日でマスターできるもんじゃないんだから、 根気よくやらないといかんよ・・・ 毎日プログラミングし続けて3年くらい使い続ければそこそこプログラミングできるようになる。 頑張れ
- 290 名前:デフォルトの名無しさん [2010/03/11(木) 23:13:57 ]
- >>281
誰にGUIをRubyなら簡単にできると教えてもらったのか知らんが、そいつを殴ってもいいぞ 俺ならC#を押すよ。初心者でもポトペタでいきなりGUIが作れる。 サンプルコードもネットにたくさん。フリーのコンポーネントも一杯ある。 Delphiでゲーム作ってプログラミング覚えた俺だけど、いきなりRubyやってたら多分挫折してる
- 291 名前:デフォルトの名無しさん [2010/03/11(木) 23:23:23 ]
- 最近で見たRuby初心者でいえば、チンパン団のロプロスはすごかったな。
ニートから1年くらいでphp→Rubyと来てtwitter関連のwebサービス立ち上げて、アフィリエイトで飯食ってる。 でもロプロスはRDE使ってるんだよな。 twitter関連のwebサービスのtwilogはユーザー数数万人だが、Railsすら使ってない。 index.cgiだったぞw 何がいいたいかって、GUIじゃなくてwebに興味持てばまだよかったと思う
- 292 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 23:25:56 ]
- アフィリエイトって w
- 293 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 23:33:24 ]
- しょうもないこと言うやつばっかりになったな
- 294 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 23:37:41 ]
- moduleってC++のnamespaceやjavaのpackageと同じ?
- 295 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 23:39:29 ]
- クラウドだのシンクライアントだのって数年前のサーバサイドに先祖返りしてるけど
Railsは本命にはならんだろうな なんだかんだ言ってcgi+javascriptがこの先も主力だろう
- 296 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 23:55:12 ]
- > なんだかんだ言ってcgi+javascriptがこの先も主力だろう
> なんだかんだ言ってcgi+javascriptがこの先も主力だろう > なんだかんだ言ってcgi+javascriptがこの先も主力だろう > なんだかんだ言ってcgi+javascriptがこの先も主力だろう > なんだかんだ言ってcgi+javascriptがこの先も主力だろう
- 297 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 00:00:44 ]
- 気持ちはわかるが5行はやりすぎだ落ち着け
- 298 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 00:04:14 ]
- RoR と cgi+javascript じゃ目指してるものが違うから住み分けるんじゃないの?
サイトの数としては後者の方が多くなるだろうけど
- 299 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 00:10:38 ]
- >>294
C++のnamespaceとJavaのpackageが同じに見えるのなら、 moduleも同じだということにしてもいい。 あ、classも同じでいいよ。
- 300 名前:294 mailto:sage [2010/03/12(金) 00:14:15 ]
- >>299
そんじゃ、moduleもpackageみたいに使います あえて言うなら、何か違いありますか? 今のところ趣味でプログラミングしているんで、namespaceを使うことが無いんだよね〜 だから、namespaceとpackageの細かな違いがわかんない
- 301 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 00:15:24 ]
- このスレっていつもこんな感じなのか?
プログラムというよりは「自宅サーバ板」のおまけスレみたいだな
- 302 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 01:15:58 ]
- 3月は春休み
- 303 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 01:41:29 ]
- >>301
あなたがここに来たのと同じような理由の人がいます
- 304 名前:デフォルトの名無しさん [2010/03/12(金) 04:47:02 ]
- CentOS5のrubyが、rubygemsを入れるには古いので、
RPMとソースインストールを共存させようと思いました。 RPMは/usr/bin、ソースインストールは/usr/local/binに入るので、 位置的には問題なく入ったのですが、 このままだとRPMのrubyが優先的に使われます。 ソースインストールのrubyが優先的に使われるようにするにはどうすればいいですか?
- 305 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 05:11:32 ]
- >>281
Cygwin の Ruby なら簡……と言いかけたがダメだなこりゃw
- 306 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 08:24:01 ]
- >>304
PATH
- 307 名前:304 mailto:sage [2010/03/12(金) 08:45:44 ]
- ありがとうございます。
よく見たら/usr/local/binが先に書いてあるので このままでもソースインストールのrubyが優先されました
- 308 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 08:59:02 ]
- 共存か…CentOSにalternative的なものって無かったっけ
- 309 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 10:19:39 ]
- >>308
man 8 alternatives chkconfigパッケージに入ってる。
- 310 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 11:04:29 ]
- >>304
うん、Linuxのパスについての勉強しれ rubyインタプリタは自分の場所を考慮して起動用設定ファイルを読むから、 /usr/local/bin/ruby と /usr/bin/ruby と /home/ore/usr/local/bin/ruby くらい違えば小細工ゼロで共存するはず
- 311 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 12:47:40 ]
- updating newgem でメモリ使い切って10分くらいガリガリ言ってる…
- 312 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 13:14:55 ]
- 最近のrubygem updateはプア環境ではまた辛くなってる
1.2くらいの頃が一番よかった
- 313 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 13:35:05 ]
- スワップに突入するくらいメモリがない場合は
一旦アンインストールしてから再インストールしたほうが所要時間的には早いよね アップデート対象のgem一覧を返して終了する、みたいなオプションがないのが辛い
- 314 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 14:00:19 ]
- >>263
7-zipインストールを前提にした上で、それをコマンドラインから叩くのが楽かな。
- 315 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 14:15:22 ]
- >>314
win32のゲームの配布でRubyスクリプト使ってアーカイブ作ってたときは、俺も7zip使ってたな。 外部コマンドあるならそっちも手っ取り早い
- 316 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 14:34:25 ]
- ちょっと質問ですが、ふつーはRubyGemsで入れたライブラリなどのリファレンスくるのって何が手っ取り早いんでしょうか?
今までRailsやってて、るりまのchmと ↓で配布されてたchmと(更新停止中)、 d.hatena.ne.jp/kabus/20081202 あとは最新のは railsapi.com/doc/rails-v2.3.5_ruby-v1.8/ とか見てたんですが、 るりまはともかく、railsのchm配布サイトが更新されてなかったり、 最後のサイトはprivateメソッドやnodocのものが乗ってなかったり、不便に感じてます・・・。 こういう不便さを解消できるものでしょうか? また、ri入れるとRubyGemsのインスコが激遅になるんで使ってないんですが (.gemrcに gem: --no-ri --no-rdoc とか書いてます)、 普通はri使うもんなんでしょうか?
- 317 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 14:45:15 ]
- >>316
基本的にはソース読む 公開されてる部分のドキュメントが内容を正しく反映しているとは限らないし、 端折られてる部分の重要性のほうが高いことがほとんどだから というかほとんどの場合:nodoc:の使い方が不正 nodocにするべきではないものまでガンガンnodocにしてある privateメソッドを内部で呼んでいるならその動作もpublicメソッドのドキュメントに反映すべきだし privateメソッドだからといって説明をしなくてもいいということには絶対にならない ちなみに「Rubyにはprivateやprotectedは不要」派でございます
- 318 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 15:34:10 ]
- >>316
自分が参考にする大まかな順番 1.ri(マクロでエディタから呼び出せると便利) 2.自動生成したUMLクラス図 3.ヘルプファイルや書籍(親切・有名なプロジェクトなら) 4.Google先生 5.ソースコード・テストファイル・スペックファイル 6.自動生成したコード片のコールグラフ(ソースに黒魔術満載の場合) 7.職場のネ申 8.2chで祈りを捧げる(時間をつぶすともいう) 9.諦める riとrdocは中身は同じだからrdocでもいいと思う。好みで。
- 319 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 16:26:18 ]
- 超初心者向けの言語でない事は確実だな。
教祖が使ってるデビアンから入る必要が有るし。特に広く一般に普及してるウィンドウズからは敷居が高い。
- 320 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 16:31:50 ]
- >privateメソッドだからといって説明をしなくてもいいということには絶対にならない
>ちなみに「Rubyにはprivateやprotectedは不要」派でございます リファクタリングのコストが高くなりすぎないか?
- 321 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 16:33:37 ]
- >>319
お前Ruby以外使ったことないだろ
- 322 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 18:44:12 ]
- 拡張子の変更がうまくいきません
foo = "foo.c" File.extname(foo) = ".o" とするとエラーが出ます
- 323 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 18:51:52 ]
- extnameが返すのは左辺値じゃない。
1.9 なら Pathname('foo.c').sub_ext('.o').to_s で。 1.8 なら素直に文字列置換。
- 324 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 18:57:48 ]
- >>322
# File.extnameメソッドは最後のドット以降の文字列(いわゆる拡張子) # を返すだけ。設定はできない。 foo = "foo.c" p File.extname(foo) #=> ".c" # File.basenameメソッドは第2引数に文字列を与えるとファイル名の末尾から # その文字列を取り除く。 p File.basename(foo, File.extname(foo)) #=> "foo" # おそらくあなたがしたい事はこれ p File.basename(foo, File.extname(foo)) + ".o" #=> "foo.o"
- 325 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:23:30 ]
- rubyの処理系(windows)の違いを教えてください
ActiveScriptRubyと公式な実装(ビルドが沢山ある?)があるみたいですが
- 326 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:25:51 ]
- >>325
C#なら何も悩むことはないよ
- 327 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:27:05 ]
- >>322
C#ならファイル名変更なんて簡単に一行でできるのに かわいそw
- 328 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:30:20 ]
- >> 323
sub_extなんてものがあったのですね。 ありがとうございます。勉強になりました。 以前リファレンスを探したときは見つけられませんでしたので見直しましたが やはり1.9のリファレンスにsub_extがありません。 >>324 違います
- 329 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:31:04 ]
- 公式なWindowsバイナリは存在しない
(Windowsで動作するようなソースは取り込まれているが、コンパイルしたものそのものは配布していない) バイナリはすべて有志の個人またはネット上の第三者プロジェクトの提供による あとは>>6 これでは端折ったが要はActiveScriptRubyがMSWin32でRubyInstallerがMinGW32 この言葉が理解できないならこれ以上の情報は不要なので素直にActiveScriptRuby使え これはほぼ全てのスクリプトでWindows環境だと思ってもらえる 通常の利用上の問題はないから
- 330 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:36:13 ]
- >>329
windowsで公式な実相が無いなら、適当に選ぶことにしますわ thx
- 331 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:38:10 ]
- >>328
riには普通にあったよ るりまにはないようだ
|

|