Ruby 初心者スレッド Part 62

レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん2017/11/24(金) 00:35:29.31ID:rLZHdQ3Q
プログラミング言語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/

952デフォルトの名無しさん2018/04/16(月) 09:53:08.11ID:PnJWHI/9
AzureならGitはVSTS使うのが普通だろ
AWSならCodeCommit使えば完全無料だ
今時たかがGitのホスティングごときにサーバー運用の手間かけるとか頭悪すぎ

953デフォルトの名無しさん2018/04/16(月) 10:08:13.69ID:pZQ1SPWZ
じゃあ、これも
Google Cloud Platform でホストされている複数のプライベート Git レポジトリ
https://cloud.google.com/source-repositories/?hl=ja

5ユーザー、50GBストレージ、50GB通信量(下り)まで無料だから
個人用途なら無料で使えそうだね

954デフォルトの名無しさん2018/04/16(月) 10:10:23.68ID:pZQ1SPWZ
> AWSならCodeCommit使えば完全無料だ

AWSの方は完全無料なのか?って思ったら
やっぱり無料制限あるじゃんw
だいたい一緒みたいね

https://aws.amazon.com/jp/codecommit/pricing/
最初の 5 人のアクティブユーザー
50 GB のストレージ/月
10,000 回の Git リクエスト/月

955デフォルトの名無しさん2018/04/16(月) 10:31:35.04ID:X9HGFo0K
>>954
実働20日として一人あたり一日平均100コミット?
これ超過できる超人いるのかよ

956デフォルトの名無しさん2018/04/16(月) 10:33:36.56ID:X9HGFo0K
いやコミットじゃなくてプッシュやフェッチか
人間の手動操作なら事実上無制限だな

957デフォルトの名無しさん2018/04/16(月) 10:40:27.16ID:pZQ1SPWZ
>>956
1 push 1リクエストとは限らんぞ、どういう計算しているか知らんけど、
例えば1 pushに含まれる1ファイルが1リクエストになってるかもしれない
そう考えるとGoogleの方がわかりやすいかもね。

958デフォルトの名無しさん2018/04/16(月) 10:45:48.83ID:pVewTO76
>>957
ファイル単位なら1万くらいcloneや最初のpushで一発で超過するじゃん
一般的な使い方で超過することはめったにないって書いてるからさすがにそれはないだろ

959デフォルトの名無しさん2018/04/16(月) 15:08:56.12ID:lu0LQeBN
>>960
踏んだらすれたてよろしく

960デフォルトの名無しさん2018/04/16(月) 15:17:41.22ID:r1/f7Sud
うんこ

961デフォルトの名無しさん2018/04/16(月) 15:20:39.48ID:pZQ1SPWZ
↑うんこ踏んだ奴

962デフォルトの名無しさん2018/04/16(月) 16:18:05.44ID:ZFIHRn8x
うんこってrubyのこと?

963デフォルトの名無しさん2018/04/16(月) 17:10:36.81ID:tsXOlUfW
>>952
gitだけしか使わないわけないだろ

964デフォルトの名無しさん2018/04/16(月) 17:25:19.50ID:pZQ1SPWZ
>>963
今はgitの話では?
他のことしたいなら、他のもの使えばいいだけだし
gitは○○を使うって話をしてるんだよ

965デフォルトの名無しさん2018/04/16(月) 18:47:04.65ID:PnJWHI/9
>>964
たぶん963は、サーバーをGitだけでなく他の用途にも使うと言ってるんだと思うよ
すごく筋の悪い思考だと思うけどね

966デフォルトの名無しさん2018/04/17(火) 03:27:09.27ID:QMWYQNUe
スジはなめるためにある

967デフォルトの名無しさん2018/04/17(火) 17:49:09.11ID:GYuBFjQi
次スレ
Ruby 初心者スレッド Part 63
https://mevius.5ch.net/test/read.cgi/tech/1523954817/

968デフォルトの名無しさん2018/04/17(火) 23:55:53.10ID:AHLVIZ+p
>>965
なんで筋が悪いと思うんだ?

969デフォルトの名無しさん2018/04/18(水) 00:43:52.27ID:lRwbg5zI
>>967
おつ

970デフォルトの名無しさん2018/04/18(水) 01:12:53.91ID:6DBcsPYG
>>968
逆に聞くが、あえてGit自前運用かつサーバー相乗りという選択肢を選ぶ積極的な理由が何か一つでもあるの?
コストが高い、信頼性が低い、運用が面倒臭い、便利なWebインターフェイスもない、CIなど外部との連携もしづらい
また、サーバーに複数のサービスを同居させるのは、運用が面倒になるので一般的には避ける方向で検討するのが基本だ
オンプレならハードのコストやハード運用も勘定に入れた結果そうせざるを得ない場合も多いが、
クラウドなら安く小さいサーバーを沢山持ててハード運用の手間もないから問題にならない

971デフォルトの名無しさん2018/04/18(水) 01:21:24.00ID:UfQjex1N
関数の取扱いが非常に筋の悪い言語があるらしい。
何かしらのメソッドとして表したいという、初期設計時のオナニーがこの事態を招いた。
block、proc、lambdaと笑っちゃうくらいぐっちゃぐちゃ。
どういうときにどの形式使えばいいのか、変換するルールは…
はい、お約束。全部覚えましょうw
一事が万事この調子だよなw
そのうち「3+5を計算する機能」レベルで組み込まれてしかも数通りバリエーションが仕込まれそうw
宣伝文句は「えーっ、3+5計算するのにそんなこと書かなきゃいけないの?wそれrubyなら組み込みの呼び出すだけで一発だよ?ww」

972デフォルトの名無しさん2018/04/18(水) 02:03:46.12ID:1MQV5vND
>>970
git使うだけで面倒とかどれだけ初心者想定してんだよ
うちはredmineと連携させてるからwebからも見れるよ
バックアップも他と一緒にとってるから楽よ
別にホストがクラウドでないなんて言ってないし

973デフォルトの名無しさん2018/04/18(水) 02:08:25.73ID:1MQV5vND
サーバーが、か

974デフォルトの名無しさん2018/04/27(金) 16:47:32.90ID:vghG7n/V

975デフォルトの名無しさん2018/05/03(木) 09:37:28.31ID:vrPjbtA8
なんかbundlerがエラー吐くようになってしまって困っています。
対応策は知りませんか?

Traceback (most recent call last):
2: from /usr/local/bin/bundler:23:in `<main>'
1: from /usr/local/lib/site_ruby/2.5.0/rubygems.rb:308:in `activate_bin_path'
/usr/local/lib/site_ruby/2.5.0/rubygems.rb:289:in `find_spec_for_exe': can't find gem bundler (>= 0.a) with executable bundler (Gem::GemNotFoundException)

976デフォルトの名無しさん2018/05/03(木) 12:26:03.69ID:vrPjbtA8
bundler -v
も動かないです。

977デフォルトの名無しさん2018/05/03(木) 14:39:04.35ID:M52LYEAa
コンバトラーV

978デフォルトの名無しさん2018/05/03(木) 15:03:53.22ID:bkPu29QU
super electromagnetic yoyo

979デフォルトの名無しさん2018/05/03(木) 19:04:14.74ID:9RHeN1ko
sudo gem install bundler

980デフォルトの名無しさん2018/05/04(金) 16:02:47.13ID:FNtgJ1dj
>>912
Ruby、Pythonが主流なのか?

俺、Ruby使いだけど、主流言語使ってる気分にはなれない。

981デフォルトの名無しさん2018/05/04(金) 16:16:59.88ID:YzOLlJfQ
今主流言語と言えるのはJavaScriptのみだからね

982デフォルトの名無しさん2018/05/04(金) 16:24:40.64ID:plo/RuVs
google、ms・・・流れ込んでる資金量・人員数が違う
あれだけ人・金かけられたらどんなクソ言語でも主流になる
そうさせたのはブラウザで唯一実行可能というアドバンテージだったがそういう意味では今後はrustやgoにも可能性はある
rubyはそれもない

983デフォルトの名無しさん2018/05/04(金) 17:01:30.15ID:HDydWALv
>>982
Dartの悪口はそこまでだ

984デフォルトの名無しさん2018/05/08(火) 04:34:33.88ID:ws+EcsEk
@lru_cache(maxsize=None)
def fib(n):
if n < 2:
return n
return fib(n-1) + fib(n-2)

>>> [fib(n) for n in range(16)]
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610]

Ruby には、上のPython のような、デコレーターは無いの?

上はフィボナッチだが、引数・答えを、メモ化するような関数はある?

985デフォルトの名無しさん2018/05/08(火) 07:23:01.16ID:6Z/Mi3tg
>>984
古い記事だけど、例もフィボナッチでちょうどよさげ
http://mickey24.hatenablog.com/entry/20100906/1283769623

986デフォルトの名無しさん2018/05/08(火) 07:44:23.18ID:6Z/Mi3tg

987デフォルトの名無しさん2018/05/08(火) 09:01:44.06ID:ws+EcsEk
class A
def initialize (a = 5)
@a = a
end
p (0..@a)
end

p a = A.new

>p (0..@a)
@a が初期化されていないのか、エラーになる

クラス内の地の文は、A.new・initializeよりも、先に実行されてしまうのか?

>>985-986
ありがとう

988デフォルトの名無しさん2018/05/08(火) 09:09:56.84ID:XzXTdruW
>>987
その通り。具体的にはファイルを読み込んだ時に実行されるよ

989デフォルトの名無しさん2018/05/08(火) 12:18:20.40ID:XzXTdruW
スレたてられなかったから誰か代わりに建ててくれないか

>>987
ついでだけどその書き方だと p (0..@a) の @a は A のインスタンスのインスタンス変数じゃなくて、 A という『Class クラスのインスタンス』のインスタンス変数だから注意ね

990デフォルトの名無しさん2018/05/08(火) 14:05:39.62ID:XzXTdruW
と思ったら結構前に次スレ立ってたんだね……重複しなくてよかった
https://mevius.5ch.net/test/read.cgi/tech/1523954817/

991デフォルトの名無しさん2018/05/08(火) 22:51:57.39ID:FvmTtIIh
>>987
クラス内の文は、記述順に実行される。
defは、メソッド定義の宣言部というよりは、実行文なので、同様。

9929872018/05/08(火) 23:24:38.69ID:ws+EcsEk
class A
def initialize (a = 5)
@a = a
puts "init : #{@a.class}" # 1
end

puts @a.class # 2
end

p a = A.new
p b = A.new(2)

出力結果
NilClass

init : Integer
#<A:0x00000000050dc230 @a=5>

init : Integer
#<A:0x00000000050dc078 @a=2>

実行前のファイル読み込み時に、1回だけ、#2 puts が呼ばれて、
initialize内の#1 puts は、new 毎に呼ばれる

993デフォルトの名無しさん2018/05/08(火) 23:28:50.06ID:XzXTdruW
当たり前だと思うのだが、何が言いたいのか不明

994デフォルトの名無しさん2018/05/09(水) 00:19:25.75ID:p+TFQEkm
ファイル内の空行数を数える

ruby -e "puts File.read(\'test22_data.txt\').scan(/^$/).length"
ruby -e 'puts File.read(\"test22_data.txt\").scan(/^$/).length'

Windows PowerShell で、1-liner を実行する際、
クォーテーション内に、クォーテーションがある時に、\ でエスケープしないと、
PowerShell が、内側のクォーテーションを除去してしまって、エラーになるけど、
皆こういう場合、どうしてる?

995デフォルトの名無しさん2018/05/09(水) 00:37:53.06ID:aySw10Ot
WindowsでRubyは苦行

996デフォルトの名無しさん2018/05/09(水) 02:06:31.30ID:VltSHCvQ
>>994
%qクォートを使う。

997デフォルトの名無しさん2018/05/09(水) 08:36:03.80ID:DadRmw9B
>>995
+1

998デフォルトの名無しさん2018/05/09(水) 08:36:55.27ID:DadRmw9B
>>996
ほんそれ

999デフォルトの名無しさん2018/05/09(水) 08:37:56.36ID:DadRmw9B
>>994
1-liner にこだわるのはなぜ

1000デフォルトの名無しさん2018/05/09(水) 08:38:27.55ID:DadRmw9B
Ruby 初心者スレッド Part 63
https://mevius.5ch.net/test/read.cgi/tech/1523954817/

10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 166日 8時間 2分 58秒

10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php

レス数が1000を超えています。これ以上書き込みはできません。