プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で
前スレ
Ruby 初心者スレッド Part 61
https://mevius.5ch.net/test/read.cgi/tech/1503644351/
るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/
Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/
逆引きRuby
http://www.namaraii.com/rubytips/
探検
Ruby 初心者スレッド Part 62
■ このスレッドは過去ログ倉庫に格納されています
2017/11/24(金) 00:35:29.31ID:rLZHdQ3Q
779デフォルトの名無しさん
2018/02/23(金) 04:41:21.61ID:rDH2T2Uu 今日からRubyの勉強する
楽しみ
楽しみ
780デフォルトの名無しさん
2018/02/24(土) 23:08:36.72ID:ysq1mmzI Ruby 2.6.0-preview1 リリース
https://www.ruby-lang.org/ja/news/2018/02/24/ruby-2-6-0-preview1-released/
https://www.ruby-lang.org/ja/news/2018/02/24/ruby-2-6-0-preview1-released/
781デフォルトの名無しさん
2018/02/25(日) 04:05:29.41ID:pcyqC+jB numbers = (1..7).to_a
この配列を、前から走査して、ある数字が見つかった時、
その数字より前の配列と、その数字を含めて、その数字より後ろの配列に、
1-pass で分ける、簡潔な書き方はありますか?
partition, group_by, each_with_object とか?
例、4 が見つかった場合
[1,2,3]
[4,5,6,7]
この配列を、前から走査して、ある数字が見つかった時、
その数字より前の配列と、その数字を含めて、その数字より後ろの配列に、
1-pass で分ける、簡潔な書き方はありますか?
partition, group_by, each_with_object とか?
例、4 が見つかった場合
[1,2,3]
[4,5,6,7]
782デフォルトの名無しさん
2018/02/25(日) 04:12:39.42ID:OLqFO2yC ありまぁす!
783デフォルトの名無しさん
2018/02/25(日) 08:53:07.29ID:Mg3bT8JO 元の配列に4が1つしかなくてソート済みならpartitionでいいんじゃない
numbers.partition{|e| e < 4}
そうじゃないなら素直にやるしかないかと
i = numbsers.find_index(4)
numbers[0...i]
numbers[i..-1]
もしくは
numbers.take_while{|e|e != 4}
numbers.drop_while{|e|e != 4}
numbers.partition{|e| e < 4}
そうじゃないなら素直にやるしかないかと
i = numbsers.find_index(4)
numbers[0...i]
numbers[i..-1]
もしくは
numbers.take_while{|e|e != 4}
numbers.drop_while{|e|e != 4}
784781
2018/02/25(日) 08:59:55.65ID:pcyqC+jB785デフォルトの名無しさん
2018/02/25(日) 10:55:59.02ID:mAmrOOAm Rails6開発開始
786デフォルトの名無しさん
2018/02/25(日) 11:54:19.33ID:OLqFO2yC >>784
ありまぁす!って言ってんだろうが
ありまぁす!って言ってんだろうが
787デフォルトの名無しさん
2018/02/25(日) 11:58:14.59ID:OLqFO2yC [1, 2, 3, 4, 5, 6, 7].slice_before(4).to_a
=> [[1, 2, 3], [4, 5, 6, 7]]
(to_aはEnumeratorをそのまま使うようにすれば不要)
=> [[1, 2, 3], [4, 5, 6, 7]]
(to_aはEnumeratorをそのまま使うようにすれば不要)
788デフォルトの名無しさん
2018/02/25(日) 12:22:26.69ID:caIICGcE これからRuby on RAILS勉強するんですけど
なんかいい参考書とかHPありますか?
なんかいい参考書とかHPありますか?
789781
2018/02/25(日) 12:57:24.51ID:pcyqC+jB >>787
(1..7).slice_before(4).to_a
=> [[1, 2, 3], [4, 5, 6, 7]]
[1,2,4,5,4,6].slice_before(4).to_a
=> [[1, 2], [4, 5], [4, 6]]
slice_before だと、探している数字が複数回あると、
そこから新たに、グルーピングが始まる
>>788
改訂3版 基礎 Ruby on Rails、黒田努・佐藤和人、2015
実践Ruby on Rails 4: 現場のプロから学ぶ本格Webプログラミング、黒田努、2014
黒田の本は、わかりやすい。
ただし、他の著者で、Rails 5 の本も出ているかも
(1..7).slice_before(4).to_a
=> [[1, 2, 3], [4, 5, 6, 7]]
[1,2,4,5,4,6].slice_before(4).to_a
=> [[1, 2], [4, 5], [4, 6]]
slice_before だと、探している数字が複数回あると、
そこから新たに、グルーピングが始まる
>>788
改訂3版 基礎 Ruby on Rails、黒田努・佐藤和人、2015
実践Ruby on Rails 4: 現場のプロから学ぶ本格Webプログラミング、黒田努、2014
黒田の本は、わかりやすい。
ただし、他の著者で、Rails 5 の本も出ているかも
790デフォルトの名無しさん
2018/02/25(日) 13:36:01.35ID:OLqFO2yC > slice_before だと、探している数字が複数回あると、
> そこから新たに、グルーピングが始まる
仕様どおりだろ
> そこから新たに、グルーピングが始まる
仕様どおりだろ
791デフォルトの名無しさん
2018/02/27(火) 16:15:39.63ID:shVfNcyg erbとかのテンプレートを元に画像を生成するgemってありませんか?
thinreportsでpdfではなくbmp,pngなどの画像を出力する感じです
thinreportsでpdfではなくbmp,pngなどの画像を出力する感じです
792デフォルトの名無しさん
2018/02/27(火) 21:18:11.05ID:PLAOSS1/ 「selenium webdriver screenshot」で検索!
Electron でも出来る
Electron でも出来る
793デフォルトの名無しさん
2018/02/27(火) 21:25:08.90ID:+EUBPr3t inline_svg とか?
794デフォルトの名無しさん
2018/02/28(水) 00:12:23.88ID:mWE0Cmql >>784
AsciiDoc/Asciidoctor
AsciiDoc/Asciidoctor
795デフォルトの名無しさん
2018/02/28(水) 19:08:53.94ID:acVWAXbg シェルコマンドでimagemagick呼べばいいよ
gemすら使わずに一瞬でできる
gemすら使わずに一瞬でできる
796デフォルトの名無しさん
2018/02/28(水) 21:12:02.76ID:mIXPiXOq TSVデータを処理したいんですが
末尾の空白文字(タブ)がいつの間にか消えてしまいます
splitが自動削除するのは分かったけど他でも消えてる様です
この暗黙の空白削除現象を検索しても引っかからないんですがいい検索単語はないですか?
あと勝手に削除する理由はなんなんでしょう
末尾の空白文字(タブ)がいつの間にか消えてしまいます
splitが自動削除するのは分かったけど他でも消えてる様です
この暗黙の空白削除現象を検索しても引っかからないんですがいい検索単語はないですか?
あと勝手に削除する理由はなんなんでしょう
797デフォルトの名無しさん
2018/02/28(水) 21:36:50.04ID:bddDF+sp798796
2018/02/28(水) 22:18:52.36ID:mIXPiXOq 原因分からなかったけど解決しました
ループ内で毎回Hashに加えていくのを一旦stringにまとめてから
ループ後のHashに加えるようにしたら"\txxxxx\t\n"の後ろのタブが消えなくなりました
ループ内で毎回Hashに加えていくのを一旦stringにまとめてから
ループ後のHashに加えるようにしたら"\txxxxx\t\n"の後ろのタブが消えなくなりました
799796
2018/02/28(水) 22:22:19.89ID:mIXPiXOq 前に壊したデータ読み直してました
800デフォルトの名無しさん
2018/03/02(金) 00:03:53.83ID:7c4/pzB6 windows環境でrRubyinstaller2でインストールしてruby.exeのパスに非アスキー文字が含まれていると
requireしたときに$LOAD_PATHの非アスキー部分が文字化けしてload errorが起きるんですけど何か対処法はありませんでしょうか?
その場的に今はUTF-8で書いたコードの中で$LOAD_PATHに対応するパスを挿入して動かしてるんですが。。。
諸事情によりrubyはアスキー文字配下にインストールできないものとします
requireしたときに$LOAD_PATHの非アスキー部分が文字化けしてload errorが起きるんですけど何か対処法はありませんでしょうか?
その場的に今はUTF-8で書いたコードの中で$LOAD_PATHに対応するパスを挿入して動かしてるんですが。。。
諸事情によりrubyはアスキー文字配下にインストールできないものとします
801デフォルトの名無しさん
2018/03/02(金) 03:54:56.19ID:QlU5Q+B8 今すぐアンインストールしてWSLを入れよう
802デフォルトの名無しさん
2018/03/02(金) 05:39:12.36ID:xypD9Mi9 >>800
バグ報告してくるんだ
バグ報告してくるんだ
803デフォルトの名無しさん
2018/03/02(金) 07:54:43.19ID:mIGjbFX+ Windows のirb でも、ascii 以外は正常に動かないから、
irb を使う時だけ、WSL・Ubuntu の方を使っている
UTF-8 では、cp932(shift-jis)が読めないのだろう
起動時オプションで、cp932 を指定すれば、読めるかも知れないけど、
逆にRuby 内部で、cp932 はヤバイのじゃないか?
UTF-8以外を使うと、他のアプリと通信できないとか、バグりそう
とにかく、PC のユーザー名・パス名などに、半角英数字以外を使うと、
多くのアプリでバグる
irb を使う時だけ、WSL・Ubuntu の方を使っている
UTF-8 では、cp932(shift-jis)が読めないのだろう
起動時オプションで、cp932 を指定すれば、読めるかも知れないけど、
逆にRuby 内部で、cp932 はヤバイのじゃないか?
UTF-8以外を使うと、他のアプリと通信できないとか、バグりそう
とにかく、PC のユーザー名・パス名などに、半角英数字以外を使うと、
多くのアプリでバグる
804803
2018/03/02(金) 11:51:22.61ID:mIGjbFX+ Windows のPowerShell から、Ruby の1-liner を実行すると、ファイル名だけが\x 表示された。
PowerShellのデフォルト文字コードが、UTF-8 だから、フォルダ名は正常に表示された
> ruby -rfileutils -e "puts FileUtils.pwd"
C:/Users/Owner/Documents/あいう
> ruby -e "p Dir.glob('*')"
["\x{8345}\x{8343}\x{838B}\x{8358}.txt", "\x{8376}\x{838D}\x{834F}\x{838C}.txt"]
> ruby -E :shift_jis -e "p Dir.glob('*')"
起動オプションに、外部エンコーディングをUTF-8のままで指定せず、
内部エンコーディングだけをshift_jis に指定すると、正常に表示された
["ウイルス.txt", "プログレ.txt"]
漏れは一々、起動時やファイル内に、文字コードを指定するのが面倒なので、
Windowsのユーザー環境変数に、RUBYOPT を追加して、--encoding=UTF-8 を設定している。
ただし、こうすると、irb が動かなくなるので、Windows10 のWSL・Ubuntu のirb を使っている
一方、WSL・Ubuntu・bash から、上記を実行すると、
デフォルトで、どちらも正常に表示された
Windows で実行する場合は、PowerShellはUTF-8、コマンドプロンプトはCP932 がデフォルトだから、
これらのシェルの文字コードか、Ruby側の文字コードを指定する
まあ、shift_jis の処理は、危険だと思う。
@などのWindows独自のCP932文字(環境依存文字)があって、
shift_jis・CP932は微妙に異なるから、どこまで正常に動くか分からない
PowerShellのデフォルト文字コードが、UTF-8 だから、フォルダ名は正常に表示された
> ruby -rfileutils -e "puts FileUtils.pwd"
C:/Users/Owner/Documents/あいう
> ruby -e "p Dir.glob('*')"
["\x{8345}\x{8343}\x{838B}\x{8358}.txt", "\x{8376}\x{838D}\x{834F}\x{838C}.txt"]
> ruby -E :shift_jis -e "p Dir.glob('*')"
起動オプションに、外部エンコーディングをUTF-8のままで指定せず、
内部エンコーディングだけをshift_jis に指定すると、正常に表示された
["ウイルス.txt", "プログレ.txt"]
漏れは一々、起動時やファイル内に、文字コードを指定するのが面倒なので、
Windowsのユーザー環境変数に、RUBYOPT を追加して、--encoding=UTF-8 を設定している。
ただし、こうすると、irb が動かなくなるので、Windows10 のWSL・Ubuntu のirb を使っている
一方、WSL・Ubuntu・bash から、上記を実行すると、
デフォルトで、どちらも正常に表示された
Windows で実行する場合は、PowerShellはUTF-8、コマンドプロンプトはCP932 がデフォルトだから、
これらのシェルの文字コードか、Ruby側の文字コードを指定する
まあ、shift_jis の処理は、危険だと思う。
@などのWindows独自のCP932文字(環境依存文字)があって、
shift_jis・CP932は微妙に異なるから、どこまで正常に動くか分からない
805デフォルトの名無しさん
2018/03/02(金) 12:00:42.65ID:OCKmRFPd なにをごちゃごちゃやってんだ?
こういうのは変換すべきレイヤーで変換するだけの話だろ
Rubyのスクリプト(に限らないが)は
どこでも同じように動かすんだから
ソースコードも内部も UTF-8だ
画面への入出力時に変換させればいいだけ
コマンドプロンプトをUTF-8に変換するって手もある
海外じゃCP932という日本専用の文字コード使ってないことぐらいわかるだろ?
こういうのは変換すべきレイヤーで変換するだけの話だろ
Rubyのスクリプト(に限らないが)は
どこでも同じように動かすんだから
ソースコードも内部も UTF-8だ
画面への入出力時に変換させればいいだけ
コマンドプロンプトをUTF-8に変換するって手もある
海外じゃCP932という日本専用の文字コード使ってないことぐらいわかるだろ?
806デフォルトの名無しさん
2018/03/02(金) 12:39:35.62ID:vnF4MMGw 元々はwindowsのワイド文字をうまくutf8に変換してやってこうという方針だったのに
nobuがロケールに変換させまくって動かないだけ
まあ誰もバグ報告しないのも悪いけど
nobuがロケールに変換させまくって動かないだけ
まあ誰もバグ報告しないのも悪いけど
807803
2018/03/02(金) 13:14:57.35ID:mIGjbFX+ Rubyist は、RubyでGem を作れるけど、C で低レベルなI/O を書けるわけじゃない
また、Linux・Windows の両方に対応させるのは、難しい
また、Linux・Windows の両方に対応させるのは、難しい
808803
2018/03/02(金) 16:17:45.17ID:mIGjbFX+ library irb/input-method
https://docs.ruby-lang.org/ja/latest/library/irb=2finput=2dmethod.html
class IRB::ReadlineInputMethod のソースコードを見れば良いの?
それとも、GNU Readline のソースコードかな?
Windows のirb で、日本語がバグるのは、
根本的に、GNU Readline が、Windowsの日本語を考慮していないからじゃないの?
https://docs.ruby-lang.org/ja/latest/library/irb=2finput=2dmethod.html
class IRB::ReadlineInputMethod のソースコードを見れば良いの?
それとも、GNU Readline のソースコードかな?
Windows のirb で、日本語がバグるのは、
根本的に、GNU Readline が、Windowsの日本語を考慮していないからじゃないの?
809デフォルトの名無しさん
2018/03/02(金) 16:40:11.45ID:ypGJ9h8+ というかrubyコミュニティがwindowsを考慮してない。
むしろ怨み、蔑み、嫌っている。昔から。
むしろ怨み、蔑み、嫌っている。昔から。
810デフォルトの名無しさん
2018/03/02(金) 17:18:20.26ID:0lL3/u0V >>809
そだねー
そだねー
811803
2018/03/02(金) 17:55:40.44ID:mIGjbFX+ console.log("あ");
Windows で、node (REPL)を実行したけど、
日本語を入力しても、PowerShell・コマンドプロンプトの両方で、正常に動く
Windows で、node (REPL)を実行したけど、
日本語を入力しても、PowerShell・コマンドプロンプトの両方で、正常に動く
812デフォルトの名無しさん
2018/03/02(金) 23:07:42.42ID:wSJnGqkk RubyはLinuxで動かすようにすればいいよ
WindowsでちょこっとしたやりたいことがあるならC#使え、と
どうせ仕事でやってるRubyはLinuxで動くんだからさ
Windowsマシンでの開発ならVMかDocker使えばすべて解決
WindowsでちょこっとしたやりたいことがあるならC#使え、と
どうせ仕事でやってるRubyはLinuxで動くんだからさ
Windowsマシンでの開発ならVMかDocker使えばすべて解決
813デフォルトの名無しさん
2018/03/03(土) 01:14:23.68ID:vdurK0jv ありがとうございました
ググってみたら結構前から報告されていたバグみたいなので諦めることにします
ググってみたら結構前から報告されていたバグみたいなので諦めることにします
814デフォルトの名無しさん
2018/03/03(土) 01:19:41.29ID:GGmAMA7z815デフォルトの名無しさん
2018/03/03(土) 01:21:46.51ID:GGmAMA7z >>808
chcp 65001とかしてもダメかね?
chcp 65001とかしてもダメかね?
816デフォルトの名無しさん
2018/03/03(土) 15:41:40.19ID:VQ/a88pK cmd で chcp 65001 するくらいなら
git for windows インスコして git bash (mintty) 使うと幸せになれるぞ
git for windows インスコして git bash (mintty) 使うと幸せになれるぞ
817デフォルトの名無しさん
2018/03/03(土) 15:43:54.56ID:x/6oRrTp 65001 は右端とか折り返し表示がバグるね
818803
2018/03/03(土) 15:49:49.91ID:HcfLoqAp Ruby の起動オプションに、外部・内部エンコーディングか、RUBYOPT で指定できる。
ファイル内でも指定できる
それと、PowerShell・コマンドプロンプト、WSL・Ubuntu・bash で指定できる
これらの組み合わせの中で、文字化けしない組み合わせを探す
または、$LOAD_PATH の辺りで、指定するとか
ファイル内でも指定できる
それと、PowerShell・コマンドプロンプト、WSL・Ubuntu・bash で指定できる
これらの組み合わせの中で、文字化けしない組み合わせを探す
または、$LOAD_PATH の辺りで、指定するとか
819デフォルトの名無しさん
2018/03/03(土) 17:58:14.02ID:URsJSGy/ Rubyの2.5.0p2をRubyインストーラーでインストールしたらRubyの2.5.0p0だった・・・
820デフォルトの名無しさん
2018/03/03(土) 18:17:52.81ID:A+Ivs8ru patchlevelはもう無いよ
821デフォルトの名無しさん
2018/03/03(土) 18:26:46.78ID:VQ/a88pK >>818
そんな試行錯誤は一番あかんやつや
そんな試行錯誤は一番あかんやつや
822デフォルトの名無しさん
2018/03/03(土) 21:39:09.27ID:rw2aiDdk そうそう。結局 Rubyやirb に問題が有るんじゃなくて
単に >>803 が理解してないだけ
単に >>803 が理解してないだけ
823デフォルトの名無しさん
2018/03/03(土) 21:55:10.06ID:GRjh9/QH そういうことだから理解できない初心者は間違ってもrubyなんか使おうと思わないようにね。
初心者や子供にruby勧めてくるのは例外なくマウント取りたいだけのクズだぞ。
初心者や子供にruby勧めてくるのは例外なくマウント取りたいだけのクズだぞ。
824デフォルトの名無しさん
2018/03/03(土) 21:56:04.27ID:ETPjeMg1 書籍のサンプルコードの一部です
この@memoという変数はいわゆる辞書形式のデータ構造で
[remain, pre]は辞書のキー(複合キー?)という理解でいいんでしょうか
ちなみに@を付けないとどうなりますか
変数名に記号が付くのが凄く気になります
@memo = {}
# 計算結果をメモする
@memo[[remain, pre]] = cnt
この@memoという変数はいわゆる辞書形式のデータ構造で
[remain, pre]は辞書のキー(複合キー?)という理解でいいんでしょうか
ちなみに@を付けないとどうなりますか
変数名に記号が付くのが凄く気になります
@memo = {}
# 計算結果をメモする
@memo[[remain, pre]] = cnt
825デフォルトの名無しさん
2018/03/03(土) 22:30:11.11ID:gHPIEkfR826デフォルトの名無しさん
2018/03/04(日) 00:30:02.17ID:99M3BGnn >>825
ありがとうございました
ありがとうございました
827デフォルトの名無しさん
2018/03/04(日) 02:42:13.82ID:Oz1ASWrr キーに配列が使えるのか・・・
828デフォルトの名無しさん
2018/03/04(日) 04:12:18.75ID:aAfADGFK オブジェクトはなんでもイケるんじゃなかったっけ?
ハッシュ値さえちゃんと返せば。
ハッシュ値さえちゃんと返せば。
829デフォルトの名無しさん
2018/03/04(日) 11:33:10.30ID:7gUy2hud キーにした配列を変化させた時はrehashしないとキーが一致しなくなる
文字列のキーは変化させても、キーはセットしたときのまま
文字列のキーは変化させても、キーはセットしたときのまま
830デフォルトの名無しさん
2018/03/04(日) 11:34:10.89ID:Oz1ASWrr なるほどね。先入観として[a,b]ってかいたら毎回newされて、
キーとしては未定義値のnil固定か、別オブジェクト扱いで不定になるか、と思えた
キーとしては未定義値のnil固定か、別オブジェクト扱いで不定になるか、と思えた
831デフォルトの名無しさん
2018/03/05(月) 16:37:38.89ID:62GuhFZ7 str = <<'EOT'
str = << 'EOT'
here doc で、下のように、<< の後ろに半角空白があると、文法エラーになる
それと、WSL のUbuntu 側にインストールしたRuby で、
Windows 側にあるCSV ファイルを処理すると、
改行コードが異なるから、不正な形式のファイルと言われる。
改行コードを、LF だけに変えると、正しく処理できる
str = << 'EOT'
here doc で、下のように、<< の後ろに半角空白があると、文法エラーになる
それと、WSL のUbuntu 側にインストールしたRuby で、
Windows 側にあるCSV ファイルを処理すると、
改行コードが異なるから、不正な形式のファイルと言われる。
改行コードを、LF だけに変えると、正しく処理できる
832デフォルトの名無しさん
2018/03/05(月) 17:53:15.03ID:aK37pZ+C mode: 'rt'
で読み込めばいいじゃん
で読み込めばいいじゃん
833831
2018/03/05(月) 19:10:41.11ID:62GuhFZ7 options に行区切りを指定したら、
WSL のUbuntu 側にインストールしたRuby で、
Windows 側にあるCSV ファイルを処理できた
row_sep: "\r\n" では出来たが、
row_sep: :auto では、エラーになる
WSL のUbuntu 側にインストールしたRuby で、
Windows 側にあるCSV ファイルを処理できた
row_sep: "\r\n" では出来たが、
row_sep: :auto では、エラーになる
834デフォルトの名無しさん
2018/03/05(月) 21:53:10.11ID:K/Y9LwEe require ‘pry’
def foo;@a = 1;end
binding.pry
このコードを実行し、出て来たプロンプトで
> cd Object
> instance_methods(false)
=> [:to_yaml, :to_yaml_properties, :pry, :__binding__, :psych_to_yaml]
と出ました。fooメソッドが見つかりません。
トップレベルで定義したfooメソッドはObjectのメソッドに成るのでは?
ちなみにコマンドラインでpryとタイプして
[1] pry(main)> def foo;@a=0;end
=> :foo
[2] pry(main)> cd Object
[3] pry(Object):1> instance_methods(false)
=> [:to_yaml, :to_yaml_properties, :pry, :__binding__, :psych_to_yaml, :foo]
[4] pry(Object):1>
ちゃんとfooが見えます。
def foo;@a = 1;end
binding.pry
このコードを実行し、出て来たプロンプトで
> cd Object
> instance_methods(false)
=> [:to_yaml, :to_yaml_properties, :pry, :__binding__, :psych_to_yaml]
と出ました。fooメソッドが見つかりません。
トップレベルで定義したfooメソッドはObjectのメソッドに成るのでは?
ちなみにコマンドラインでpryとタイプして
[1] pry(main)> def foo;@a=0;end
=> :foo
[2] pry(main)> cd Object
[3] pry(Object):1> instance_methods(false)
=> [:to_yaml, :to_yaml_properties, :pry, :__binding__, :psych_to_yaml, :foo]
[4] pry(Object):1>
ちゃんとfooが見えます。
835デフォルトの名無しさん
2018/03/05(月) 22:05:54.92ID:K/Y9LwEe 自己解決しました。
[1] pry(main)> self.private_methods(false)
とすれば見えました。
[1] pry(main)> self.private_methods(false)
とすれば見えました。
836デフォルトの名無しさん
2018/03/11(日) 14:39:13.23ID:veKfJdlp 1
837デフォルトの名無しさん
2018/03/15(木) 18:29:02.24ID:5enxwtKu RubyからDB扱うときって皆は何のライブラリ使ってるの?
838デフォルトの名無しさん
2018/03/15(木) 19:28:59.60ID:tIXtXy4E RubyでDBを扱う場合、プロダクションで使われているのは世界で唯一ActiveRecordのみ
839デフォルトの名無しさん
2018/03/15(木) 21:18:59.56ID:OYGfq7D7 インターフェースじゃん。
バックでmysqlとか動いてるぞ。
いいからちゃんと勉強しろよ。
バックでmysqlとか動いてるぞ。
いいからちゃんと勉強しろよ。
840デフォルトの名無しさん
2018/03/15(木) 21:31:02.48ID:rmXeLovx >>839
ライブラリで答えてください
ライブラリで答えてください
841デフォルトの名無しさん
2018/03/15(木) 23:24:57.24ID:xG9lbsTH >>837
ActiveRecordが大半なのは間違いない
ORMを求めてるならsequel、rom、hanami等
素のDBライブラリならmysql2, sqlite3-ruby, ruby-pg
ArelでSQLを構築してDBライブラリ使ってSQL実行してもいい
ActiveRecordが大半なのは間違いない
ORMを求めてるならsequel、rom、hanami等
素のDBライブラリならmysql2, sqlite3-ruby, ruby-pg
ArelでSQLを構築してDBライブラリ使ってSQL実行してもいい
842デフォルトの名無しさん
2018/03/16(金) 15:24:05.43ID:3ma6aQHv sqlite3
843デフォルトの名無しさん
2018/03/16(金) 18:23:28.28ID:2Gd98HT2 >>839
Rails屋がSQLすら書けなさそうに見えて腹立つのは分からんでもないけど、今はDBインターフェースの話しかしてないぞ
Rails屋がSQLすら書けなさそうに見えて腹立つのは分からんでもないけど、今はDBインターフェースの話しかしてないぞ
844デフォルトの名無しさん
2018/03/16(金) 23:22:04.16ID:yiSYhWxU 「Node.js超入門、掌田津耶乃、2017」を読んでいるけど、JavaScript の基本は、Ruby
Ruby のSinatra, JS のNode.js を、full scratch で書くと、ほぼ同じ
Rails, JSのExpress + Bookshelf が、ほぼ同じ
Ruby のSinatra, JS のNode.js を、full scratch で書くと、ほぼ同じ
Rails, JSのExpress + Bookshelf が、ほぼ同じ
845デフォルトの名無しさん
2018/03/16(金) 23:24:51.12ID:3NuYtiCt 掌田津耶乃ってダメな本じゃなかったか?
846844
2018/03/17(土) 00:05:48.37ID:nxO/ldT7 プログラミング本では、掌田が第一人者。
Unity, UE4 などのゲームエンジンから、最近は、Python, Node.js にも進出
売れる・成長する分野には、必ず掌田が参入してくる。
業界の風見鶏
「Node.js超入門、掌田津耶乃、2017」
この本で、Sinatra, Rails を学ぶ方が簡単。
20時間ほどで読める
後は、YouTube の動画で、OK
Unity, UE4 などのゲームエンジンから、最近は、Python, Node.js にも進出
売れる・成長する分野には、必ず掌田が参入してくる。
業界の風見鶏
「Node.js超入門、掌田津耶乃、2017」
この本で、Sinatra, Rails を学ぶ方が簡単。
20時間ほどで読める
後は、YouTube の動画で、OK
847デフォルトの名無しさん
2018/03/17(土) 00:10:02.58ID:6ii9LbbD やっぱ掌田津耶乃ってだめな人だった
調べたらわかったよ
調べたらわかったよ
848デフォルトの名無しさん
2018/03/17(土) 00:34:45.99ID:4Xu/HAYS 今の時代、開発速度が速すぎて誰も良い本なんか書けないよ
それを書き終わる頃には時代遅れになってるんだから
それを書き終わる頃には時代遅れになってるんだから
849デフォルトの名無しさん
2018/03/17(土) 00:38:04.22ID:6ii9LbbD いや掌田がとりわけレベル低いだけ
850デフォルトの名無しさん
2018/03/17(土) 01:55:30.84ID:+wQGtQt+ 掌田津耶乃はだめな本
山田 祥寛は良い本
という評価が一般的
掌田津耶乃は何冊か読んでいるけど、
見比べてみるとたしかにダメダメなんだなぁ。
山田 祥寛は良い本
という評価が一般的
掌田津耶乃は何冊か読んでいるけど、
見比べてみるとたしかにダメダメなんだなぁ。
851デフォルトの名無しさん
2018/03/17(土) 02:08:55.36ID:6ii9LbbD 山田 祥寛もダメだろ
852デフォルトの名無しさん
2018/03/17(土) 05:35:09.75ID:77P/HBnW 掌田津耶乃はHyoerTalkなまりのコード
853デフォルトの名無しさん
2018/03/17(土) 09:18:19.49ID:nxO/ldT7 最近は、Python にも、なでしこの作者・クジラ飛行机、
大津真、掌田も、乗り込んできた
この辺は、売れ筋には参入してくる著者
中でも掌田は、ゲームエンジン・言語・Javaのフレームワーク・Node.js など万能
大津真、掌田も、乗り込んできた
この辺は、売れ筋には参入してくる著者
中でも掌田は、ゲームエンジン・言語・Javaのフレームワーク・Node.js など万能
854デフォルトの名無しさん
2018/03/17(土) 12:59:20.73ID:OC0Ef+g3 またあらぶっとるんか糞荒らし
はやくRubyコミュで発言しろよ屑
はやくRubyコミュで発言しろよ屑
855デフォルトの名無しさん
2018/03/17(土) 14:32:15.41ID:+wQGtQt+ 要はね
掌田の出版本を見てみるとわかるが、
初心者を食い物にしている
初心者専用の作者なわけよ、
だからレビューとかで
表面だけかじって書いたかのような本とか
書かれちゃうわけよ。
深く知りもしないであれだけの数の本を書けるわけないよね。
だから掌田はおすすめできないんだわ。
初心者にはいいかもしれないよ?
初心者向けの本ばかり何冊も何年も書き続けているから。
掌田の出版本を見てみるとわかるが、
初心者を食い物にしている
初心者専用の作者なわけよ、
だからレビューとかで
表面だけかじって書いたかのような本とか
書かれちゃうわけよ。
深く知りもしないであれだけの数の本を書けるわけないよね。
だから掌田はおすすめできないんだわ。
初心者にはいいかもしれないよ?
初心者向けの本ばかり何冊も何年も書き続けているから。
856デフォルトの名無しさん
2018/03/17(土) 15:47:30.97ID:uAf5LbgY 商売としては全然アリだね
とっかかりが欲しい初心者いるだろうし
とっかかりが欲しい初心者いるだろうし
857デフォルトの名無しさん
2018/03/17(土) 16:43:12.02ID:cWw1OMJa >>855
ほんそれ
ほんそれ
858844
2018/03/17(土) 19:43:45.96ID:nxO/ldT7 デザインもカラフルで、図解してあるから、すごくわかりやすい。
売れるから、こういう外注予算が大きい
オライリーでは、図解・デザインは無いから、読むのに時間が掛かる。
図解は視覚だから、瞬時に理解できるけど、
言葉の説明だと、それを図に置き換えて、考えないといけないから大変
掌田の本は、ものすごく短時間で理解できるから、効率的。
すごく消化・吸収に良いし、
時間も節約できるから、時給換算すれば大得
漏れには、時間が掛かる・細かい・理解できない、100の知識はいらない。
短時間で、よくわかる、50の基礎知識がさえ有ればよい。
あとは動画を見て、応用するから
「Node.js超入門、掌田津耶乃、2017」
この本で、Sinatra, Rails が分かる
「10日でおぼえる jQuery 入門教室 第2版、山田祥寛(よしひろ)、2013」
この本で、Nokogiri が分かるのと同じ
本が出ていない場合とか、難しい本しかない場合に、非常に役に立つし、速い
売れるから、こういう外注予算が大きい
オライリーでは、図解・デザインは無いから、読むのに時間が掛かる。
図解は視覚だから、瞬時に理解できるけど、
言葉の説明だと、それを図に置き換えて、考えないといけないから大変
掌田の本は、ものすごく短時間で理解できるから、効率的。
すごく消化・吸収に良いし、
時間も節約できるから、時給換算すれば大得
漏れには、時間が掛かる・細かい・理解できない、100の知識はいらない。
短時間で、よくわかる、50の基礎知識がさえ有ればよい。
あとは動画を見て、応用するから
「Node.js超入門、掌田津耶乃、2017」
この本で、Sinatra, Rails が分かる
「10日でおぼえる jQuery 入門教室 第2版、山田祥寛(よしひろ)、2013」
この本で、Nokogiri が分かるのと同じ
本が出ていない場合とか、難しい本しかない場合に、非常に役に立つし、速い
859デフォルトの名無しさん
2018/03/18(日) 09:45:02.22ID:JzaiKxSG860デフォルトの名無しさん
2018/03/18(日) 12:36:10.41ID:Gg1K6bSi >>859
頭使ってる?
掌田津耶乃が何冊初心者用の本を出しているか知っている?
ちょっと考えれば、
英語、ドイツ語、フランス語の言語学習の本を書いたとしたら
その言語のことをどこまで知っていて本を書いているんだろうとか気にならないの?
もし気にならないんだったら、表面的な知識だけで満足しているお前とは合わないのでバイバイ ノシ
Amazon.co.jp: 掌田 津耶乃:作品一覧、著者略歴
https://www.amazon.co.jp/%E6%8E%8C%E7%94%B0-%E6%B4%A5%E8%80%B6%E4%B9%83/e/B004L5AED8/ref=sr_tc_2_0?qid=1521344021&sr=8-2-ent
掌田津耶乃(しょうだつやの)。ほぼ男性。テクニカルライター兼3流プログラマ。
自分でも3流プログラマと認めているのに、まったく信者って奴は・・・
頭使ってる?
掌田津耶乃が何冊初心者用の本を出しているか知っている?
ちょっと考えれば、
英語、ドイツ語、フランス語の言語学習の本を書いたとしたら
その言語のことをどこまで知っていて本を書いているんだろうとか気にならないの?
もし気にならないんだったら、表面的な知識だけで満足しているお前とは合わないのでバイバイ ノシ
Amazon.co.jp: 掌田 津耶乃:作品一覧、著者略歴
https://www.amazon.co.jp/%E6%8E%8C%E7%94%B0-%E6%B4%A5%E8%80%B6%E4%B9%83/e/B004L5AED8/ref=sr_tc_2_0?qid=1521344021&sr=8-2-ent
掌田津耶乃(しょうだつやの)。ほぼ男性。テクニカルライター兼3流プログラマ。
自分でも3流プログラマと認めているのに、まったく信者って奴は・・・
861デフォルトの名無しさん
2018/03/18(日) 12:52:44.19ID:QAeUSVF3862デフォルトの名無しさん
2018/03/18(日) 12:55:57.40ID:QAeUSVF3 基本的に流行ってるものを、ざっと調べてまとめただけなんだろうな
だから初心者レベルのところまでしか書けない
概要を知るところまでで、あれを参考にしてコードを書いてはいけない
だから初心者レベルのところまでしか書けない
概要を知るところまでで、あれを参考にしてコードを書いてはいけない
863デフォルトの名無しさん
2018/03/18(日) 16:36:38.11ID:Aq9RvNC1 HypaerCardの本も出してたから もう30年以上初心者向けの本出してるベテラン
864デフォルトの名無しさん
2018/03/18(日) 19:04:35.10ID:Pu83I0V3 Amazonのレビューでよく思うけど、海外の人は褒めるのが上手。いい面を見てる
日本人は100点じゃなきゃ糞みたいな心の狭い人が多い
初心者向けの本なんかにケチつけなくてもいいだろうに
今は公式サイトのドキュメントが充実してる時代なんだから、ほぼ公式くらいのことしか書かんだろうよ
日本人は100点じゃなきゃ糞みたいな心の狭い人が多い
初心者向けの本なんかにケチつけなくてもいいだろうに
今は公式サイトのドキュメントが充実してる時代なんだから、ほぼ公式くらいのことしか書かんだろうよ
865デフォルトの名無しさん
2018/03/18(日) 19:43:48.34ID:Gg1K6bSi そうだな、ネイティブと喋れない、英検準2級、TOEIC500点ぐらいの人が教えているって感じ。
そんなイメージが掌田津耶乃さん。
そんなイメージが掌田津耶乃さん。
866デフォルトの名無しさん
2018/03/18(日) 20:16:15.41ID:i3culXas867デフォルトの名無しさん
2018/03/18(日) 21:55:23.04ID:JzaiKxSG >>860
いや長文必死にならなくても、お前さんが自分で解説するだけの知力すら無いってのは分かったから。
いや長文必死にならなくても、お前さんが自分で解説するだけの知力すら無いってのは分かったから。
868デフォルトの名無しさん
2018/03/18(日) 21:59:08.72ID:QAeUSVF3 なんで作者本人が自分で三流ですって言ってるのに、
他人が三流であると解説する必要があるんだ?
他人が三流であると解説する必要があるんだ?
869デフォルトの名無しさん
2018/03/18(日) 23:16:11.58ID:Gg1K6bSi >>867
自己紹介乙
自己紹介乙
870デフォルトの名無しさん
2018/03/18(日) 23:24:43.53ID:JFJ3EKTR Java, Ruby のフレームワークを書ける人は、少ない。
山田祥寛(よしひろ)、掌田津耶乃、宮本信二、黒田努など
山田は会社向けの、1日4万円の講座などを開いている
一方、掌田は初心者向け。
Unity, UE4 などのゲームエンジン、
Python などの売れ筋言語、
Spring などのJavaのフレームワーク、
Node.js + Express などのJavaScript のフレームワークなど、万能
山田は会社員、掌田は初心者と、ターゲットが異なる。
もし、同じターゲットなら、両雄並び立たずで、共倒れするから
山田祥寛(よしひろ)、掌田津耶乃、宮本信二、黒田努など
山田は会社向けの、1日4万円の講座などを開いている
一方、掌田は初心者向け。
Unity, UE4 などのゲームエンジン、
Python などの売れ筋言語、
Spring などのJavaのフレームワーク、
Node.js + Express などのJavaScript のフレームワークなど、万能
山田は会社員、掌田は初心者と、ターゲットが異なる。
もし、同じターゲットなら、両雄並び立たずで、共倒れするから
871デフォルトの名無しさん
2018/03/18(日) 23:54:42.62ID:3ZuC3w8U 自演注意
自演注意
自演注意
自演注意
自演注意
872デフォルトの名無しさん
2018/03/19(月) 04:32:11.24ID:csFbH6Mx File.open('test.txt', 'r+') do |io|
text = io.read
io.rewind
io.write 'あ'
p io.pos #=> 3
io.truncate io.pos
end
読み書き両用ファイルの、ファイルサイズを減らして、上書きできた
io.rewind で、ファイルポインタを先頭に巻き戻す。
io.truncate io.pos で、現在のファイルポインタの位置で、ファイルを切り詰める
text = io.read
io.rewind
io.write 'あ'
p io.pos #=> 3
io.truncate io.pos
end
読み書き両用ファイルの、ファイルサイズを減らして、上書きできた
io.rewind で、ファイルポインタを先頭に巻き戻す。
io.truncate io.pos で、現在のファイルポインタの位置で、ファイルを切り詰める
873デフォルトの名無しさん
2018/03/20(火) 23:14:51.84ID:QfE06Qcj >>869
反論すら出来ない奴は、つまらんね。
反論すら出来ない奴は、つまらんね。
874デフォルトの名無しさん
2018/03/21(水) 00:56:42.17ID:p8DsWgGG 変なこと聞くけどさ、rspecでさ、まあ適当にサンプル書くけど
describe "hoge do
before do
・・・
end
context do
let(:a) { 1 }
・・・
it 'hage' do
expect(a).to be 1
end
end
end
コレに限った話じゃなくて、rspecの使い方で内側のブロック(例えばitの中)から
外側のブロック(例えばcontextの中)の状態(例えば変数)を
書き換えるのを禁止にしても何の問題もないよね?もちろん参照するのはOK。
テストはどう有るべきかを考えたら、むしろそうした方が良いぐらいじゃないかって思うんだけどどうかな?
describe "hoge do
before do
・・・
end
context do
let(:a) { 1 }
・・・
it 'hage' do
expect(a).to be 1
end
end
end
コレに限った話じゃなくて、rspecの使い方で内側のブロック(例えばitの中)から
外側のブロック(例えばcontextの中)の状態(例えば変数)を
書き換えるのを禁止にしても何の問題もないよね?もちろん参照するのはOK。
テストはどう有るべきかを考えたら、むしろそうした方が良いぐらいじゃないかって思うんだけどどうかな?
875デフォルトの名無しさん
2018/03/21(水) 01:22:34.72ID:qUqb4QSc ネストしたcontextで
内側のcontextが外側のcontextで設定した状態を
書き換えるような形でテストを書いても別にいいと思うけどな
内側のcontextが外側のcontextで設定した状態を
書き換えるような形でテストを書いても別にいいと思うけどな
876デフォルトの名無しさん
2018/03/21(水) 01:57:04.18ID:p8DsWgGG >>875
でもそうするとテストケース一つとか実行した時におかしくならない?
でもそうするとテストケース一つとか実行した時におかしくならない?
877デフォルトの名無しさん
2018/03/21(水) 04:11:05.87ID:rJLoGwxo >>873
自己紹介乙
自己紹介乙
878デフォルトの名無しさん
2018/03/21(水) 07:02:14.53ID:wxFTzoek 外部への依存が少なければ、個々のテストの独立性が高いから、
バグが減るし、テストを並行実行できる
それが理想だけど、実現するのは難しそう
バグが減るし、テストを並行実行できる
それが理想だけど、実現するのは難しそう
879デフォルトの名無しさん
2018/03/21(水) 16:09:18.41ID:qUqb4QSc■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★4 [BFU★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 中国の局長は「両手をポケット」で対峙 宣伝戦で国民に示す [蚤の市★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 佳子さまがコロナ感染 [おっさん友の会★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【悲報】靖国参拝を批判する中国に内政干渉するなと騒ぐネトウヨが中国の内紛に干渉する理由、誰にもわからない🥺 [616817505]
- 【実況】博衣こよりのえちえち歌枠🧪★2
- 【悲報】ネトウヨ「なんで高市が謝るんだよ!岡田が謝れ!😡」 [359965264]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【雑談】暇人集会所part18
- エッヂ逝った?
