[過去ログ] Ruby 初心者スレッド Part 65 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
803: 800 (ワッチョイ ca2c-0B+f) 2019/11/04(月)19:37 ID:Zu03xGz40(2/2) AAS
Dir.glob( "パス", :directory )
みたいに、ブロックじゃなくて、
オプション・シンボルなどで、簡単に指定できれば
804: (アウアウカー Sacb-ENpr) 2019/11/04(月)20:32 ID:15pQYryDa(1) AAS
>>800
むしろPowerShellが凄い
805: (ワッチョイ 8a01-ODnH) 2019/11/04(月)22:33 ID:KBcuTkU10(2/2) AAS
Dir.glob('*/')
806(2): (アウアウウー Sa2f-x9nz) 2019/11/05(火)21:08 ID:z9XdE4jra(1) AAS
rubyを使い出して2週間なのですが困っています。
今は汎用機のログの一括処理に使っているのですが、
半角カナや漢字が文字化けして読み込まれます。
ログファイルはwindowsにsjisで保存されていて、
これをsjis指定で読み込んでも\x33等と化けます。
どうすれば半角カナが化けないように読めるのでしょうか。
807: (ワッチョイ c68c-fAkU) 2019/11/05(火)22:01 ID:+vsp0I/Q0(1) AAS
sjis指定で読み込んでると思い込んでるだけで実際はutf-8になってるんじゃないかな
あるいはログがsjisと思い込んでるだけという線もありうる
もしくは書き出しがsjisになってないとか
可能性を挙げたらきりがない
コードをさらすのが解決への近道
808: (アウアウウー Sa2f-xbEI) 2019/11/05(火)22:19 ID:HJJtuDtXa(1) AAS
汎用機のデータをRubyで処理とか懐かしいな
俺もやってたわ
結局転職するのが唯一にして最良のソリューションだから、あまり変なことに拘って時間を無駄にするよりAWSの勉強でもしたほうがいいよ
809(1): (ワッチョイ 8a01-ODnH) 2019/11/05(火)23:08 ID:rzC/SdAh0(1) AAS
>>806
どういう環境を使って
どういう方法でエンコーディング指定をしていて
どうやって読み込んで、どこに出力して、出力結果をどうやって確認してるのか?
そういう情報が必要
Ruby関係なくエンコーディングに対する理解を深めたほうが良さげ
基本的には外部エンコーディングと内部エンコーディングを指定すれば問題なし
外部リンク[html]:docs.ruby-lang.org
>File.read('sjis.log', mode: "rt:sjis:utf-8")
810(1): (アウアウウー Sa2f-x9nz) 2019/11/06(水)00:03 ID:lUVlDRaka(1/2) AAS
>806です
解決しました。
エンコードにsjisではなくwindows-31Jを
指定すると半角カナを文字化けせずに読めました。
ファイルの文字コードは確実にsjisなのに、
なんでsjis指定で読み込んだら化けるのか分かりませんが、
ひとまず解決です。
811: (アウアウウー Sa2f-x9nz) 2019/11/06(水)00:05 ID:lUVlDRaka(2/2) AAS
>>809
文字コードの指定は、
fileopen時にwindows-31Jを指定してうまくいきました。
812(1): (ワッチョイ 7a33-DbiX) 2019/11/06(水)02:48 ID:normnvJW0(1) AAS
>>810
一般に、Shift_JIS(標準規格)とcp932(Windowsカスタム)は別物。
Rubyでもそうらしい。
外部リンク[html]:docs.ruby-lang.org
813(1): (アウウィフ FF2f-DOEl) 2019/11/06(水)11:43 ID:o3tEvZiYF(1/3) AAS
半角カタカナ ← 混ぜるな危険
30年くらい前の話
814: (アウアウウー Sa2f-x9nz) 2019/11/06(水)11:50 ID:SpldiVNta(1/2) AAS
>>812
これを見てやっとわかりました。
rubyは真面目に解釈してこうなったんでしょうけど、
sjisファイルの読み込みでsjis指定では駄目となると
初心者泣かせですね。
815: (アウアウウー Sa2f-x9nz) 2019/11/06(水)11:52 ID:SpldiVNta(2/2) AAS
>>813
漢字も駄目なのでやや難易度高しです。
816: (アウウィフ FF2f-DOEl) 2019/11/06(水)12:34 ID:o3tEvZiYF(2/3) AAS
いいがかりは止せ
SJISファイルじゃないんだから当然だろ
817: (ワッチョイ ca2c-0B+f) 2019/11/06(水)13:41 ID:ZR40S1lI0(1) AAS
Windows では一般用語として、sjis と書くけど、
厳密には、sjisを拡張した、CP932 の事です。
だから、MS が独自に拡張した部分は、sjisではない!
漏れは、Windows で、PowerShell を使って、クリップボード処理を書いているけど、
Windows(CP932) ←→ Ruby(utf8) と、外部環境とruby内で、文字コードを変換している
クリップボード内の複数行文字列の、各行の先頭・末尾から、
連続する空白類を除去して、クリップボードに入れる
str = `powershell Get-Clipboard`
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換
ary = str.each_line.map( &:strip ) # 連続する空白類を除去する
省3
818(1): (ワッチョイ de14-EL77) 2019/11/06(水)15:16 ID:Z1mcKm+J0(1) AAS
別にMSがSJISを拡張したんじゃないけどな。
そもそもSJIS本家を作ったのがMS(+他)なわけで。
じゃあ拡張したのは誰かというとIBMとかNECだよ
まあそもそも拡張可能にしていんだけどな
MSなどがSJISを作った。IBMやNECが拡張した。
それらを取り込んでWindowssのCP932とした。というのが正しい流れ
ちなみにAppleもSJISを拡張してる。それはMacJapaneseと呼ばれる。
拡張部分がIBMやNECが拡張した部分とかぶってるので互換性がないんだけどな
819(1): (ワッチョイ 8a01-ODnH) 2019/11/06(水)15:39 ID:Fx0hE3mY0(1/2) AAS
>Encoding.aliases.select {|_,v| v == "Windows-31J"}
{"CP932"=>"Windows-31J",
"csWindows31J"=>"Windows-31J",
"SJIS"=>"Windows-31J",
"PCK"=>"Windows-31J"}
Rubyでは"SJIS"も"CP932"もWindows-31Jのエイリアスなんだけど
SJISの指定をWindows-31Jに変更して解決する事があるんですねー(棒)
820: (ワッチョイ c68c-fAkU) 2019/11/06(水)18:22 ID:8bqr3nzy0(1) AAS
半角カナや大半の漢字はsjis範囲内だからきちんとsjisで読めばほぼ文字化けはないはず
つまりsjisで読めていなかったということ
821(1): (ワッチョイ 0314-EL77) 2019/11/06(水)19:09 ID:wTTuQQRz0(1/2) AAS
>>819
エンコーディングは同じで文字集合が違うだけだからね
822: (ワッチョイ 077d-qsv/) 2019/11/06(水)19:26 ID:GIJSYcug0(1) AAS
リファレンスマニュアルの aliases -> Hash の例
"SJIS"=>"Shift_JIS" は間違いですね
Encoding::SJIS == Encoding::CP932 #=> true
Encoding::SJIS == Encoding::Windows_31J #=> true
Encoding::SJIS == Encoding::Shift_JIS #=> false
823: (アウウィフ FF2f-DOEl) 2019/11/06(水)19:55 ID:o3tEvZiYF(3/3) AAS
HTML (HTTP) で Encoding Shift_JIS って書くと怒られた思い出
824: (ワッチョイ 8a01-ODnH) 2019/11/06(水)20:51 ID:Fx0hE3mY0(2/2) AAS
>>821
いやいやいや
文字集合と符号化方式を別々に選択できる状況ならともかく
「ファイル読み取り時のエンコーディング指定」とかの文脈で使うエンコーディングって用語は
狭義の符号化方式だけでなく文字集合も含めた上位の概念だから
825: (ワッチョイ 0314-EL77) 2019/11/06(水)21:02 ID:wTTuQQRz0(2/2) AAS
上位って聞くと攘夷を思い出して
動画リンク[YouTube]
これを思い出して困る
826(1): (ワッチョイ df33-rCU0) 2019/11/07(木)00:17 ID:gr4VkOsJ0(1) AAS
>>818
エンコーディングと機種依存文字をごっちゃにしてるやろ。
827: (ワッチョイ 2b14-6wYC) 2019/11/07(木)01:13 ID:sEmiRyTj0(1/4) AAS
>>826
SJISは元から(文字集合を)拡張可能なのだから
同じSJISでも機種依存文字は発生する
エンコーディングはSJISもCP932も同じ
文字集合が違うだけ
理解できる?
828: (ワッチョイ ef8c-z4KY) 2019/11/07(木)02:15 ID:QKW84+pO0(1/2) AAS
ガイジか?
829: (ワッチョイ 2b14-6wYC) 2019/11/07(木)02:20 ID:sEmiRyTj0(2/4) AAS
理解できなくなったら、このようなレスをするんだよなw
830(1): (ワッチョイ 2b14-6wYC) 2019/11/07(木)02:31 ID:sEmiRyTj0(3/4) AAS
例えば、Unicodeは文字集合(キャラクタセット、Coded Character Set)で
UTF-8とかUTF-16というのが符号化方式(エンコード、Character Encoding Scheme)
Unicodeも拡張可能でバージョン番号があって文字集合の内容が変わってる。
Unicode 1.0では文字集合の中の文字数は7,161文字
最新のUnicode 12.1では137,929文字も収録文字数が増えてる。
エンコーディングは変わっていないが文字集合は変わってるので
古いバージョンにしか対応してないコンピュータで、
最新のUnicodeを表示させると一部文字化けする
ただし管理団体の手によって収録文字は決められてるので
ShiftJISの頃のような各社バラバラで互換性がないってことにはならない
省1
831: (ワッチョイ ef8c-z4KY) 2019/11/07(木)03:28 ID:QKW84+pO0(2/2) AAS
外字と引っ掛けた洒落や
気い悪くしたんならすまんかった
832(1): (ワッチョイ 9f01-vL98) 2019/11/07(木)08:58 ID:debRpYWr0(1) AAS
>>830
>エンコーディングは変わっていないが文字集合は変わってるので
>最新のUnicodeを表示させると一部文字化けする
じゃ文字集合だけ更新すれば文字化け解消するのかな?
文脈理解せず無意味なレス繰り返してるとそりゃ外字言われるわ
833: (ワッチョイ 9f2c-E8Ce) 2019/11/07(木)11:38 ID:LDERshfw0(1) AAS
そりゃ、新しい文字集合を使うと、新しい絵文字も正しく表示されるだろ?
834: (ワッチョイ 2b14-6wYC) 2019/11/07(木)12:52 ID:sEmiRyTj0(4/4) AAS
正確に言えば、新しい文字集合に対応したフォントを使うとだね。
>>832の言う「文字集合だけ更新すれば」が意味不明だが
「仕様書を更新すれば、なにも変更はいらない」って意味なら
そんなことは誰も言ってない
835: (ワッチョイ ef8c-z4KY) 2019/11/07(木)20:03 ID:1chRDjs40(1) AAS
㋿
最近だと令和対応が記憶に新しいな
836: (ワッチョイ 9f2c-E8Ce) 2019/11/08(金)15:49 ID:bNpOstnB0(1/2) AAS
よく出てくる、&:メソッド名は、proc オブジェクトですが、
たまに出てくる、:メソッド名は、何ですか?
違いが、よく分からない
nums = %w(1 2 3 4).map!( &:to_i ) # 数値の配列
p nums.inject( :+ ) # 10
837: (ドコグロ MM3f-keNo) 2019/11/08(金)17:07 ID:GYgLC2XDM(1) AAS
シンボル
実用的には単なる変更不可能な文字列と見做してよい
Rubyの初期からの大きな失敗の一つで、特に意味はない
838: (ワッチョイ 9f01-vL98) 2019/11/08(金)18:26 ID:q9/Fdf+e0(1/4) AAS
マニュアルの「シンボルの実装と用途」ってところを読むと良いと思う
外部リンク[html]:docs.ruby-lang.org
&:to_iも":to_i"がシンボルで、そのシンボルが"&"で修飾されてるだけ
"&"はProcオブジェクトやto_procメソッドを持つオブジェクトをブロックとして渡す時に引数につける修飾記号
実行時にSymbol#to_procが呼ばれてそれがブロックとして渡される
839(1): (ワッチョイ 9f01-vL98) 2019/11/08(金)18:31 ID:q9/Fdf+e0(2/4) AAS
mapはシンボルを引数にとらないからmap(&:to_i)でブロックとして渡すけど
injectはシンボルを引数に取るからinject(:+)で実行できる
inject(&:+)としてブロックとして渡してもいいけど無駄処理が入るので普通はやらない
840: 836 (ワッチョイ 9f2c-E8Ce) 2019/11/08(金)18:48 ID:bNpOstnB0(2/2) AAS
漏れは、いつも、メソッドがシンボルを引数に取るかどうか、分からないから、
ひとまず、map!( :to_i ) みたいに、シンボルを渡して、エラーになったら、
map!( &:to_i ) と、& を付けることにしている
841(1): (ワッチョイ df33-rCU0) 2019/11/08(金)21:56 ID:ZY78KkPA0(1) AAS
>>839
ホントにムダなんか?
シンボルを渡されても、内部でやはりブロックにしてそうだが。
842(1): (ワッチョイ 0fd3-QrFL) 2019/11/08(金)22:54 ID:u/1VJcWC0(1) AAS
ていうか、なんでそんな半端な設計なの?
injectのみシンボル受け取れるようにするメリットってなに?
843(1): (ワッチョイ eb14-6wYC) 2019/11/08(金)23:51 ID:sLgGgSr40(1) AAS
シンボル・・・型が無い言語で、型を気付かれないように書くための手段の一つ
型がないとされる言語でも、123は数字だが、"123"は文字というように
書き方で型をこっそりと記述している。
他にも/abc/は正規表現型、1.0は浮動小数点型などの定義方法がある。
シンボルはその一つで、:で始めることにより、シンボル型の値を書くことができる
844: (ワッチョイ 9f01-vL98) 2019/11/08(金)23:57 ID:q9/Fdf+e0(3/4) AAS
>>841
リファレンスにも書いてるけどシンボルとブロックだと扱いが違う
ただパフォーマンスにシビアな箇所じゃなければ特別気にするほどの違いはない
外部リンク:ideone.com
845(1): (ワッチョイ 9f01-vL98) 2019/11/08(金)23:59 ID:q9/Fdf+e0(4/4) AAS
>>843
その「型が無い言語」とか「型がないとされる言語」という理解は間違ってるよ
846(1): (ワッチョイ 9f9c-G+r6) 2019/11/09(土)00:09 ID:PhKUzZj90(1) AAS
シンボルと文字列を区別したのは失敗だったとmatzも言ってるな
streamという途中でぶん投げた新言語ではその区別がなくなってる
847: (ワッチョイ eb14-6wYC) 2019/11/09(土)02:32 ID:d5YSql6x0(1) AAS
>>845
反論は「あってるよ」だけで十分そうだねw
848(1): (ドコグロ MM3f-keNo) 2019/11/09(土)12:03 ID:u1W/mjBNM(1/3) AAS
>>842
文字列リテラルよりも記述が簡便だからという理由により、本来文字列を使うべき用途にもシンボルが乱用された結果、
シンボルGCなどという頭の悪いものが誕生したりしたんだよな
誰がどう見ても完全に失敗
849(1): (ワッチョイ 9f2c-E8Ce) 2019/11/09(土)12:04 ID:Ypm9+s0e0(1) AAS
シンボルは、識別子を表すために作られたのか、数字で始められないだろ。
下はエラーになる
p :"1" # OK
p :1 # エラー
850(2): (ワッチョイ 0fd3-QrFL) 2019/11/09(土)12:13 ID:X62CmnUE0(1) AAS
>>848
あいやそっちじゃなくてinjectがシンボルを引数にとってブロックみたいな処理ができるって方の話
mapとかは&がいるんだよね?
851: (ドコグロ MM3f-keNo) 2019/11/09(土)12:16 ID:u1W/mjBNM(2/3) AAS
>>849
リテラルが書けないだけで、to_symすれば数字始まりのシンボルも普通に作れる
だから型が文字列と別である理由にはならない
852: (ドコグロ MM3f-keNo) 2019/11/09(土)12:19 ID:u1W/mjBNM(3/3) AAS
>>850
すまん848は>>846に対するレスだ
&:が後付けだから一貫性がないだけで、深い意味はない
853: (ワッチョイ 9f01-vL98) 2019/11/09(土)14:08 ID:MvykJ39t0(1) AAS
>>850
sliceやchunkのような分割系以外は
ブロックがなければEnumeratorを返すのを基本ルールにしてるから
mapはシンボルを取る形がないんじゃないかな
injectはEnumeratorを返すものじゃないから
ちょっと気を利かしてシンボルを取る形を加えたのかもね
854(1): (ワッチョイ 068c-W3rk) 2019/11/14(木)00:10 ID:GMI1Y3D90(1) AAS
今年が2.7ってことは
2022年には3か2.10か
855: (アウアウカー Sa89-AiI5) 2019/11/14(木)17:40 ID:BO+nDgNta(1) AAS
Rubyで2値の差を得る簡単なメソッドとかないかな
def diff(num1, num2)
max = [n1, n2].max
min = [n1, n2].min
(max - min)
end
p diff(-3, 7) #=> 10
とかだと見てくれ良くないし無駄も多い
856: (オッペケ Sr11-iZ7S) 2019/11/14(木)18:15 ID:baSi3t2Kr(1) AAS
(num1 - num2).absじゃあかんのか?
857: (ワッチョイ 8201-NhnT) 2019/11/15(金)01:07 ID:em064pO70(1) AAS
オラもそう思った
858: (アウアウエー Sa8a-9qGC) 2019/11/15(金)07:32 ID:1PuPU5S7a(1) AAS
>>854
最初の小数点の次の数は二桁以上にしない縛りなかったっけ?
859: (アウアウウー Sa9d-5f43) 2019/11/21(木)19:57 ID:0YdMrNdaa(1) AAS
Rubyの平均年収は全言語中最低
外部リンク:tech.nikkeibp.co.jp
860: (ワッチョイ f98f-Sa3v) 2019/11/21(木)23:28 ID:tUWUNbqx0(1) AAS
そんなに年収ほしければCOBOLやれば?
861(1): (ワッチョイ 9305-CPe6) 2019/11/23(土)01:26 ID:DazDco060(1/3) AAS
今月までプログラミングに一切触れたことのなかった初心者です
引数を配列にして
メソッド内で変数aに引数を代入
その後変数aの0番目にnを代入すると引数の0番目まで巻き添えでnになってしまうんですがそういう仕様なんでしょうか?
配列だけで起こる現象のようなんですが
method(0,1)と呼んで
def method(array)
a = array
a[0] = 10
puts a
省3
862: (ワッチョイ 9305-CPe6) 2019/11/23(土)01:27 ID:DazDco060(2/3) AAS
method([0,1])でした
失礼しました
863(1): (ワッチョイ 9301-wiXz) 2019/11/23(土)03:03 ID:8xX8HZu80(1/2) AAS
>>861
そういう仕様です
外部リンク[html]:magazine.rubyist.net
864(1): (ワッチョイ 9305-CPe6) 2019/11/23(土)10:59 ID:DazDco060(3/3) AAS
>>863
ありがとうございます
アドレスの参照先をコピーしてるだけだったんですね
理解しました
調べたところMarshalで書き出せばバイト値もコピーできるようなのでこの方法でいきます
865: (ワッチョイ 9301-wiXz) 2019/11/23(土)14:01 ID:8xX8HZu80(2/2) AAS
>>864
使い方にもよるのかもしれんが階層が浅くて固定ならdupで十分じゃない?
foo = [[1,2], [3,4], [5,6,7]]
bar = foo.dup
bar[0] = [9,9,9]
foo #=> [[1, 2], [3, 4], [5, 6, 7]]
bar #=> [[9, 9, 9], [3, 4], [5, 6, 7]]
bar[1].push 200
foo #=> [[1, 2], [3, 4, 200], [5, 6, 7]]
bar #=> [[9, 9, 9], [3, 4, 200], [5, 6, 7]]
省10
866(1): (ワッチョイ 132c-4eZD) 2019/11/23(土)20:53 ID:fygFNKSM0(1/2) AAS
年収は、5大SIer, Java などの土方系・奴隷、多重請負構造では、1社間に入る度に、3割抜かれる!
顧客が100万円払っても、間1 が、30万円抜いて、
自社には70万円で来るので、自分の給料は、25万円ぐらいw
顧客が100万円払っても、間1 が、30万円抜いて、間2 が、20万円抜くと、
自社には50万円で来るので、自分の給料は、20万円ぐらいw
だから、ハローワークのIT 講座でも、奴隷になる2次請け以降に、就職しないように言われる。
Javaの平均年収が600万円なら、300万円の奴隷と、900万円の大企業の奴隷使いがいる。
元々、大企業の人は、給料が良いだけ。
給料は言語に関係ない。労働形態による!
抜きを警戒する人は、派遣なら3割抜かれて、後は自分の給料になるけど、
省3
867: (ワッチョイ 132c-4eZD) 2019/11/23(土)21:01 ID:fygFNKSM0(2/2) AAS
C/C++ 以外のほとんどの言語では、参照がコピーされるだけ!
インスタンスを作っていない
だから、実際のインスタンス数は、clone, dup, new された回数を、チェックすれば良い
868(1): (ワッチョイ fb8c-qZD/) 2019/11/23(土)22:03 ID:uAZdpObm0(1) AAS
土方系の仕事って何ですか
869: (ドコグロ MM63-5f43) 2019/11/23(土)22:07 ID:jA/F562DM(1) AAS
>>866
そんなRubyの平均年収は全言語中最低
外部リンク:tech.nikkeibp.co.jp
870: (ワッチョイ 6914-6o6Z) 2019/11/24(日)01:52 ID:iwyjZSbL0(1) AAS
>>868
顧客に価値を提供すること
871: (ワッチョイ 139c-rLNN) 2019/11/24(日)02:00 ID:2vFps37N0(1) AAS
土方にはなるな
SIerにはなるな
872: (アウアウウー Sa9d-5f43) 2019/11/24(日)02:02 ID:Q6cceAnpa(1) AAS
しかし現実には大半のRubyistよりもSIerのドカタの方が給料は高いのであった
873: (ワッチョイ 3333-a70H) 2019/11/24(日)04:46 ID:kT5P2hJJ0(1) AAS
給料だけでもないやろ。
つーか、どうでもいいから。んな話は。
874: (ワッチョイ f98f-Sa3v) 2019/11/24(日)15:33 ID:Gqvqz24c0(1) AAS
要件定義、外部設計を受注できるプライマリの
会社に行かないと高収入はないよ。
内部設計、プログラミングは下流工程だから下請けに流される。
3割抜くとか言うが、粗利3割はどの業界でも普通だし。
875: (ワッチョイ fb8c-qZD/) 2019/11/24(日)18:51 ID:ednGVdun0(1) AAS
言語を知っている。いや知っているだけで金になる仕事はないから
876(1): (ワッチョイ 132c-4eZD) 2019/11/24(日)23:07 ID:Q5WFFNoW0(1) AAS
上流工程が、下級工程の給料を決める
だから、YouTube で有名なKENTA が、
クライアント側ではなく、サーバー側・構築運用へ行った
今世紀最大の起業家、Ruby でVagrant を作った、
HashiCorp のMitchell Hashimoto も、Go でTerraform を作った!
富・技術革新が集中する所に、Hashimoto は行く!
実際に、車のメーカーの企業の時価総額は変わらないけど、
アマゾン・Google などのサーバー屋は、100兆円企業になってる!
877: (ワッチョイ 139c-rLNN) 2019/11/25(月)04:07 ID:gVPe0v4t0(1) AAS
>>876
日本のIT企業はほぼ国内事業しかやってないし
規模も小さいからどうしても時価総額は上がらないんだろうね
あと大したことやってない
878: (ワイーワ2 FF63-KqLj) 2019/11/25(月)12:33 ID:pjJuONFZF(1) AAS
>上流工程が、下級工程の給料を決める
>クライアント側ではなく、サーバー側・構築運用へ行った
上流ってそういう意味か?ωωω
879: (ドコグロ MMe5-5f43) 2019/11/25(月)16:27 ID:Lb2w9ntUM(1) AAS
Amazonの売上の大半はEC
Googleの売上の大半は広告
どっちも実際には上物で稼いでいて、AWSやGCPの売上比率は15%程度に過ぎない
キチガイの目に映る世界と実態の間にはは大きな乖離があることがわかるだろう
880: (ワッチョイ f914-6o6Z) 2019/11/25(月)17:19 ID:vZmdeQAZ0(1) AAS
まあ利益出してるところじゃなくて"売上"というのなら、
ECが一番やろうな。そりゃ
881: (ワッチョイ 922c-Ql8R) 2019/11/28(木)00:37 ID:WsOSEkue0(1) AAS
Windows10, WSL, Ubuntu 16.4 で、
libruby2.3, ruby2.3 の更新が来た!
Ruby2.3 は、もうサポート切れだけど、まだ誰かがサポートしてるw
Ubuntu チームか
882: (オイコラミネオ MM91-pi24) 2019/11/28(木)17:42 ID:dnvj190uM(1) AAS
ビルドしてるだけやろ。
883(1): (ワッチョイ 922c-Ql8R) 2019/11/30(土)04:33 ID:HbGyzSLF0(1/2) AAS
Vagrant, Chef, RSpec, Serverspec などの、
DSL の書き方だけができる、ライブラリ・フレームワークはないの?
884: (ワッチョイ 1214-Sv7j) 2019/11/30(土)07:04 ID:WKFbtD9B0(1) AAS
>>883
なんか面白そうだね?
どういう事?
885: 883 (ワッチョイ 922c-Ql8R) 2019/11/30(土)09:10 ID:HbGyzSLF0(2/2) AAS
環境の構築テストなどを、すごく簡潔に、宣言っぽく書いている
例えば、ファイル・ディレクトリなどを作る場合でも、エラー処理もなく、1行で書いてる。
Maven, Gradle も、こういう宣言っぽい感じかな?
便利だなと思って
886: (ワッチョイ a9da-o7DB) 2019/12/02(月)07:50 ID:sFARCTmI0(1) AAS
k-sato_at_oiaxって実はもう死んでたりするの?
887: (ワッチョイ 922c-Ql8R) 2019/12/02(月)22:47 ID:H5nAExhM0(1) AAS
改訂4版 基礎 Ruby on Rails、黒田努・佐藤和人、2018/9/7
この本が、株式会社オイアクス監修だろ。
著者2人は、株式会社ルビキタスにも所属している
888: (ワッチョイ 12a5-dfs3) 2019/12/03(火)09:08 ID:I9YoNGrF0(1) AAS
義務教育にrubyが組み込まれなかった時点でrubyは終わりだろ
ポジション取られたのがscratch
ついでにオブジェクト脳の本の社長起立プログラム、あれ最高にキモイ
889: (ワッチョイ 232c-+J45) 2019/12/05(木)09:12 ID:fTTGdtWT0(1/3) AAS
Windows のPowerShell で、1-liner で、webrick サーバーを立てるのに、
上だとエラーになって、
下のように、%Q("./") でクォートすると、正常に動くのは、なぜでしょう?
どういうカラクリなの?
ruby -rwebrick -e 'WEBrick::HTTPServer.new(:DocumentRoot => "./", :Port => 8888).start'
ruby -rwebrick -e 'WEBrick::HTTPServer.new(:DocumentRoot => %Q("./"), :Port => 8888).start'
890: (オッペケ Src1-8zr5) 2019/12/05(木)09:19 ID:wT3fRGGOr(1/3) AAS
windowsで-e の後にシングルクォーテーション使ってるからでしょ
ruby -e 'puts "hello"'
でもエラーになるぞ
891: (オッペケ Src1-8zr5) 2019/12/05(木)09:20 ID:wT3fRGGOr(2/3) AAS
ちな
ruby -e 'puts \"hello\"'
や
ruby -rwebrick -e 'WEBrick::HTTPServer.new(:DocumentRoot => \"./\", :Port => 8888).start'
なら問題ない
892: 889 (ワッチョイ 232c-+J45) 2019/12/05(木)10:48 ID:fTTGdtWT0(2/3) AAS
ruby -e 'puts "hello"'
は、コマンドプロンプトではエラーにならないが、
PowerShell ではエラーになるw
ruby -e 'puts %Q("hello")'
は、コマンドプロンプト・PowerShell の両方で正常
ruby -e 'puts "hello"'
が、コマンドプロンプト・PowerShell から、Rubyに渡る際に、どう変換されるのか?
そのカリクリを知りたい
893: (アウウィフ FFa9-MVf8) 2019/12/05(木)10:57 ID:IbmhSLeWF(1) AAS
WSL使え
あるいはWindowsのコマンドプロンプトなら
ruby -e "puts 'hello'"
894: (オッペケ Src1-8zr5) 2019/12/05(木)11:11 ID:wT3fRGGOr(3/3) AAS
だから'使うなっつってんだろアホか
895: (ワッチョイ 7501-MVf8) 2019/12/05(木)11:21 ID:q0kDwfyl0(1) AAS
製造者がWindowsが憎いMicrosoftが憎いと言ってるのに、わざわざWindows上で使わなくても。
896: (ワッチョイ 8333-lxm3) 2019/12/05(木)21:12 ID:h+M+c6Hd0(1) AAS
コマンドプロンプトのクォート解釈は、控えめに言ってメチャクチャだからな。
昔のものだし、しかたない。
それに比べたら、PowerShellははるかにまともで現代的。
897: 889 (ワッチョイ 232c-+J45) 2019/12/05(木)23:40 ID:fTTGdtWT0(3/3) AAS
まとめ。
Windows10 で、1-liner のruby -e で順に、1〜3 を実行した場合
1. 'puts "hello"'
2. 'puts %Q("hello")'
3. "puts 'hello'"
1〜3は、コマンドプロンプトと、WSL, Ubuntu 16.04 では、
hello, "hello", hello
PowerShell では、
エラー, "hello", hello
898(1): (ワイーワ2 FF93-MVf8) 2019/12/06(金)10:14 ID:uUae0oO6F(1/2) AAS
pythonは””も’’も意味一緒だが
rubyは””と''は微妙に意味違うよな
899(1): (ワイーワ2 FF93-MVf8) 2019/12/06(金)10:16 ID:uUae0oO6F(2/2) AAS
'puts %Q(hello)'
あるいは
"puts %Q(hello)"
で良いのに
900: 889 (ワッチョイ 232c-+J45) 2019/12/06(金)12:46 ID:IktivxOB0(1/2) AAS
>>899
まとめ。
Windows10 で、1-liner のruby -e で順に、1〜2 を実行した場合
1. 'puts %Q(hello)'
2. "puts %Q(hello)"
コマンドプロンプト・PowerShell、WSL, Ubuntu 16.04 のすべてで、
hello
と出力された!
901: (アウアウウー Saa9-LXAx) 2019/12/06(金)20:18 ID:nE0DnhAQa(1) AAS
>>898
微妙というか、ダブルクォートは中身を命令として実行し、
シングルクォートは中身を文字列として処理する。
全然違うぞ
902(1): (ワッチョイ 23a5-q23Y) 2019/12/06(金)21:53 ID:P1BfZN9u0(1) AAS
‘‘
’’
””
‘’
眼力チェック
上下前次1-新書関写板覧索設栞歴
あと 100 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.405s*