[過去ログ] Ruby 初心者スレッド Part 66 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
463: (ブーイモ MMd6-yKpr) 2020/05/11(月)14:28 ID:GNIZ9TPPM(1) AAS
いつもの妄想虚言癖くんは相変わらずRubyもRails知らないの丸出しだな

平日昼間からID変えて連投しまくってアンチRuby&アンチMatz活動ご苦労様
464: (ワッチョイ 3ebb-8oPF) 2020/05/11(月)16:25 ID:oqh5wUWv0(1) AAS
超有名な「Classi」学校教育のICT活用を支援するクラウドサービスもrails製

なんと120万人近くのユーザを捌いているらしい。

これだけの規模のサービスを作れるrailsは最強。まさに覇権。
465: (ワッチョイ 7333-sgQa) 2020/05/11(月)16:39 ID:RveftTfZ0(1/2) AAS
「ユーザー数」の詳細がわからんとなんとも。
のべ/ユニーク、アクセス頻度、集中度、負荷、など。
466: (JP 0He6-lvFW) 2020/05/11(月)16:52 ID:E4DJZwTiH(2/2) AAS
外部リンク[html]:www.itmedia.co.jp
> 「課題が出せない」「試験が受けられない」――学校向けSaaS「Classi」がつながりにくい状態に 生徒から不満の声相次ぐ

Railsが悪いというつもりはないけど、まあよくある話だよね
多く見せるために全生徒をユーザー数として謳っていたけど、コロナショック以前は実際にはほとんど使われてなかったんだろう
467: (オッペケ Sr33-I8iA) 2020/05/11(月)20:53 ID:ctqY8lB1r(1) AAS
俺は一通り文法学んだら数独ソルバーとかbrainf**kのインタープリタ作ってたな
468: (ワッチョイ be2c-Qfm0) 2020/05/11(月)21:52 ID:M5DpbX0A0(1/2) AAS
Go, Ruby など、サーバー側は、CLI のちょっとしたフィルター・パイプなどを作るとか。
でも、しょーもない

「プログラミングのお題スレ」の簡単そうな問題を解くとか

Selenium Webdriver, Nokogiri で、簡単なものをスクレイピングするとか。
漏れはこれで、yahoo などのログインを自動化してる

SASS, Bootstrap, jQuery なども初心者向け。
Linux コマンドも、10個ぐらいは学んだ方がよい
469: (ワッチョイ be2c-Qfm0) 2020/05/11(月)22:02 ID:M5DpbX0A0(2/2) AAS
Farstep【プログラミング講座】
外部リンク:www.youtube.com

この人が、ここ1週間で4本、Rails 動画を上げてる。
Bootstrap を使ってる
470
(1): (ワッチョイ d342-aTVK) 2020/05/11(月)23:01 ID:9KnLD9b60(2/2) AAS
教えて頂きありがとうございます。
調べながら作ってみます。
ずっと先にはなりますが将来的には個人でゲームを開発してみたいです。
それから仕事としてゲーム開発に携わったりあらゆる分野で活躍できるようなプログラマーになりたいです。
471: (ワッチョイ 7333-sgQa) 2020/05/11(月)23:52 ID:RveftTfZ0(2/2) AAS
>>470
なら、RubyよりもC#!
472: (アウアウエー Sae2-jgrQ) 2020/05/12(火)10:13 ID:4WwqN1hQa(1) AAS
Unity + C# 超おすすめ
Ruby 忘れて良い
473: (JP 0He6-lvFW) 2020/05/12(火)17:40 ID:v0jwNoPnH(1) AAS
まあRubyでも怪盗ロワイヤル系のクソソシャゲなら作れるぞ
まあそんなの作れたところで今時仕事ないし、アーキテクチャ的には単なる普通のWebアプリなので
ゲーム作りのスキルはほとんど身につかなくて時間の無駄だろうけど
474: (ワッチョイ 9f5f-A9by) 2020/05/12(火)19:19 ID:PEyfu59N0(1) AAS
RPGツクールXP/VXならばRubyなんだよなぁ
475: (ワッチョイ bbad-I8iA) 2020/05/12(火)21:41 ID:1JM+jinB0(1/2) AAS
ツクールMVでJavaScriptに変えちゃったのが残念
モバイル出力対応の都合で仕様がないんだろうけど
476
(1): (ワッチョイ d342-aTVK) 2020/05/12(火)22:07 ID:Bhe4de5t0(1/2) AAS
C#がゲーム開発に適しているんですね。
ゲーム開発、セキュリティ関係、リモートワーク、システムエンジニアに興味があります。
477
(1): (ワッチョイ d342-aTVK) 2020/05/12(火)22:12 ID:Bhe4de5t0(2/2) AAS
趣味レベルでもいいので将棋プログラムやチェスプログラムも作ってみたいです。
478: (オッペケ Sr33-I8iA) 2020/05/12(火)22:18 ID:Yyd7NZU2r(1) AAS
いいんじゃない。自分の作ったAIと他人の作ったやつを対戦させてみればよい
479: (ワッチョイ bbad-I8iA) 2020/05/12(火)22:35 ID:1JM+jinB0(2/2) AAS
>>476
いきなり難しいのは作れないから簡単なのから作るといいよ
たとえば将棋やチェスの前にリバーシやトランプとか
もっといえば最初はCUIのマルバツから始める位でいい
480
(1): (ワッチョイ 1714-YoKk) 2020/05/12(火)23:29 ID:6bKcudlj0(1) AAS
CUIのマルバツというと
先手・2、2、○
後手・1、1、×
先手・1、2、○
9秒、8、7、

とかそんな感じか?
481: (ブーイモ MM97-O+HC) 2020/05/12(火)23:58 ID:qFAkep2ZM(1) AAS
>>477
作れば良かです。
482
(1): (ワッチョイ 2dad-Wcp/) 2020/05/13(水)01:08 ID:fGvC/Rms0(1/3) AAS
>>480
○・・
・・・
・・×

↑みたいにCUIでも
盤面表示できるでしょ?
たった三行だし
483: (アウアウウー Sa1d-Y9FA) 2020/05/13(水)06:42 ID:1S/vEImaa(1) AAS
お前のやる言語はRubyじゃないって散々言われてんのに聞く耳持ってないなコイツ。
484
(1): (ワッチョイ cd14-ds4R) 2020/05/13(水)08:20 ID:UxgyOyJl0(1) AAS
>>482
ポケモンだってCUIでできるしな!
動画リンク[YouTube]
485: (ワッチョイ 2352-ri7+) 2020/05/13(水)08:28 ID:sTsOjaTK0(1) AAS
>>484
なんかすごいなw
これだけ作り込んでいるのに、パッと見てすぐ目立つ Your Heath の綴りが間違ったままなのが謎だが。
486: (ワッチョイ 2dad-Wcp/) 2020/05/13(水)15:04 ID:fGvC/Rms0(2/3) AAS
いやまあ本格的にゲーム作るなら
UnityとC#だろうけど

Rubyスレなんだし
とりあえずCUIの簡単なゲームから
練習するのも悪くないと思うよ
487: (ワッチョイ 3133-6wub) 2020/05/13(水)15:26 ID:v9SqqT/+0(1) AAS
なにをどうやりたいのかによるな。
型なしスクリプト言語はよしあしだから。

いわゆるゲームがしたいのなら、Rubyはほどほどに。
488: (アウアウエー Sa93-yXYh) 2020/05/13(水)15:41 ID:oWyvBIrOa(1) AAS
curses on ruby
489: (ワッチョイ 7f2c-JcAG) 2020/05/13(水)18:13 ID:VSt/R8YQ0(1) AAS
Ruby は、小説ゲームなどのシナリオを、ゲームデータに変換するツールには使えるかも

Lua, Squirrel などを使うことも多いけど
490: (ワッチョイ 2dad-Wcp/) 2020/05/13(水)19:10 ID:fGvC/Rms0(3/3) AAS
RPGツクール(XP/VX)もあるし
一応ゲームライブラリもあるから
2DゲームならRubyも手軽で良いと思う
3DゲーならUnityほぼ一択だろうけど
491: (オッペケ Sr75-Wcp/) 2020/05/13(水)19:27 ID:VG+eVs4Ur(1) AAS
2Dゲーム用の未だに開発が続いているRubyのライブラリってあんの?
492: (ワッチョイ 6de6-imz8) 2020/05/13(水)22:19 ID:PF9y92K50(1) AAS
初心者です。
gem で sqlite3を入れようとしてもtkを入れようとしてもエラーになります。

署名は信頼されていません。って誰でしょう。

みなさん、どうしているの?
493: (ワッチョイ 9588-Y9FA) 2020/05/14(木)01:10 ID:xwBNTZK50(1) AAS
こういうのってコンソールのエラー画像貼った方が分かりやすい
494
(1): (ワッチョイ 6de6-imz8) 2020/05/14(木)06:31 ID:/X2nuCW20(1) AAS
492です。
msysにgccを入れたらできました。
495: (ワッチョイ 3133-6wub) 2020/05/14(木)10:13 ID:CBkLiWJv0(1) AAS
>>494
ズコー。
署名なんか関係なかったやろ。w
496
(1): (ワッチョイ 7f2c-JcAG) 2020/05/14(木)13:41 ID:FSEZeoAj0(1) AAS
漏れは、Windows 10, WSL, Ubuntu 18.04 で、
Linux側には、日本人が作った、バージョンマネージャーのanyenv で、rbenv, nodenv を使って、
ruby 2.6.6, node 12.16.2 を入れた

yarn は、Windows側に入れて、WSL から、拡張子なしのyarn コマンドを呼べる。
これは、#!/bin/sh で始まるシェルスクリプト

まず、パッケージ情報を最新にしてから、各パッケージをインストールする

sudo apt-get update
省8
497: (ワッチョイ 1f42-uRPb) 2020/05/17(日)06:00 ID:ziL5Ecak0(1/4) AAS
CLIツールを作成するために、Bundlerをインストールしたいのですが
コマンドプロンプトに$ gem install bundler
と入力しEnterを押しても閉じるだけで何も状況が変わっていない気がします。
既存のCLIツール作成の記述画面を調べてみても
学んだputs,if,繰り返し処理のような文法は一切なく謎の文字列にしか見えず
用語の場合は調べれば対応できるかもしれませんが、用語ではなく何を示しているのかさえわかりません。
助けてください。
498: (オッペケ Sr63-Wcp/) 2020/05/17(日)06:12 ID:C7MdgMNcr(1/5) AAS
謎の文字列ってなんだよ
499: (ワッチョイ 1f42-uRPb) 2020/05/17(日)07:17 ID:ziL5Ecak0(2/4) AAS
上からの一部になりますがこのような感じです
# bundlerをインストール
$ gem install bundler

# gemパッケージの雛形を作成
$ bundle gem str_convert_utils -b
Creating gem 'str_convert_utils'...
create str_convert_utils/Gemfile
省2
500: (オッペケ Sr63-Wcp/) 2020/05/17(日)07:26 ID:C7MdgMNcr(2/5) AAS
で何がしたいんだよ
501: (ワッチョイ 1f42-EoUu) 2020/05/17(日)07:34 ID:ziL5Ecak0(3/4) AAS
bundlerをインストールしてCLIツールを作成したいと思っているのですがbundlerのインストールのやり方がわかりません
502: (オッペケ Sr63-Wcp/) 2020/05/17(日)07:35 ID:C7MdgMNcr(3/5) AAS
もうインストールできるだろ
503: (オッペケ Sr63-Wcp/) 2020/05/17(日)07:36 ID:C7MdgMNcr(4/5) AAS
*もうインストールできてるでしょ
504: (ワッチョイ 1f42-EoUu) 2020/05/17(日)08:04 ID:ziL5Ecak0(4/4) AAS
rubyのインストールはコマンドプロンプトで行ったので同じようにインストールするものかと思いましたが
無事にbundlerをインストールすることが出来ているようなのでよかったです
ありがとうございます
505
(1): (オッペケ Sr63-Wcp/) 2020/05/17(日)09:35 ID:C7MdgMNcr(5/5) AAS
質問する時は以下の点に留意すると回答が得られやすいぞ
・OS, Rubyなどのバージョンを書く
・何がしたいのか明確に書く
・どうなったのか明確に書く
506: (アウアウエー Sa93-gIXh) 2020/05/17(日)13:48 ID:2FMa8UuXa(1) AAS
>>505
さらに
特にエラーメッセージがあるときはそれを貼る
507: (ワッチョイ 7f2c-JcAG) 2020/05/17(日)16:36 ID:VCTpJO2T0(1) AAS
基本、bundler だけは、gem install bundler で、グローバルに最新版をインストールする。
それ以外は、プロジェクトフォルダに、Gemfile を作って、
bundle install で、ローカル(プロジェクト毎)にインストールする

漏れの場合は、グローバルのbundler のバージョンを、1.17.2 から、2.1.4 へ更新した

bundler のバージョンを確認する
bundler -v
Bundler version 1.17.2
省12
508: (ブーイモ MM5b-IA10) 2020/05/17(日)16:56 ID:FIuh62egM(1) AAS
何か開発するのに、向いてなさすぎるな。
509
(2): (アウアウウー Sa2d-xlHZ) 2020/05/19(火)00:48 ID:X2Lrxylwa(1/2) AAS
1.0.step(3, 0.2) {|n| puts n}
の実行結果が以下の通りになった。

1.0
1.2
1.4
1.6
1.8
省7
510: (ワッチョイ 4b7d-fZtU) 2020/05/19(火)01:00 ID:9Ms3yTt70(1) AAS
>>509
10.step(30,2){|n| puts n.fdiv(10)}
511
(1): (ワッチョイ 3133-6wub) 2020/05/19(火)02:28 ID:8rsHPaV60(1) AAS
>>509
「浮動小数点数 誤差」で検索!
512: (アウアウウー Sa2d-xlHZ) 2020/05/19(火)03:20 ID:X2Lrxylwa(2/2) AAS
>>511
あ、これrailsのもんだあじゃないんだね!
513: (オッペケ Sr63-Wcp/) 2020/05/19(火)07:21 ID:7tJzJz77r(1) AAS
誤差が嫌ならRational使え

1.step(3, 0.2r)
514: (ワッチョイ 4e2c-g3Kq) 2020/05/20(水)00:36 ID:91fxSgSA0(1) AAS
浮動小数点は誤差があるので、お金の計算などでは使えない

例えば、0.5 は、2 ** -1 (乗)で、2進数で割り切れる。
0.25 も、2 ** -2 で、2進数で割り切れる。
よって、0.5 + 0.25 = 0.75 も、2進数で割り切れる

つまり、2進数で割り切れる数値の、組み合わせで表せる数値は割り切れる

一方、0.1 は、2進数で割り切れない。循環小数になる。
たぶん、0.2 も割り切れないのでは?
515
(1): (ワッチョイ a314-sMh3) 2020/05/20(水)00:53 ID:InboTxWs0(1/3) AAS
> お金の計算などでは使えない
使えばいいと思うけどなw

10円未満は四捨五入します。ってかけば十分だろうに
たった1円のために無駄な努力するんだぜ?
516: (オッペケ Srbb-vdj3) 2020/05/20(水)01:23 ID:DUBnOkDWr(1/2) AAS
誤差のせいで四捨五入しても一意に定まらねえよ
517
(2): (アウアウエー Sa52-crVl) 2020/05/20(水)01:24 ID:YPJhimCPa(1) AAS
銀行の理屈だと桁数が大きいので下の方のの桁が軽視できないんだと
ただ計算の仕方はものすごくいい加減
複利といっても商品によって桁の丸め方が違うらしい
歴史を重んじるらしい
文系らしい
518
(1): (アウアウウー Sac7-YFMs) 2020/05/20(水)01:31 ID:6CLBLdpca(1) AAS
Rubyは文系や中卒高卒が多いんだから文系ディスはやめてやれ
519: (ワッチョイ a314-sMh3) 2020/05/20(水)03:12 ID:InboTxWs0(2/3) AAS
>>517
文系「消費税は3%だ。端数?ちゃんと計算しろ。1円の誤差もゆるさねーぞ。」
520: (ワッチョイ 5b33-sQKC) 2020/05/20(水)04:04 ID:TeIKSVMR0(1) AAS
>>515
「四捨五入」とか言ってまうヤツは、金の処理に口を出すな。
521: (オッペケ Srbb-vdj3) 2020/05/20(水)04:18 ID:DUBnOkDWr(2/2) AAS
うちの環境だと

p ([0.003] * 500).reduce(:+) # => 1.4999999999999827

Array#sumだと最適化されるけどね
そもそも不確かさの精度を気にする環境でfloat使うのが間違い
522: (アウアウエー Sa52-pTKR) 2020/05/20(水)10:24 ID:Dfazl3Afa(1/2) AAS
二進数の浮動小数点数は十進数の(1/10)を表せなくて誤差の蓄積が出るって言うけど
これは二進数固有の問題ではない
十進数の浮動小数点数も十進数の(1/3)を表せなくて誤差の蓄積が出る

金の計算では条件次第だが
四捨五入することが許されてる場合は毎回四捨五入して良い
許されていなければ浮動小数点数じゃなくて分数を使え
523
(1): (アウアウエー Sa52-pTKR) 2020/05/20(水)10:26 ID:Dfazl3Afa(2/2) AAS
>>517
桁落ちは問題だが
切り捨ては銀行や政府が儲かるように
切り上げも銀行や政府が儲かるように
都合良く設定されているね
524: (ワッチョイ a314-sMh3) 2020/05/20(水)10:32 ID:InboTxWs0(3/3) AAS
>>523
店は?儲かるの?損をするの?
525: (ワッチョイ 3761-xVew) 2020/05/22(金)15:30 ID:TUWJypw20(1/2) AAS
>>518
それはどの言語であれ、普及率が高ければ高いほどそうなる。
526: (ワッチョイ 3761-xVew) 2020/05/22(金)15:33 ID:TUWJypw20(2/2) AAS
Pythonはアメリカでは教育に取り入れられている ---> 誰でもやっている
---> 上から下まで幅広くいる。
VB利用者が減ったのは、C# に移ったから ---> C#はVBプログラマでも使える証拠
でもあり、かつてのVBと同じレベルくらいの人がC#ラーにはいるということ。
527
(1): (ワッチョイ 7a98-r9h8) 2020/05/22(金)16:23 ID:PgzAS/Wx0(1) AAS
配列が大きくなるとHashのほうが速くなることを発見した
xは2万件くらいのデータ
a=[]
a.push(x)を繰り返すより
b=Hash.new
b[x]=0を繰り返して
として最後に a=b.keys
省1
528
(1): (ワッチョイ 5b33-sQKC) 2020/05/22(金)21:01 ID:AU9F7jR+0(1) AAS
Rubyのリストは、reserve()的なことはできないんだっけ?
できないならかわりに、a[20000]=nil とかしてから、a[i](i=0〜19999)に代入していったらいいんでは?

こっちのほうがはやそう。
529
(2): (ワッチョイ f361-hf1i) 2020/05/23(土)11:45 ID:HsM7eDYs0(1) AAS
Array.new(size)
530
(1): (ワッチョイ 5a01-S/TN) 2020/05/23(土)12:30 ID:KnmbZWpz0(1/3) AAS
>>527
さすがにそれはないわ
それとも[1,1,1,1,1]を重複除去して[1]にしたい場合ってことなのかな

>>529
先にallocateしたほうが必ずしも速いわけではないので最適化したければ要計測
531: (ワッチョイ 275f-8Kp1) 2020/05/23(土)13:15 ID:x0bVPHOi0(1/3) AAS
StringにはcapacityあるけどArrayのrubyインタフェースには見つからんな
C言語側ではrb_array_new2がそれっぽいが
まぁ、どうしてもそれっぽいことやりたいならArray#[]=でも拡張できるのでnew時にサイズ指定ですね。

あとはpushよりも<<の方が速かったり、
そもそも要素数が先に知る事ができるのならばArray.newにブロック渡したり
flat_map使ったり…
532: (テテンテンテン MMb6-8pht) 2020/05/23(土)14:30 ID:rR3WkHU8M(1) AAS
Rubyはユーザーコードの実行がとんでもなくゴミクソのように遅いから、
アルゴリズムの効率とか実はあまり関係なくて単にユーザーコードの命令数を削減することが重要だったりするね
533
(1): (ワッチョイ 5b33-sQKC) 2020/05/23(土)16:20 ID:eo29HWEv0(1/2) AAS
>>530
> 先にallocateしたほうが必ずしも速いわけではない
具体例を教えろ。
534
(2): (ワッチョイ 5a01-S/TN) 2020/05/23(土)19:00 ID:KnmbZWpz0(2/3) AAS
>>533
これ何度か繰り返して比較してみて
外部リンク:ideone.com

GC.disable/enable/startとかも組み合わせて試してみるといいと思う
535
(1): (ワッチョイ 275f-8Kp1) 2020/05/23(土)20:20 ID:x0bVPHOi0(2/3) AAS
>>534
# gem install benchmark_driver
require 'benchmark_driver'

Benchmark.driver do |x|
x.prelude %{ input = (1..2_000_000).to_a.shuffle
RUBY
x.report 'push without size', %{o = []; input.each{|x| o.push x }}
省4
536: (ワッチョイ 275f-8Kp1) 2020/05/23(土)20:21 ID:x0bVPHOi0(3/3) AAS
prelude書き換えてる最中に送信してしまった
x.prelude %{ input = (1..2_000_000).to_a.shuffle }


Comparison:
block with size: 12.0 i/s
[]= with size (each): 9.7 i/s - 1.23x slower
push without size: 8.9 i/s - 1.35x slower
省1
537
(1): (ワッチョイ 5a01-S/TN) 2020/05/23(土)21:52 ID:KnmbZWpz0(3/3) AAS
>>535
そのwith sizeとwithout sizeはpushの差では?

require 'benchmark_driver'

Benchmark.driver do |x|
x.prelude %{ input = (1..2_000_000).to_a.shuffle }
x.report 'Array.new(0)', %{o = Array.new(0); input.each{|x| o.push(x+1)}}
x.report 'Array.new(input.size)', %{o = Array.new(input.size); input.each{|x| o.push(x+1)}}
省7
538: (ワッチョイ 5b33-sQKC) 2020/05/23(土)23:06 ID:eo29HWEv0(2/2) AAS
>>534
なんで >>529 + push ?
>>528 のほうがストレートで速そうやろが。
539
(1): (ワッチョイ 275f-8Kp1) 2020/05/24(日)00:35 ID:qyWs4RXc0(1) AAS
>>537
Array.new(3).push(1) #=> [nil,nil,nil,1]
540: (ワッチョイ 5a01-S/TN) 2020/05/24(日)01:01 ID:uX1h9ngP0(1) AAS
>>539
あらら、そうだね
これで比べればいいのかな?

Benchmark.driver do |x|
x.prelude %{ input = (1..2_000_000).to_a.shuffle }
x.report 'Array.new(0) + while + indexer', %{o = Array.new(0); i=0; while(i<input.size); o[i] = input[i]+1; i=i+1; end}
x.report 'Array.new(size) + while + indexer', %{o = Array.new(input.size); i=0; while(i<input.size); o[i] = input[i]+1; i=i+1; end}
省3
541: (ブーイモ MM26-jNIj) 2020/05/24(日)20:16 ID:sglBbUqvM(1) AAS
文字列でコードを渡さなきゃいけない仕様って超微妙だな
542: (ワッチョイ 4e2c-5qFb) 2020/05/25(月)16:59 ID:gis+qwRr0(1/2) AAS
2020年6月30日
Ruby on Rails 製の、mstdn.jp・mastodon.cloud がサービス終了

女子プロレスラーの自殺により、
今後、イジメに対応するコストの上昇で、運営できなくなるとか
543: (ワッチョイ 4e2c-5qFb) 2020/05/25(月)21:19 ID:gis+qwRr0(2/2) AAS
【検証】現役プログラマーは30万円の案件を何時間で出来るのか?
動画リンク[YouTube]

Ruby で、1時間!
1-
あと 459 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.021s