Rubyについて Part 8
■ このスレッドは過去ログ倉庫に格納されています
0001親父!俺もやっとスレ立てたよ!
NGNGRuby Home Page
http://www.ruby-lang.org/ja/
= 前スレ
: Rubyについて Part 7
http://pc2.2ch.net/test/read.cgi/tech/1074235226/
= 過去スレ
: Rubyについて Part 6
http://pc2.2ch.net/test/read.cgi/tech/1067623825/
: Rubyについて Part 5
http://pc2.2ch.net/tech/kako/1063/10630/1063028224.html
: Ruby について Part 4
http://pc2.2ch.net/tech/kako/1056/10569/1056944114.html
: Ruby について Part 3
http://pc2.2ch.net/tech/kako/1042/10420/1042004759.html
: Rubyについて Part 2
http://pc3.2ch.net/tech/kako/1028/10289/1028906179.html
: Rubyについて
http://pc3.2ch.net/tech/kako/1012/10120/1012096319.html
0153デフォルトの名無しさん
NGNG本人の表記に従うなら"musha"のはず。
0154デフォルトの名無しさん
NGNGスレ立つたびに宣伝レスするのやめれ。
0155デフォルトの名無しさん
NGNGhttp://www.musha.org/~akinori/diary/
0156デフォルトの名無しさん
NGNGだから、そのアドレスは 301 (Moved Permanently) だって。
正しくはこっち
http://d.akinori.org/
0157デフォルトの名無しさん
NGNG前スレにあったの?
スマソ
01589
NGNGruby が固まると書きましたが、同じようなコードをperlで書いても固まったので、
ruby ではなくapacheとか環境が問題っぽいことがわかりました。
お騒がせしました。
0159デフォルトの名無しさん
NGNG┌-┴-┐ l l
├──┤ | _ l -┼─
├──┘  ̄| ̄ ヽ | _ | ─-
| l / | │  ̄ ヽ |
⊥-ーヽ、_ | ヽl _ノ | ヽ__ o
0160デフォルトの名無しさん
NGNGWindows:
File.basename('d:\kirai\demo\suki') #=>sukiが得られる
Linux:
File.basename('d:\kirai\demo\suki') #=> d:\kirai\demo\sukiが得られる
できれば動作を一緒にしてもらいたかった…。
0161デフォルトの名無しさん
NGNG0162デフォルトの名無しさん
NGNGOS によって同じ動作にしたければ、普通はこうすると思うけど。
File::basename('d:/kirai/demo/suki')
0163デフォルトの名無しさん
NGNGls d:\kirai\demo\suki で引っかかるし
0164デフォルトの名無しさん
NGNGどっちかというとこっち。
File.basename('d:\kirai\demo\suki') #=>sukiが得られる
>>162
ありがとうございます。やっぱりその方法ですか。trでもしときます。
>>163
それはいいんですが、File.basenameではベース名が取得できてほしいんです。
今作ってるものはCGIなんですが、その中で \ 区切りパス文字列をブラウザが送ってくるもので…。
いちいちtrするのも・・・。
0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNG> その中で \ 区切りパス文字列をブラウザが送ってくるもので…。
そのへん詳しく教えれ。
0167デフォルトの名無しさん
NGNGhttp://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=DOSISH+%C2%D0%B1%FE
0168デフォルトの名無しさん
NGNG0169デフォルトの名無しさん
NGNG自分がいなくてもスレは回る、地球は回る…('・ω・`)ショボーン
0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNG>>166
CGIなんで微妙にスレ違いですが、multipart/form-data のfilenameの部分です。
↓の filename="D:\data\ruby\a.rb" の部分です。
-----------------------------7d45c21102aa
Content-Disposition: form-data; name="uploadfile1"; filename="D:\data\ruby\a.rb"
Content-Type: application/octet-stream
print File.basename("http://www.2ch.net/2ch.htm"), "\n"
print File.dirname("http://www.2ch.net/2ch.htm"), "\n"
-----------------------------7d45c21102aa--
>>167 うーん、unix系でも同じような動きがいいんだが。正直スマンカッタ
>>170 正直スマンカッタ
0172デフォルトの名無しさん
NGNGFile.basename とは別に CGI::XXX.basename みたいなのを作って、
そっちはプラットフォームにかかわらず DOSISH 対応、ってのがいいやり方なのかなあ。
うpろだ作るなら避けて通れない問題っぽいけど、普通はどうしてるんだろうか。
ちらっと調べたら、
File.basename(params['foo'][0].original_filename.gsub(/\\/, '/'))
みたいなことしてるのを発見したけど。
0173デフォルトの名無しさん
NGNGperl の -T -B みたいな機能。
0174デフォルトの名無しさん
NGNGないと思う。
……っていうか、perl にはそんな演算子があることを始めて知った。
「テキストファイル」と「バイナリファイル」の定義を知りたいものだ。
0175デフォルトの名無しさん
NGNGhttp://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=NKF
0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNGファイルの先頭の数百バイトを見て判断してるらしい。
ちなみに日本語入りファイルはバイナリファイル。
0178デフォルトの名無しさん
NGNGオフィシャルのサンプル使ってもmd5、md5sumとかで生成した値と一致しないんだけど?
0179デフォルトの名無しさん
NGNG0180デフォルトの名無しさん
NGNG> うーん、unix系でも同じような動きがいいんだが。
UNIX だと '\' もファイル名に使えるからあまりよろしくないんじゃないかと。
'/' なら UNIX でも DOSISH でもファイル名に使えないので、
'/' に path 区切りを揃えてから File::basename に食わせるという方が良いと思う。
0181デフォルトの名無しさん
NGNGD:\WINNT\system32>ruby -rmd5 -e "p Digest::MD5.hexdigest( ARGF.read() ) " NTOSKRNL.EXE
"ab349b95d62bf9770a17959c00a8b022"
D:\WINNT\system32>ruby -rmd5 -e "ARGF.binmode;p Digest::MD5.hexdigest( ARGF.read() ) " NTOSKRNL.EXE
"dccb693e32ca945462bf4f12185a1e82"
D:\WINNT\system32>\\tpi\d$\cygnus\bin\md5sum.exe NTOSKRNL.EXE
dccb693e32ca945462bf4f12185a1e82 *NTOSKRNL.EXE
というオチ?
0182178
NGNGの
> require 'digest/md5'
> p Digest::MD5.hexdigest(File.read("ruby-1.8.0.tar.gz"))
です。
同じファイルをこのスクリプト(ファイル名の部分だけ変更)とmd5とかmd5sumでmd5値を作ると合致しないんです
0184171
NGNGおお。納得。そういえば \ ってつかえますもんね。
path 区切り揃える方向でつくります。
そう考えると確かに >>172 のようなものを用意して、
それを使うようにする方がいいですね。
0186デフォルトの名無しさん
NGNG0187デフォルトの名無しさん
NGNGMutex風のクラスはありませんか?
0188デフォルトの名無しさん
NGNGrequire 'sync'
0190デフォルトの名無しさん
NGNG印字できないバイトが入ってたらバイナリファイル、ってくらいでいいなら自分で作れるだろ。
0191デフォルトの名無しさん
NGNG0192デフォルトの名無しさん
NGNGhttp://raa.ruby-lang.org/list.rhtml?name=filemagic
0193デフォルトの名無しさん
NGNG全部CR+LFにそろえることはできますか?
$KCODE="s"としておくと全部表示がShift_JISになるような。
Rubyスクリプトと生成データをLinuxとWindowsで使いまわすもので…
0194デフォルトの名無しさん
NGNG回答になってないけど、ふつー print "hoge\n" でなくて puts "hoge" 。
0195デフォルトの名無しさん
NGNGWindowsでputsするとCR+LFになるの?
0196デフォルトの名無しさん
NGNGやってみほ。Windowsが周りに無いの?
0197デフォルトの名無しさん
NGNG0198デフォルトの名無しさん
NGNGprecision do
《Rationalになる演算》
end
みたいな。面倒か。
0199デフォルトの名無しさん
NGNG漏れもそんな感じが良いと思ってた。
0200デフォルトの名無しさん
NGNGWindwos版Ruby(mingw32、mswin32、bccwin32、djgpp)では出力される改行は全てCR+LF。
UNIXのようなもの版Rubyでは出力される改行は全てLF。
Cygwin版Rubyでは出力される改行は全てLF。
Rubyに限らず3番目でハマる人が時々います。
cygwin向けにコンパイルされたプログラムをcygwin外でも使おうとする人ね。
>>193
つーことで多分できません。生成されたデータファイルの改行を適宜再加工してください。
0201デフォルトの名無しさん
NGNG0202デフォルトの名無しさん
NGNGCygwin って、text mode で mount してる時も LF になるんだっけ?
0203デフォルトの名無しさん
NGNGうーん、mount -tで明示的にマウントされた場合は
改行がファイルに書き込まれた時にCR+LFに変換されるっぽい。
マウントポイントごとに設定しわけることはできるけど…めんどいね。
Cygwin環境用にコンパイルされたプログラムをCygwinシステム外の
普通のWindowsプログラムとしてこっそり使うときはどういう処理になるんだろう。
よくわかめ。
0204デフォルトの名無しさん
NGNGリソースの分散はあまりにももったいない。
Pythonに対する明確なアドバンテージを示せないなら今すぐ開発をやめるべきだと思うがいかがかな?
0205デフォルトの名無しさん
NGNG0206デフォルトの名無しさん
NGNGPythonに対する明確なアドバンテ−ジは、わしが使ってること。
0207デフォルトの名無しさん
NGNG統一厨が宗教戦争を仕掛けるスレはここでつか?
0208デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNG\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ こんな餌で俺がクマーーーーー!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;;
(´⌒; (´⌒;;
0210デフォルトの名無しさん
NGNG今更別の言語に移る価値はないだろ。
0211デフォルトの名無しさん
NGNG0212デフォルトの名無しさん
NGNGRubyはいらないんだけどな。
0213デフォルトの名無しさん
NGNGRiteよりは(ry
0214デフォルトの名無しさん
NGNGうちの会社は UNIX 上のサーバサイドアプリしか作らないので
.NET に縁がありません。
0215デフォルトの名無しさん
NGNGでなきゃIntercalなんて生まれてない。
0216デフォルトの名無しさん
NGNG$/ を使うのはどうですか。
0217デフォルトの名無しさん
NGNG自分は147ではないけれど、
リンク先を読んでも、言わんとするところがよく分からなかったっす。
よかったらもうちょい解説お願いします。
# 「もしそれがアヒルのように歩き、アヒルのように鳴くなら、それはアヒルに違いない。」??
0218デフォルトの名無しさん
NGNG0219デフォルトの名無しさん
NGNG自分は >>147 ですけれど、
「もしそれが String と同じメソッドを持ち、String のようにふるまうなら、
それは String の duck type に違いない」
と読みました。
0220デフォルトの名無しさん
NGNGテストを書かずにリファクタリングってどうやってるんだろうか?
0221デフォルトの名無しさん
NGNG彼って、matz? テスト書いてるよ。
http://www.rubyist.net/~matz/20040309.html#p01
0222デフォルトの名無しさん
NGNG0223デフォルトの名無しさん
NGNGああ、そっちの人か。
誰か勝手に CVS にテストを突っ込んどいたら。
0224RPI ◆3x0ES2jpL2
NGNGRuby Professional Institute は、Ruby の専門家それぞれのレベルを測るために、
各国共通の基準となる認定制度 RPIC を創設しました。
# RPIC は「アルピック」と発音します。
Ruby の専門家の雇用主や契約先といった団体組織や専門家自身のニーズを満たす
技術者資格を目指しています。
資格は、Level 1 (初級)、Level 2 (中級)、Level 3 (上級) の3つに
分かれています。
Level 1
101 試験 Ruby 基本文法
102 試験 標準ライブラリ
Level 2
201 試験 オブジェクト設計
202 試験 ライブラリ
Level 3
作成中。
試験は、ピアソンVUE、アール・プロメトリックで受けられます。
0225デフォルトの名無しさん
NGNGもう2週間も前の話だろ。遅すぎ。
0226デフォルトの名無しさん
NGNG学生の漏れには、15000 円は高すぎる。
学割とかないのか?
0227デフォルトの名無しさん
NGNG学割あるよ。
Level 1 取った。
認定カードがピンクだぞ。
なんでピンクなんだ?
0228デフォルトの名無しさん
NGNGLevel 2 橙色
Level 3 赤
0229デフォルトの名無しさん
NGNG引っ掛け問題多すぎ。
15000円がパー。
RPIC 対策本は、翔泳社の赤本しかないのでつか?
0230デフォルトの名無しさん
NGNG1. 組み込み型
2. 式
3. メソッド
4. 正規表現
5. クラス、モジュール
6. 基本入出力
7. 例外
8. スレッド、プロセス
9. デバッガ
0231デフォルトの名無しさん
NGNGまだ学生なんで、就職時使おうと思っています。
0232デフォルトの名無しさん
NGNGマジでか?
101 は Ruby を普通に使っていたら絶対受かるぞ。
0233デフォルトの名無しさん
NGNGもうだめぽ。
0234デフォルトの名無しさん
NGNGアホか。
国家資格にしろ。
学生なら情報処理技術者試験の方を受けた方がはるかに良い。
プログラミング言語の試験だったら
Sun Certified Programmer for the JAVA
にしておけ。
Ruby に将来なんてない。
0235デフォルトの名無しさん
NGNG0236デフォルトの名無しさん
NGNG貯金が数万しかありません。どうしたらいいんでしょうか。
0237デフォルトの名無しさん
NGNG確か1円でも起業できるんじゃなかったっけ?
0238デフォルトの名無しさん
NGNGうちの会社では、Ruby でプロトタイプを作る。
最後に Java で作る。
移植しやすいように Ruby で Java スタイル。
attr_reader/writer ではなく、セッターゲッターを使う。
ヘビ式でなく、ラクダ式の命名規則に従う。
0239デフォルトの名無しさん
NGNG蛇式って?
0240デフォルトの名無しさん
NGNG_ で繋げる命名法じゃない?
bar_obj.foo_method() みたいな。
0241デフォルトの名無しさん
NGNG101 は 620 点、102 は 640 点でした。
普通に Ruby を使っていて、翔泳社の対策本をやれば受かります。
102 の Complex クラスとか、普段使わないので
対策本は必要です。
0242デフォルトの名無しさん
NGNG0243デフォルトの名無しさん
NGNGマチクタヒ゛レタ〜
☆ チン 〃 ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・) < レベル2合格記まだ?
\_/⊂ ⊂_) \________
/ ̄ ̄ ̄ ̄ ̄ ̄/|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
| 三ヶ日みかん |/
0244デフォルトの名無しさん
NGNGでも面白い。
めげずに、もっとふざけてみ。
0245デフォルトの名無しさん
NGNG0246デフォルトの名無しさん
NGNG尋常でないずれ方だろ。
0247デフォルトの名無しさん
NGNGうん、おれもそこが面白いと思った。
0248デフォルトの名無しさん
NGNGいかにも2ちゃん初心者が宣伝しにきたって感じがします。
まぁどうでもいいけど。
0249デフォルトの名無しさん
NGNGそれとも無難にPerlにしておく方がいいですか?
0250デフォルトの名無しさん
NGNG(利点)
・あなたのプログラム感が広がる
・あなたのプログラミング技術が広がる
・あなたの選択肢がひとつ増える(このときにはRubyを使おう)
・あなたの宣伝文句がひとつ増える(Rubyも使えます)
・Perlに比べるとライブラリが少ないので、自作する機会が増える
・rubyを使える人とのコミュニケーションの機会が増える
(欠点)
・新しい言語を覚えるための時間的、経済的コスト
・Perlに比べるとライブラリが少ないので、自作する機会が増える
・「まだPerlを使ってるの?」と言ってもらえる機会が減る
・Perlで悪戦苦闘する機会が減る
くらいかな。
0251249
NGNG分かり易い回答ありがとうございます。
時間があればやってみてもいいって感じで受け止めました。
0252デフォルトの名無しさん
NGNGわざとずらしているように見える。
■ このスレッドは過去ログ倉庫に格納されています