X



Ruby 初心者スレッド Part 67

0001デフォルトの名無しさん (ワッチョイ b72c-yePO)
垢版 |
2020/12/25(金) 04:24:27.68ID:aa9Khe9z0
プログラミング言語 Rubyについての、初心者向けスレです。質問・要望・雑談などをどうぞ

質問するときは、OSやRubyのバージョン、エラーメッセージを書いて下さい。
Ruby on Rails については、WEBプログラミング板で

前スレ
Ruby 初心者スレッド Part 66
https://mevius.5ch.net/test/read.cgi/tech/1578068134/

るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/

Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/

逆引きRuby
http://www.namaraii.com/rubytips/

Ruby コミュニティ公式
https://www.ruby-lang.org/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
0636デフォルトの名無しさん (ワッチョイ eb01-oEU1)
垢版 |
2023/03/07(火) 20:15:30.84ID:uRhwCRx20
>>635
 じゃあMacとかが良いんですかね?
0637614 (アウアウウー Sa1d-3zFX)
垢版 |
2023/03/07(火) 20:27:30.71ID:wbYp+Qgwa
>C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:50:in `match?'
: invalid byte sequence in UTF-8 (ArgumentError)

ウェブ系では全言語で、Windows の日本語・CP932(shift-jis), UTF-16 がダメ。
それで、MSYS2 でバグる

日本語のユーザー名やファイルパス、
C:\Program Files などのファイルパス中の半角空白もヤバイ

\ もダメだから、例えばPython では、
C:\Users\Owner\Desktop を、C:\\Users\\Owner\\Desktop みたいに書いている。
Rubyでは、C:/Users/Owner/Desktop と書ける

でも、全言語の入門書ではLinux ではなく、MSYS2を使う。
理由は、初心者がLinuxの勉強するのを避けるため

そこで、日本語でバグらないように一計を案じたのが、
irb ではなく、VSCode の拡張機能・Code Runner を使う方法

本当はRails のローカル開発なら、
WSL2, Linux, Docker Desktop, Windows Terminal を使う。
YouTube のDeanin の動画を参照

これは、ハイパーバイザーでLinuxも起動するから、
メモリ8GB ぐらいのパソコンでもキツイ
0638デフォルトの名無しさん (ワッチョイ fb66-oEU1)
垢版 |
2023/03/07(火) 20:50:01.17ID:PDMeVJPD0
シェア大きいデスクトップOSから小さいOSに行っても仕方がない。
個人のスクリプトなんて殆どはデスクトップのちょっとした自動化やツール作成に過ぎんしWebでもRubyは落ちていくだけなんだから。

プログラミング言語やそのライブラリが不出来なのが原因で
自分のOS乗り換えるとか馬鹿げすぎてる。
殆どの人にとって本末転倒。
0639デフォルトの名無しさん (ワッチョイ eb01-oEU1)
垢版 |
2023/03/07(火) 21:18:43.59ID:uRhwCRx20
 皆さん本当にありがとうございます!なんかよく分からないけど解決しましたわ!

 変えたのは新しいユーザー名でローカルアカウントを管理者で追加しただけっす。
まさかこれだけが原因だとは思ってもいなかった、名前変えただけで解決するとは。
数日のモヤモヤが消し飛んだ!よく眠れそう!!
これでどういうアプリケーション作ろうか考えながら日々を過ごせるデュフフ!
助かった!!!


https://i.imgur.com/25fYItg.jpg
https://i.imgur.com/25fYItg.jpg
https://i.imgur.com/ZVPsf80.jpg
https://i.imgur.com/NSLXfa5.jpg
https://i.imgur.com/NSLXfa5.jpg
https://i.imgur.com/vFAVrIm.jpg
https://i.imgur.com/dUBF91L.jpg
https://i.imgur.com/v9JauTv.jpg
https://i.imgur.com/njAI57g.jpg
https://i.imgur.com/S8niawG.jpg
https://i.imgur.com/HTI4JOd.jpg
https://i.imgur.com/F8jb7aG.jpg
https://i.imgur.com/AvYeRqK.jpg
https://i.imgur.com/hGnnL9x.jpg
https://i.imgur.com/Y9oaUXx.jpg
https://i.imgur.com/cnabhzl.jpg
0642614 (アウアウウー Sa1d-3zFX)
垢版 |
2023/03/07(火) 22:44:38.18ID:uM/T9lOBa
黒田努の3冊が分かりやすい

改訂4版 基礎 Ruby on Rails、黒田努・佐藤和人、2018/9
Ruby 2.5.1, Rails 5.2 の本

Ruby on Rails 6 実践ガイド、黒田努、2019/12
Ruby on Rails 6 実践ガイド[機能拡張編]、黒田努、2020/5

基礎 Ruby on Rails を読んだら、
確か、Rails チュートリアルのRails 5 なら無料で見れる

昔は皆、Cloud 9, Heroku で作っていたけど、
Herokuの無料枠が無くなったのか?

YouTube で有名な雑食系エンジニア・KENTA の初心者向けRailsサロンなら、月千円。
他には、Rails専業のRUNTEQ、東京フリーランスのデイトラなど

MSYS2 では、またデータベースでバグったりする。
基本的に、CP932 で動くようなモジュールは無い。
CP932の事を知っている外人は、どこにもいない!
0645デフォルトの名無しさん (ワッチョイ 6984-iJGe)
垢版 |
2023/03/08(水) 03:21:16.01ID:nSIfG2D90
とにかく、WindowsでWSL以外のUnix系環境は、一切入れないぐらい決め込んで、Windowsと付き合うぐらいのほうがいい
WSL以外に、CygwinとかMSYSとか入れるべきでない
(もちろん、分かっているならば、共存できるが、無駄以外の何ものでもない)

>>641
それを言うなら、Pythonもひどい
0648デフォルトの名無しさん (ワッチョイ a110-epgM)
垢版 |
2023/03/21(火) 08:40:41.77ID:HajkMPAQ0
Windows版ではじめたんですがirbのヘルプ機能やriで反応がなくなって困ってます
確実に再現できる手順はこんな感じ

1. irb を起動して Stri まで打ってタブ補完
2. ドキュメントの先頭が表示されたら Alt+d で全体表示
3. ヘルプのページャーを抜ける(lessを使ってるのでqを入力)
4. 画面がページャーから戻るがキーへの反応なし

ヘルプを活用したいのですが付き合い方を教えてください
0649デフォルトの名無しさん (ワッチョイ c95f-ab+x)
垢版 |
2023/03/21(火) 18:26:48.47ID:C2q9ydgP0
#include <ruby.h>したプログラムでfcloseを呼び出したらrb_w32_fcloseという関数が呼び出されてその中でエラーになる現象に出くわした
rb_w32_fcloseでぐぐったらずばりruby.hから#includeされているwin32/win32.h中で「#define fclose(f) rb_w32_fclose(f)」されているのが原因と解説しているサイトがあった

しかしこの解説は14年前の記事だよ!?ruby 3.2.1でもこの#defineが残っていて同じ問題が起きるよ!?
標準ライブラリ関数であるfcloseを#defineするなどという行儀の悪いことをしたばかりか3.2.1でもまだ直っていないとはどういうことであろう
0651デフォルトの名無しさん (ワッチョイ a110-epgM)
垢版 |
2023/03/21(火) 21:33:33.03ID:HajkMPAQ0
ありがとう。
rubyinstaller-3.2.1-1-x64.7z を C:\Ruby32-x64 に展開して
C:\Ruby32-x64\bin にパスを通しました。
ruby 3.2.1 (2023-02-08 revision 31819e82c8) [x64-mingw-ucrt] を
Windows11 上の Windows ターミナル バージョン: 1.16.10262.0 で使ってます。

確実に再現するわけではないようで、ページャーから戻って反応したら
バックスペースで Stri に戻してタブ補完、Alt+d を何度か繰り返すと発現します。
0652デフォルトの名無しさん (ササクッテロラ Sp9d-2rW7)
垢版 |
2023/03/21(火) 21:56:12.11ID:j1wCLUw7p
スクールでRubyやってるんだが仕事でc#やれることになって辛すぎる
0654デフォルトの名無しさん (ワッチョイ a110-epgM)
垢版 |
2023/03/21(火) 22:39:27.58ID:HajkMPAQ0
発現したりしなかったりってのが気になったので
思い付きでaffinityを指定して使うコアを1個だけ指定したら発現しなくなりました。
めんどくさいんでもうこれで解決ってことで
0655デフォルトの名無しさん (ワッチョイ c95f-ab+x)
垢版 |
2023/03/21(火) 23:09:01.49ID:C2q9ydgP0
vcpkgとは別にrubyinstaller-3.2.1-1-x64.7zを解凍したやつあるからちょっと試してみた
Windows10だしWindowsターミナル入ってないからpowershellでやってみたけど再現しないな
0656614 (アウアウウー Sa95-jnF6)
垢版 |
2023/03/21(火) 23:50:54.71ID:0fmXlD4Ba
>>637
に書いたように、MSYS2/MinGW, irb はダメ!
データベースや日本語でバグル

書き忘れたけど、WSL2, Linux では、
日本人が作った多言語バージョンマネージャーのanyenv がお勧め。
同様のツールに、asdf もある

対応言語
Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv
0657デフォルトの名無しさん (ワッチョイ d2bd-+msU)
垢版 |
2023/03/26(日) 05:01:39.43ID:OlOn0nrS0
言語開発って続いてるの?
教科書でもPython でしょ
国が採択しない言語開発してどうするの?
負けを認めろよ
0658デフォルトの名無しさん (ワッチョイ aebb-vk7m)
垢版 |
2023/03/26(日) 15:33:29.61ID:kD3idY+R0
Rubyはほんと、教材商法・スクール商法で見るだけのものになっちまった
0662デフォルトの名無しさん (ワッチョイ 4910-uhGV)
垢版 |
2023/03/28(火) 23:20:14.76ID:TltQQt7h0
irbでAlt+dのフルヘルプ表示の後で固まる件だけど
第12世代のCore i7そのまま(論理CPU20個)だとそこそこ起こる
Start-Process 'ruby' '-S irb' -NoNewWindow -Wait -PassThru | % { $_.ProcessorAffinity = 1 }
とかして論理CPU1個に指定すると起きない
古い第3世代のCore i7そのまま(論理CPU8個)だと起きない
微妙な競合が起きてる雰囲気だけどRubyを信じて使っていいのか不安になってきた
0663デフォルトの名無しさん (ワッチョイ a9b1-VgrF)
垢版 |
2023/04/12(水) 23:29:31.69ID:CI3e3lhQ0
この前久しぶりに覗いてみたんだけどRubyがミニツクって死んだの?
0665614 (アウアウウー Sa05-cPl8)
垢版 |
2023/04/13(木) 13:37:33.70ID:locxrLlCa
PowerShell のStart-Process の事?

>>637
に書いたように、MSYS2/MinGW, irb はダメ!
データベースや日本語でバグル
0668デフォルトの名無しさん (アウアウウー Sac3-ixN4)
垢版 |
2023/05/07(日) 20:19:34.43ID:QZNbJigga
最大値が複数ある場合に、該当する全てのインデックスを取り出すには、どうする?
漏れのやり方は、

ary = [ 5, 4, 5 ]
p max = ary.max #=> 5

p result = ary.each_with_index.select { |num, idx| num == max }.
map { |ary| ary[ 1 ] }

#=> [0, 2]
0671デフォルトの名無しさん (ブーイモ MM7f-kzDK)
垢版 |
2023/05/28(日) 05:56:00.24ID:Ie6k1/AyM
最近は出来るだけRubyは使わない方向としてる。理由は依存関係が複雑過ぎるからトラブル時に解決が困難なこと。texliveみたいなのあってもいいんじゃない?
マイナーなので症状でググっても、最近はヒットしないケースが殆んど。

既存でやむを得ないもの以外、外せるものは少しづつ外しているのが実情。
0672デフォルトの名無しさん (アウアウウー Sa8f-AKtI)
垢版 |
2023/05/30(火) 05:23:38.77ID:hG6L19Sqa
そもそも、libruby.so.3.1 で、Ruby 3.2 が動くの?
バージョンが違うのに

漏れは、Windows 10, WSL2, Ubuntu 18.04 で、
日本人が作った、多言語バージョンマネージャーのanyenv で、
ruby, node.js を入れているけど、同様のツールに、asdf もある。
anyenvでは、nodenv, pyenv, rbenv などを使う

他には、Docker を使う

君は、どのバージョンマネージャーを使っている?

そもそも、fedora は素人向きじゃない。
テスト環境用。まともに動かないだろ

Ubuntuの安定版、20.04/22.04 を使いな。
あまり新しいのにすると、各モジュールが動かないかも
0674デフォルトの名無しさん (ワッチョイ cf05-IPSQ)
垢版 |
2023/08/01(火) 17:59:14.06ID:gmCvkwam0
独学の初心者です
どのクラスでも使う汎用的なメソッドを作りたいんですが
こういう時ってクラス外で定義して関数にするのか
それともモジュールにするのとどちらが良いのでしょうか?
というかモジュールの使い処がいまいち理解できていません
0676デフォルトの名無しさん (アウアウウー Sa1f-IPSQ)
垢版 |
2023/08/02(水) 09:23:39.40ID:4pI1Wfnva
mix-in
0677デフォルトの名無しさん (ワッチョイ cf05-IPSQ)
垢版 |
2023/08/03(木) 00:48:30.43ID:xJtx41VE0
ありがとうございます
どちらも試しましたが取りあえずmix-inの方でやっていく事にしました
0678デフォルトの名無しさん (ワッチョイ e348-7tt+)
垢版 |
2023/09/02(土) 00:26:36.73ID:z/gB7JNN0
rubyで、あるファイルのファイル名を取得したいとき、
そのファイル名がUTF-8-MACの場合どうすればいいですか?
0680デフォルトの名無しさん (アウアウウー Sae7-fXI3)
垢版 |
2023/09/02(土) 14:46:55.42ID:mCX3wjBNa
どうもしなくて良いのでは
0681デフォルトの名無しさん (アウアウウー Sae7-w3JM)
垢版 |
2023/09/03(日) 01:52:14.83ID:wudKI+s6a
「ruby UTF-8-MAC」で検索!

Macのファイル名に使われる、NFDなUTF-8(通称UTF-8-MAC)を、通常のUTF-8に変換する。
UTF8-MAC、アップルによって修正された、
Normalization Form D(NFD・分解済み)という形式のUTF-8です。
濁音や半濁音が2文字扱いになる

String#encode を使って

filename_utf_8 = filename_utf_8_mac.encode(Encoding::UTF_8, Encoding::UTF8_MAC)
0683デフォルトの名無しさん (ワッチョイ dee6-dtHc)
垢版 |
2023/09/23(土) 00:31:38.96ID:aQUNS12d0
rubyでOCRAを使って感動していましたが、
最近はOCRAでもエラーばかりです。

exe化の良い方法を教えてください。(教えて君ではなくおじいさんになってしまった。)
0685デフォルトの名無しさん (ワッチョイ 6de6-lHjV)
垢版 |
2023/10/09(月) 08:07:49.09ID:2tIVtmSa0
Rubyって面白そうなのに
日経ソフトウェアで一度も特集されませんね。
0686デフォルトの名無しさん (ワッチョイ 6de6-lHjV)
垢版 |
2023/10/09(月) 08:09:27.02ID:2tIVtmSa0
今からRubyを勉強するぞ・・・
止めるなら今のうちだ。

それとも負けずに教えてください。
目標は欲しいツールを自分で作れるようになることです。
0687デフォルトの名無しさん (ワッチョイ 6de6-lHjV)
垢版 |
2023/10/09(月) 08:11:52.40ID:2tIVtmSa0
たのしいRubyと独習Rubyを購入

5chのこれ、アクセスできなかった。
>>Rubyist Magazine - るびま
>>http://jp.rubyist.net/magazine/
正しくは、これかな、「https://magazine.rubyist.net/
0688デフォルトの名無しさん (ワッチョイ 0a7a-lHjV)
垢版 |
2023/10/09(月) 10:53:42.22ID:5XBl3KCR0
>>686
ええやん!
応援するよ
0689デフォルトの名無しさん (ワッチョイ 0a7a-lHjV)
垢版 |
2023/10/09(月) 11:15:26.24ID:5XBl3KCR0
しかしこのスレではあまり話もできないわ
なんせエロCMで気が散ってしまうものw
0690デフォルトの名無しさん (ワッチョイ 6de6-lHjV)
垢版 |
2023/10/09(月) 12:12:55.62ID:2tIVtmSa0
>>688
ありがとう。

とりあえず、ひたすらコードを入力してみます。
よいサイトや書籍があったら教えてください。
0691デフォルトの名無しさん (ワッチョイ 5ada-STj1)
垢版 |
2023/10/10(火) 05:48:38.93ID:1udEdqxq0
日経ソフトウェアは、ホビーっぽい

Ruby, Java はバックエンド技術者だから、プロや転職情報。
Linux, AWS を使う。
Ruby on Rails は、モダンなスタートアップ企業でフルリモート

一方、Javaは、SIer で客先、インターネット禁止。
中抜き・多重請負構造の土方。
家電量販店のバイトまでさせられる、イメージ

たのしいRuby・独習Rubyの次は、マネーフォワードの逆引きを読めばよい。
改訂2版 パーフェクトRubyもある

それ以降は、Railsになる。
筑波大学も使っている、Railsチュートリアル日本語版の古いRails 5 なら、無料で読める

これをスラスラ読むために、有名YouTuber が習得技術ロードマップを作っている。
雑食系エンジニア・KENTA とか、Rails専門学校・RUNTEQ の菊本とか。
Deanin はRailsの第一人者

最初はファイル・文字列処理と、
プログラミングのお題みたいな、ちょっとしたパズルを解くのが良い

Enumerable のメソッドは、よく見ておいた方が良い。
パズルに使えるから
0692デフォルトの名無しさん (ワッチョイ 5ada-STj1)
垢版 |
2023/10/10(火) 05:49:02.13ID:1udEdqxq0
日経ソフトウェアは、ホビーっぽい

Ruby, Java はバックエンド技術者だから、プロや転職情報。
Linux, AWS を使う。
Ruby on Rails は、モダンなスタートアップ企業でフルリモート

一方、Javaは、SIer で客先、インターネット禁止。
中抜き・多重請負構造の土方。
家電量販店のバイトまでさせられる、イメージ

たのしいRuby・独習Rubyの次は、マネーフォワードの逆引きを読めばよい。
改訂2版 パーフェクトRubyもある

それ以降は、Railsになる。
筑波大学も使っている、Railsチュートリアル日本語版の古いRails 5 なら、無料で読める

これをスラスラ読むために、有名YouTuber が習得技術ロードマップを作っている。
雑食系エンジニア・KENTA とか、Rails専門学校・RUNTEQ の菊本とか。
Deanin はRailsの第一人者

最初はファイル・文字列処理と、
プログラミングのお題みたいな、ちょっとしたパズルを解くのが良い

Enumerable のメソッドは、よく見ておいた方が良い。
パズルに使えるから
0693691 (ワッチョイ 5ada-STj1)
垢版 |
2023/10/10(火) 05:55:23.51ID:1udEdqxq0
05:48:38.93
05:49:02.13

1クリックで2回も書き込んで、23秒もずれるなんて、
サーバー時間が狂いすぎ。めちゃめちゃ
0694デフォルトの名無しさん (ワッチョイ b671-lHjV)
垢版 |
2023/10/10(火) 07:23:24.95ID:BDsbHemP0
>>690
ワイはRubyでスレ読みすることにしたわ
0695691 (ワッチョイ 09fd-STj1)
垢版 |
2023/10/10(火) 13:14:18.71ID:tBEWn+zw0
データを取得してから、

ERB で、<% 〜 %>, <%= 〜 %> を使って、
または、Nokogiri を使って、HTML を作るとか、

Selenium Webdriver で、ブラウザを自動操作するなども出来る
0697デフォルトの名無しさん (ワッチョイ 87da-zwhO)
垢版 |
2024/01/23(火) 06:17:44.25ID:bl4lyV110
まっつん意外と趣味いいな
特にCAにはかなりこだわりがあるようだ

女性セレクト指示書

・松本の要望
ユニクロ
マクドナルド
スタバ店員
中学高校教師
弁護士
広報女性
人妻(子供なし)
CA(ANA、JAL)

・松本のNG
茶髪
モデル
飲み屋
美容師
アパレル
CA(LCC)
0698デフォルトの名無しさん (ワッチョイ ff13-MO48)
垢版 |
2024/02/04(日) 01:31:48.29ID:yc8BToGx0
The Odin Project
https://www.theodinproject.com

High quality coding education maintained by an open source community.

ウェブ開発者用で、無料のRuby on Rails, React コースなどもあるけど、これらはどうでしょう?
0699デフォルトの名無しさん (ワッチョイ 65cb-0PBQ)
垢版 |
2024/03/31(日) 10:31:26.61ID:WiLTOmZx0
Rubyって海外でもオワコンの雰囲気なのか
https://opers-kaigaihanno.com/post-323/

結局、Railsしかヒットしなかった言語って感じ
0702デフォルトの名無しさん (ワッチョイ 656c-0PBQ)
垢版 |
2024/04/03(水) 15:58:20.98ID:eNgZCM350
RubyはWeb開発だとしばらくは使われると思うけど、そのうち消えていくんだろうなあ。
Pythonの文法はあまり好きではないけど、一度主流になるとなかなかなくならない。
レスを投稿する


ニューススポーツなんでも実況