今どき2行目が必要な環境ってある?
コードは全部ASCIIだし脳死で書いてない?
>Fiber,schedule は、Fiber を新規作成して即時実行のはず
これを信用するとしてputsもI/Oだからとか(しらんけど)
配列pushなんかに変えてみて最後に出力してみては
探検
Ruby 初心者スレッド Part 67
599デフォルトの名無しさん (ワッチョイ 7110-9O0i)
2023/01/12(木) 17:42:17.84ID:k/txfnyN0600デフォルトの名無しさん (ワッチョイ 8610-wtyD)
2023/01/14(土) 16:20:53.55ID:XG+wNT9X0 irb 1.6.2(ruby 3.2.0付属)について質問です。
文字入力時には自動補完せず、タブキーを押したときに自動補完させるにはどうすればよいでしょうか?
入力時の自動補完だと入力の邪魔になってしまうので任意のタイミングで自動補完させたい、という意図です。
.irbrcに IRB.conf[:USE_AUTOCOMPLETE] = false (あるいは --noautocomplete で起動)
とした場合、タブキーで補完候補が一気に出力されてしまい補完候補の選択ができませんでした。
文字入力時には自動補完せず、タブキーを押したときに自動補完させるにはどうすればよいでしょうか?
入力時の自動補完だと入力の邪魔になってしまうので任意のタイミングで自動補完させたい、という意図です。
.irbrcに IRB.conf[:USE_AUTOCOMPLETE] = false (あるいは --noautocomplete で起動)
とした場合、タブキーで補完候補が一気に出力されてしまい補完候補の選択ができませんでした。
601デフォルトの名無しさん (アウアウウー Sa91-wtyD)
2023/01/14(土) 23:55:35.78ID:v+aDVA7Ga Stack Overflow 2023年の年収。高中低
Ruby, Elixir : 9.3 万ドル
Go : 8.9
Rust : 8.7
Python : 7.1
TypeScript, C# : 7
Kotlin : 6.9
C++ : 6.8
C : 6.7
JavaScript : 6.6
Java : 6.5
HTML/CSS : 6:4
VBA : 6:2
PHP : 5
Dart : 4.4
Ruby, Elixir : 9.3 万ドル
Go : 8.9
Rust : 8.7
Python : 7.1
TypeScript, C# : 7
Kotlin : 6.9
C++ : 6.8
C : 6.7
JavaScript : 6.6
Java : 6.5
HTML/CSS : 6:4
VBA : 6:2
PHP : 5
Dart : 4.4
602デフォルトの名無しさん (アウアウウー Sa91-wtyD)
2023/01/15(日) 03:00:28.41ID:6m68H/Iaa 確かに、puts もI/O だから、表示される順番は確定しないのかも
603デフォルトの名無しさん (アウアウウー Sa91-wtyD)
2023/01/15(日) 03:04:07.46ID:6m68H/Iaa604デフォルトの名無しさん (アウアウウー Sa91-w88e)
2023/01/15(日) 16:50:45.07ID:aMclAZtfa >>599
なるほど、と試した結果
r=[]
r << "Go to sleep!"
Fiber.schedule do
r << "Going to sleep"
sleep(1)
r << "I slept well"
p r
end
r << "Wakey-wakey, sleepyhead"
p r
exit
# ["Go to sleep!", "Wakey-wakey, sleepyhead"]
# ["Go to sleep!", "Wakey-wakey, sleepyhead", "Going to sleep", "I slept well"]
ドキュメントには即時実行とあるけど、メインの最後まで実行してから動き始めているように見えますね
Fiber.schedule do
に与えたブロック同士では想定通りの実行切り替えはされるようですが、ドキュメント通りの動きには何故かなっていない模様……
なるほど、と試した結果
r=[]
r << "Go to sleep!"
Fiber.schedule do
r << "Going to sleep"
sleep(1)
r << "I slept well"
p r
end
r << "Wakey-wakey, sleepyhead"
p r
exit
# ["Go to sleep!", "Wakey-wakey, sleepyhead"]
# ["Go to sleep!", "Wakey-wakey, sleepyhead", "Going to sleep", "I slept well"]
ドキュメントには即時実行とあるけど、メインの最後まで実行してから動き始めているように見えますね
Fiber.schedule do
に与えたブロック同士では想定通りの実行切り替えはされるようですが、ドキュメント通りの動きには何故かなっていない模様……
605デフォルトの名無しさん (アウアウウー Sa91-w88e)
2023/01/15(日) 16:52:49.17ID:aMclAZtfa 一行目がexitの前の出力で、2行目が Fiberのブロックからの出力です
606デフォルトの名無しさん (ワッチョイ 4310-Jpma)
2023/01/22(日) 21:54:06.16ID:mu8Nl5mu0 RubyのBigdecimalの最大桁数っていくつ?
puts (BigDecimal("2",1000) ** ((BigDecimal("2",1000) ** (BigDecimal("1031",1000) - BigDecimal("1",1000))) - BigDecimal("1",1000))) * (BigDecimal("2",1000) - (BigDecimal("2",1000) ** BigDecimal("-3705346855594118253554271520278013051304639509300498049262642688253220148476920",1000)))
が計算できない。
https://ideone.com/jyxgVq
puts (BigDecimal("2",1000) ** ((BigDecimal("2",1000) ** (BigDecimal("1031",1000) - BigDecimal("1",1000))) - BigDecimal("1",1000))) * (BigDecimal("2",1000) - (BigDecimal("2",1000) ** BigDecimal("-3705346855594118253554271520278013051304639509300498049262642688253220148476920",1000)))
が計算できない。
https://ideone.com/jyxgVq
607デフォルトの名無しさん (アウアウウー Sa93-qdck)
2023/02/06(月) 12:23:28.94ID:t0SsOUx4a パソコンのメモリサイズが大きければ、大きくなるのかも。
Bigdecimal の最大桁数の設定は無いの?
Elixir では、130GB メモリで、
1秒間に、5千万の小プロセスを起動できたという記事を見た
Bigdecimal の最大桁数の設定は無いの?
Elixir では、130GB メモリで、
1秒間に、5千万の小プロセスを起動できたという記事を見た
608デフォルトの名無しさん (ワッチョイ 0d5f-FP2p)
2023/02/23(木) 19:35:23.59ID:bE7hCXJI0 公式サイトの日本語ドキュメントって内容ものすごく古いままなんだな
例えばC API一覧にrb_compile_cstrが載っているが2.7.7や3.2.1のヘッダファイルにはこの関数は無い(他にも無い関数が多数ある)
WebArchiveから1.8のソースを入手してみたら存在したわ
少なくともC APIを使おうと思ったら英語版ドキュメントを参照しないとだめだな
例えばC API一覧にrb_compile_cstrが載っているが2.7.7や3.2.1のヘッダファイルにはこの関数は無い(他にも無い関数が多数ある)
WebArchiveから1.8のソースを入手してみたら存在したわ
少なくともC APIを使おうと思ったら英語版ドキュメントを参照しないとだめだな
609デフォルトの名無しさん (ワッチョイ 0d5f-FP2p)
2023/02/23(木) 20:04:10.36ID:bE7hCXJI0 英語ドキュメント読んだらあっさりできましたわ
日本語ドキュメントには「1.xの頃のまま更新していません。最新版は英語版を見てね」と注記しておくべきだと思った
そりゃ「まだまだ書き直しが必要です」と書いてあるけどそんな古いままとか思わんやん
// rubyスクリプトで定義した関数fをCから呼び出す
#include <ruby.h>
int main()
{
ruby_init();
VALUE v = rb_eval_string("def f\np 'Hello'\nend");
rb_funcall(v, rb_intern("f"), 0, 0);
ruby_cleanup(0);
return 0;
}
日本語ドキュメントには「1.xの頃のまま更新していません。最新版は英語版を見てね」と注記しておくべきだと思った
そりゃ「まだまだ書き直しが必要です」と書いてあるけどそんな古いままとか思わんやん
// rubyスクリプトで定義した関数fをCから呼び出す
#include <ruby.h>
int main()
{
ruby_init();
VALUE v = rb_eval_string("def f\np 'Hello'\nend");
rb_funcall(v, rb_intern("f"), 0, 0);
ruby_cleanup(0);
return 0;
}
610デフォルトの名無しさん (ワッチョイ 23a5-veW0)
2023/02/24(金) 13:11:19.67ID:lmfpmsq50 やる気見せんかーい
611デフォルトの名無しさん (ワッチョイ 0d5f-FP2p)
2023/02/24(金) 20:23:01.89ID:esYaZE7H0 ごめんなさい609のコードだとVisual Studioではruby_initでクラッシュするみたい
正しい初期化は下記の模様
linuxだと609のコードでも何故か動いてしまったけど
// rubyスクリプトで定義した関数fをCから呼び出す
#include <ruby.h>
int main(int argc, char *argv[])
{
ruby_sysinit(&argc, &argv);
RUBY_INIT_STACK
ruby_init();
ruby_init_loadpath();
VALUE v = rb_eval_string("def f\np 'Hello'\nend");
rb_funcall(v, rb_intern("f"), 0, 0);
ruby_cleanup(0);
return 0;
}
正しい初期化は下記の模様
linuxだと609のコードでも何故か動いてしまったけど
// rubyスクリプトで定義した関数fをCから呼び出す
#include <ruby.h>
int main(int argc, char *argv[])
{
ruby_sysinit(&argc, &argv);
RUBY_INIT_STACK
ruby_init();
ruby_init_loadpath();
VALUE v = rb_eval_string("def f\np 'Hello'\nend");
rb_funcall(v, rb_intern("f"), 0, 0);
ruby_cleanup(0);
return 0;
}
612デフォルトの名無しさん (ワッチョイ 05da-C2qO)
2023/03/02(木) 01:01:19.02ID:C78KeSuO0 手動でgem installしたものって
> gem list | grep -v default:
debase (0.2.5.beta2)
debase-ruby_core_source (3.2.0)
debug (1.7.1)
matrix (0.4.2)
minitest (5.17.0, 5.16.3)
...
をメモっておけば別PCでも同じ環境を再現できますか?
> gem list | grep -v default:
debase (0.2.5.beta2)
debase-ruby_core_source (3.2.0)
debug (1.7.1)
matrix (0.4.2)
minitest (5.17.0, 5.16.3)
...
をメモっておけば別PCでも同じ環境を再現できますか?
613デフォルトの名無しさん (ワッチョイ 1a70-XXd9)
2023/03/03(金) 01:21:26.43ID:kpW9zhd70 railsチュートリアルやってるけどminitest難しいなあ
実際の現場も使ってるんですか?それともRspec?
どちらも難しいのかね
実際の現場も使ってるんですか?それともRspec?
どちらも難しいのかね
614デフォルトの名無しさん (エアペラ SD25-PLJR)
2023/03/04(土) 19:37:33.36ID:ggY8eI1VD まず、gem のダウンロード時に、ドキュメントをダウンロードしたくなければ、
各ユーザーのホームディレクトリに、.gemrc ファイルを作って、以下の2行を書いておく
install: --no-document
update: --no-document
既にダウンロードしたドキュメントも全て削除する
次に、gemでbundler をダウンロードする。
その後は各プロジェクト毎に、gemではなく、
複数のモジュールの依存関係を解決する、bundlerを使えばよい
Gemfile/Gemfile.lock ファイルは、
JavaScript のpackage.json/package-lock.json/yarn.lock ファイルと同じ
お勧めは、irb を使わず、
VSCode で拡張機能・Code Runner を使う。
これは右クリックメニューから、ファイル全体または選択したコード片を実行できる
さらにRuby on Rails なら、WSL2, Linux, Docker Desktop も使う
多言語バージョンマネージャーは、
日本人が作ったanyenv で、rbenv, nodenv なども使える。
asdf もある
Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv
各ユーザーのホームディレクトリに、.gemrc ファイルを作って、以下の2行を書いておく
install: --no-document
update: --no-document
既にダウンロードしたドキュメントも全て削除する
次に、gemでbundler をダウンロードする。
その後は各プロジェクト毎に、gemではなく、
複数のモジュールの依存関係を解決する、bundlerを使えばよい
Gemfile/Gemfile.lock ファイルは、
JavaScript のpackage.json/package-lock.json/yarn.lock ファイルと同じ
お勧めは、irb を使わず、
VSCode で拡張機能・Code Runner を使う。
これは右クリックメニューから、ファイル全体または選択したコード片を実行できる
さらにRuby on Rails なら、WSL2, Linux, Docker Desktop も使う
多言語バージョンマネージャーは、
日本人が作ったanyenv で、rbenv, nodenv なども使える。
asdf もある
Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv
615デフォルトの名無しさん (アウアウウー Sa1d-IOBr)
2023/03/05(日) 08:30:53.03ID:eEwP+0xWa Code Runnerを気軽に勧める人おるが
アレわりと邪悪な拡張だと思うんだよなぁ
ちゃんと環境作ったほうがいいし
簡易ですませる場合もコンソール使った方がよくない?
アレわりと邪悪な拡張だと思うんだよなぁ
ちゃんと環境作ったほうがいいし
簡易ですませる場合もコンソール使った方がよくない?
616デフォルトの名無しさん (アウアウウー Sa1d-IOBr)
2023/03/05(日) 08:36:16.49ID:TCOo6fxCa 邪悪というと、語弊があるか
…邪道もしくは害悪あたり
アレがファイルではなくコードを実行してるあたりを認識せずにハマってる初学者何人か見た
…邪道もしくは害悪あたり
アレがファイルではなくコードを実行してるあたりを認識せずにハマってる初学者何人か見た
617614 (アウアウウー Sa1d-3zFX)
2023/03/07(火) 01:04:58.17ID:oFQklhQHa 山田祥寛のRuby 3 の本でも、MSYS2 のRuby Installer を使っているけど、
VSCode の拡張機能・Code Runner を使っている
Code Runner では、この設定をチェックしておくと良い。
Code-runner: File Directory As Cwd
Whether to use the directory of the file to be executed as the working directory.
そうすると実行時にcd で、そのファイルがある場所へカレントディレクトリを移動してから、
ruby "絶対パス/ファイル名.rb"
又は、ruby "絶対パス/tempCodeRunnerFile.rb"
で、そのファイルを実行する
tempCodeRunnerFile.rb は、Rubyのコード片をコピーした一時的なファイル
設定項目、executorMap には、多くの言語の実行コマンドが書いてある。
"code-runner.executorMap": {
"javascript": "node",
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"python": "python -u",
"ruby": "ruby",
VSCode の拡張機能・Code Runner を使っている
Code Runner では、この設定をチェックしておくと良い。
Code-runner: File Directory As Cwd
Whether to use the directory of the file to be executed as the working directory.
そうすると実行時にcd で、そのファイルがある場所へカレントディレクトリを移動してから、
ruby "絶対パス/ファイル名.rb"
又は、ruby "絶対パス/tempCodeRunnerFile.rb"
で、そのファイルを実行する
tempCodeRunnerFile.rb は、Rubyのコード片をコピーした一時的なファイル
設定項目、executorMap には、多くの言語の実行コマンドが書いてある。
"code-runner.executorMap": {
"javascript": "node",
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"python": "python -u",
"ruby": "ruby",
618デフォルトの名無しさん (ワッチョイ 6984-iJGe)
2023/03/07(火) 02:03:47.62ID:vk4APYnr0 そもそもWindowsを使うべきでないし、
MSYS2も使うべきでないし、
Code Runnerなんか使うべきでない
MSYS2も使うべきでないし、
Code Runnerなんか使うべきでない
619デフォルトの名無しさん (ワッチョイ 8b40-oEU1)
2023/03/07(火) 08:33:17.73ID:eOMIe0zX0 Progateというプログラミング学習サイトのRuby on Rails5の開発環境を用意しようコースで、rubyのバージョン確認、SQLのインストール、Railsのインストールまではスムーズ行えたんだけど、その次のRailsアプリケーションという所でコマンドプロンプトを使って《rails new ファイル名 -G》のコマンドを入力すると、下の方に下記のようなエラーが複数出てきてその後の《rails server -G》のサーバー起動の時にも同じエラーが出て上手くいかない。
どうすれば良いんですか?エラー内容を見ても分からない。
それぞれのバージョンは
【Ruby】ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c5) [x64-mingw32]
【Rails】Rails 7.0.4.2
【PC】64 ビット オペレーティング システム、x64 ベース プロセッサ
エラーは
C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:50:in `match?': invalid byte sequence in UTF-8 (ArgumentError)
from C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:50:in `chop_basename'
from C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:374:in `plus'
from C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:354:in `+'
from C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:420:in `join'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/settings.rb:444:in `global_config_file'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/settings.rb:93:in `initialize'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler.rb:331:in `new'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler.rb:331:in `settings'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/env.rb:20:in `report'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:72:in `request_issue_report_for'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:50:in `log_error'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:109:in `rescue in with_friendly_errors'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:101:in `with_friendly_errors'
from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/bundler-2.2.33/libexec/bundle:37:in `<main>'
どうすれば良いんですか?エラー内容を見ても分からない。
それぞれのバージョンは
【Ruby】ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c5) [x64-mingw32]
【Rails】Rails 7.0.4.2
【PC】64 ビット オペレーティング システム、x64 ベース プロセッサ
エラーは
C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:50:in `match?': invalid byte sequence in UTF-8 (ArgumentError)
from C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:50:in `chop_basename'
from C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:374:in `plus'
from C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:354:in `+'
from C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:420:in `join'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/settings.rb:444:in `global_config_file'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/settings.rb:93:in `initialize'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler.rb:331:in `new'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler.rb:331:in `settings'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/env.rb:20:in `report'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:72:in `request_issue_report_for'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:50:in `log_error'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:109:in `rescue in with_friendly_errors'
from C:/Ruby30-x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:101:in `with_friendly_errors'
from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/bundler-2.2.33/libexec/bundle:37:in `<main>'
620デフォルトの名無しさん (ワッチョイ 8b40-oEU1)
2023/03/07(火) 10:07:23.72ID:eOMIe0zX0 OSはWindows11 home 22H2です
621デフォルトの名無しさん (ワッチョイ 7b66-NHSw)
2023/03/07(火) 10:44:28.93ID:0yJrO03Z0 VisualStudioCodeでRailsの環境構築が上手くできません
https://ja.stackoverflow.com/questions/92611/visualstudiocode%E3%81%A7rails%E3%81%AE%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89%E3%81%8C%E4%B8%8A%E6%89%8B%E3%81%8F%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%9B%E3%82%93
ここにあるのと同じハマり方してるなら、ユーザー名が日本語になってて
ハマってるパターンかなあ。
自分ならとりあえず指示通りにC:\TempとC:\Homeフォルダを作ってコマンドプロンプトで
set TMP=C:\Temp
set HOME=C:\Home
して試してみるかな。
駄目なら次は新しくアルファベットのみでユーザー作って試す。
途中で再インストールも辞さない構え。
https://ja.stackoverflow.com/questions/92611/visualstudiocode%E3%81%A7rails%E3%81%AE%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89%E3%81%8C%E4%B8%8A%E6%89%8B%E3%81%8F%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%9B%E3%82%93
ここにあるのと同じハマり方してるなら、ユーザー名が日本語になってて
ハマってるパターンかなあ。
自分ならとりあえず指示通りにC:\TempとC:\Homeフォルダを作ってコマンドプロンプトで
set TMP=C:\Temp
set HOME=C:\Home
して試してみるかな。
駄目なら次は新しくアルファベットのみでユーザー作って試す。
途中で再インストールも辞さない構え。
622デフォルトの名無しさん (ワッチョイ 7b66-NHSw)
2023/03/07(火) 10:49:58.83ID:0yJrO03Z0 どうしても解決できないがRailsに触ってみたいなら
Railsチュートリアルに従ってCloud9上でやるか(多分クレカが必要)
WSLの導入を検討するかかなあ。
昔もフォルダ名にスペースが含まれたり日本語が含まれてて
動かんとかよくあったけどいまだにあるんだなあ。
Railsチュートリアルに従ってCloud9上でやるか(多分クレカが必要)
WSLの導入を検討するかかなあ。
昔もフォルダ名にスペースが含まれたり日本語が含まれてて
動かんとかよくあったけどいまだにあるんだなあ。
623デフォルトの名無しさん (ワッチョイ 8b40-oEU1)
2023/03/07(火) 11:38:27.82ID:eOMIe0zX0624デフォルトの名無しさん (ワッチョイ 8b40-oEU1)
2023/03/07(火) 12:50:55.71ID:eOMIe0zX0 >>621
とりあえずユーザー名を変えて試してみたらいいんですかね?
とりあえずユーザー名を変えて試してみたらいいんですかね?
625デフォルトの名無しさん (ワッチョイ 7b66-NHSw)
2023/03/07(火) 14:06:24.57ID:0yJrO03Z0 >>624
多分単純にユーザー名変えるだけだとフォルダ名は変わらないから駄目なんじゃないかな。
新しくアルファベットのみのユーザー作って、そのユーザーでログインしないと。
ただ、それをすると今のユーザーの設定は引き継がれないし
Rails使う時だけそのユーザーにログインしないといけなくなるのでちょっとめんどくさいかも。
多分単純にユーザー名変えるだけだとフォルダ名は変わらないから駄目なんじゃないかな。
新しくアルファベットのみのユーザー作って、そのユーザーでログインしないと。
ただ、それをすると今のユーザーの設定は引き継がれないし
Rails使う時だけそのユーザーにログインしないといけなくなるのでちょっとめんどくさいかも。
626デフォルトの名無しさん (ワッチョイ 6984-iJGe)
2023/03/07(火) 14:10:48.58ID:vk4APYnr0 だから、初心者ほど、あれほどWindowsを使うなと言っているわけで
627デフォルトの名無しさん (ワッチョイ 7b66-NHSw)
2023/03/07(火) 14:22:52.66ID:0yJrO03Z0 RailsチュートリアルでCloud9をわざわざ使ってるのも環境統一できるからだしなあ。
自分がどうしてもWindowsマシン1台でやれって言われたらWSLでUbuntu入れて
そこでやる。
自分がどうしてもWindowsマシン1台でやれって言われたらWSLでUbuntu入れて
そこでやる。
628デフォルトの名無しさん (ワッチョイ 8b40-oEU1)
2023/03/07(火) 14:23:46.47ID:eOMIe0zX0 >>625
ユーザー名を変えた後にrubyをアンインストールして入れ直したりしても無理なんですかね?
ユーザー名を変えた後にrubyをアンインストールして入れ直したりしても無理なんですかね?
629デフォルトの名無しさん (ワッチョイ 5310-AVBr)
2023/03/07(火) 14:40:43.15ID:msqWHE5U0 Windows固有の問題も聞かないと解決できないんだし
WSL2でやるのがまちがいないよ
このあともネイティブ拡張や外部プログラムに依存してるgemで絶対ハマる
WSL2でやるのがまちがいないよ
このあともネイティブ拡張や外部プログラムに依存してるgemで絶対ハマる
630デフォルトの名無しさん (ワッチョイ 8b40-oEU1)
2023/03/07(火) 14:51:13.04ID:eOMIe0zX0631デフォルトの名無しさん (ワッチョイ 7b66-NHSw)
2023/03/07(火) 15:00:44.35ID:0yJrO03Z0632デフォルトの名無しさん (アウアウエー Sae3-4fLd)
2023/03/07(火) 15:58:28.99ID:CdvGJ9oAa >初心者ほど、あれほどWindowsを使うな
Rubyに関しては同意
っていうかRubyもうオワコンで良くね
Rubyに関しては同意
っていうかRubyもうオワコンで良くね
633デフォルトの名無しさん (ワッチョイ 8b40-oEU1)
2023/03/07(火) 15:59:29.31ID:eOMIe0zX0 よく分かんないんすけどWindowsでrubyを触ること自体あまり良くないんすか?
634デフォルトの名無しさん (ササクッテロロ Sp45-Ip/m)
2023/03/07(火) 16:12:13.76ID:09h4aa1hp Rubyとjava選べるならどっちやるよ?
635デフォルトの名無しさん (ワッチョイ 1302-W5Lg)
2023/03/07(火) 19:56:32.42ID:cliNPotC0 そもそもWindows上でプログラミングすることがあんまり推奨できない
パスとか漢字コードとか引っかかるところ大杉
パスとか漢字コードとか引っかかるところ大杉
636デフォルトの名無しさん (ワッチョイ eb01-oEU1)
2023/03/07(火) 20:15:30.84ID:uRhwCRx20 >>635
じゃあMacとかが良いんですかね?
じゃあMacとかが良いんですかね?
637614 (アウアウウー 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 ぐらいのパソコンでもキツイ
: 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 ぐらいのパソコンでもキツイ
638デフォルトの名無しさん (ワッチョイ fb66-oEU1)
2023/03/07(火) 20:50:01.17ID:PDMeVJPD0 シェア大きいデスクトップOSから小さいOSに行っても仕方がない。
個人のスクリプトなんて殆どはデスクトップのちょっとした自動化やツール作成に過ぎんしWebでもRubyは落ちていくだけなんだから。
プログラミング言語やそのライブラリが不出来なのが原因で
自分のOS乗り換えるとか馬鹿げすぎてる。
殆どの人にとって本末転倒。
個人のスクリプトなんて殆どはデスクトップのちょっとした自動化やツール作成に過ぎんしWebでもRubyは落ちていくだけなんだから。
プログラミング言語やそのライブラリが不出来なのが原因で
自分のOS乗り換えるとか馬鹿げすぎてる。
殆どの人にとって本末転倒。
639デフォルトの名無しさん (ワッチョイ 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
変えたのは新しいユーザー名でローカルアカウントを管理者で追加しただけっす。
まさかこれだけが原因だとは思ってもいなかった、名前変えただけで解決するとは。
数日のモヤモヤが消し飛んだ!よく眠れそう!!
これでどういうアプリケーション作ろうか考えながら日々を過ごせるデュフフ!
助かった!!!
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
640デフォルトの名無しさん (ワッチョイ 6984-iJGe)
2023/03/07(火) 21:45:18.69ID:vk4APYnr0641デフォルトの名無しさん (ワッチョイ 5310-AVBr)
2023/03/07(火) 22:39:47.28ID:msqWHE5U0 不出来なんて書くから荒れる
PythonやUnityと違って元々Windows想定してないだけで
無理やりポーティングした連中が周辺含めて面倒みきれてないのが悪い
PythonやUnityと違って元々Windows想定してないだけで
無理やりポーティングした連中が周辺含めて面倒みきれてないのが悪い
642614 (アウアウウー 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の事を知っている外人は、どこにもいない!
改訂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の事を知っている外人は、どこにもいない!
643デフォルトの名無しさん (アウアウウー Sa1d-IOBr)
2023/03/07(火) 23:30:51.04ID:ezUrq35ga WindowsとUnix互換の違いを理解していないと
RubyをWindowsで使った際に発生するトラブルに対処するのは難しい
それだけよ
RubyをWindowsで使った際に発生するトラブルに対処するのは難しい
それだけよ
644デフォルトの名無しさん (ブーイモ MM33-YseW)
2023/03/08(水) 01:55:42.14ID:qj+ABtmuM645デフォルトの名無しさん (ワッチョイ 6984-iJGe)
2023/03/08(水) 03:21:16.01ID:nSIfG2D90 とにかく、WindowsでWSL以外のUnix系環境は、一切入れないぐらい決め込んで、Windowsと付き合うぐらいのほうがいい
WSL以外に、CygwinとかMSYSとか入れるべきでない
(もちろん、分かっているならば、共存できるが、無駄以外の何ものでもない)
>>641
それを言うなら、Pythonもひどい
WSL以外に、CygwinとかMSYSとか入れるべきでない
(もちろん、分かっているならば、共存できるが、無駄以外の何ものでもない)
>>641
それを言うなら、Pythonもひどい
646デフォルトの名無しさん (ブーイモ MM33-QoLb)
2023/03/08(水) 07:16:52.80ID:USFtIbBoM WSLあるし今はあんま流行ってないけどvirtualboxでvagrant環境とかね
そういえばVagrantfileはrubyで書かれてたんだっけ
そういえばVagrantfileはrubyで書かれてたんだっけ
647デフォルトの名無しさん (アウアウエー Sae3-4fLd)
2023/03/09(木) 14:33:04.41ID:lc0skjdva648デフォルトの名無しさん (ワッチョイ a110-epgM)
2023/03/21(火) 08:40:41.77ID:HajkMPAQ0 Windows版ではじめたんですがirbのヘルプ機能やriで反応がなくなって困ってます
確実に再現できる手順はこんな感じ
1. irb を起動して Stri まで打ってタブ補完
2. ドキュメントの先頭が表示されたら Alt+d で全体表示
3. ヘルプのページャーを抜ける(lessを使ってるのでqを入力)
4. 画面がページャーから戻るがキーへの反応なし
ヘルプを活用したいのですが付き合い方を教えてください
確実に再現できる手順はこんな感じ
1. irb を起動して Stri まで打ってタブ補完
2. ドキュメントの先頭が表示されたら Alt+d で全体表示
3. ヘルプのページャーを抜ける(lessを使ってるのでqを入力)
4. 画面がページャーから戻るがキーへの反応なし
ヘルプを活用したいのですが付き合い方を教えてください
649デフォルトの名無しさん (ワッチョイ 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でもまだ直っていないとはどういうことであろう
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でもまだ直っていないとはどういうことであろう
650デフォルトの名無しさん (ワッチョイ c95f-ab+x)
2023/03/21(火) 18:33:52.65ID:C2q9ydgP0651デフォルトの名無しさん (ワッチョイ 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 を何度か繰り返すと発現します。
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 を何度か繰り返すと発現します。
652デフォルトの名無しさん (ササクッテロラ Sp9d-2rW7)
2023/03/21(火) 21:56:12.11ID:j1wCLUw7p スクールでRubyやってるんだが仕事でc#やれることになって辛すぎる
653デフォルトの名無しさん (ワッチョイ c95f-aodc)
2023/03/21(火) 22:00:08.53ID:lol8+tHB0654デフォルトの名無しさん (ワッチョイ a110-epgM)
2023/03/21(火) 22:39:27.58ID:HajkMPAQ0 発現したりしなかったりってのが気になったので
思い付きでaffinityを指定して使うコアを1個だけ指定したら発現しなくなりました。
めんどくさいんでもうこれで解決ってことで
思い付きでaffinityを指定して使うコアを1個だけ指定したら発現しなくなりました。
めんどくさいんでもうこれで解決ってことで
655デフォルトの名無しさん (ワッチョイ c95f-ab+x)
2023/03/21(火) 23:09:01.49ID:C2q9ydgP0 vcpkgとは別にrubyinstaller-3.2.1-1-x64.7zを解凍したやつあるからちょっと試してみた
Windows10だしWindowsターミナル入ってないからpowershellでやってみたけど再現しないな
Windows10だしWindowsターミナル入ってないからpowershellでやってみたけど再現しないな
656614 (アウアウウー 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
に書いたように、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
657デフォルトの名無しさん (ワッチョイ d2bd-+msU)
2023/03/26(日) 05:01:39.43ID:OlOn0nrS0 言語開発って続いてるの?
教科書でもPython でしょ
国が採択しない言語開発してどうするの?
負けを認めろよ
教科書でもPython でしょ
国が採択しない言語開発してどうするの?
負けを認めろよ
658デフォルトの名無しさん (ワッチョイ aebb-vk7m)
2023/03/26(日) 15:33:29.61ID:kD3idY+R0 Rubyはほんと、教材商法・スクール商法で見るだけのものになっちまった
659デフォルトの名無しさん (ワッチョイ dd5f-2p+o)
2023/03/26(日) 15:41:43.95ID:7zNZ7K4O0 Rails以外にも案外Ruby製のツールがあって
依存してるところまだまだ多いと思うよ
個人的にはまったく困らないけど
依存してるところまだまだ多いと思うよ
個人的にはまったく困らないけど
660デフォルトの名無しさん (アウアウウー Saa5-jS6D)
2023/03/26(日) 23:47:43.21ID:84pulk9Sa HiPro Tech 2022 によると、
バックエンドエンジニア : 80万円
Ruby : 90
Python, Go : 85
レガシー
C#.NET, ASP.NET, Java : 80
C : 70
バックエンドエンジニア : 80万円
Ruby : 90
Python, Go : 85
レガシー
C#.NET, ASP.NET, Java : 80
C : 70
661デフォルトの名無しさん (ブーイモ MMb6-8ZL+)
2023/03/27(月) 06:46:21.42ID:Zms4zMZFM 自分のいる会社だとJava(とかKotlinでAndroid)案件は50人規模とかあるけどRuby/Rails案件は4,5人規模が多い
個人的には圧倒的にRubyが好きだけど
個人的には圧倒的にRubyが好きだけど
662デフォルトの名無しさん (ワッチョイ 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を信じて使っていいのか不安になってきた
第12世代のCore i7そのまま(論理CPU20個)だとそこそこ起こる
Start-Process 'ruby' '-S irb' -NoNewWindow -Wait -PassThru | % { $_.ProcessorAffinity = 1 }
とかして論理CPU1個に指定すると起きない
古い第3世代のCore i7そのまま(論理CPU8個)だと起きない
微妙な競合が起きてる雰囲気だけどRubyを信じて使っていいのか不安になってきた
663デフォルトの名無しさん (ワッチョイ a9b1-VgrF)
2023/04/12(水) 23:29:31.69ID:CI3e3lhQ0 この前久しぶりに覗いてみたんだけどRubyがミニツクって死んだの?
664デフォルトの名無しさん (ワッチョイ 41f0-yO2X)
2023/04/13(木) 11:58:31.89ID:mRtRmWEi0 BFFアーキテクチャ嫌い
665614 (アウアウウー Sa05-cPl8)
2023/04/13(木) 13:37:33.70ID:locxrLlCa666デフォルトの名無しさん (ワッチョイ 41f0-yO2X)
2023/04/13(木) 15:27:38.87ID:mRtRmWEi0 Dockerでいいだろ
667デフォルトの名無しさん (ワッチョイ bd5f-JuRI)
2023/04/13(木) 15:35:08.69ID:EltVqAhD0 ターゲットがLinuxやなくホストOSだったら?
Webアプリ化できる範囲ならいいけど
Webアプリ化できる範囲ならいいけど
668デフォルトの名無しさん (アウアウウー 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]
漏れのやり方は、
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]
669デフォルトの名無しさん (ブーイモ MM27-ahoE)
2023/05/21(日) 22:49:59.52ID:ZMxA9gJ3M fedoraです
libruby.so.3.1 に依存してて
require open-uri
が失敗するようです。
3.2では動くようになりませんでしょうか?
libruby.so.3.1 に依存してて
require open-uri
が失敗するようです。
3.2では動くようになりませんでしょうか?
670デフォルトの名無しさん (ワッチョイ 6f5f-kgJw)
2023/05/22(月) 15:32:59.23ID:sAlsu4+P0 環境隠すしエラーそのまま貼らないからエスパー必至
自前ならビルドに失敗してる
解決できないならDockerコンテナ使ったほうがいい
自前ならビルドに失敗してる
解決できないならDockerコンテナ使ったほうがいい
671デフォルトの名無しさん (ブーイモ MM7f-kzDK)
2023/05/28(日) 05:56:00.24ID:Ie6k1/AyM 最近は出来るだけRubyは使わない方向としてる。理由は依存関係が複雑過ぎるからトラブル時に解決が困難なこと。texliveみたいなのあってもいいんじゃない?
マイナーなので症状でググっても、最近はヒットしないケースが殆んど。
既存でやむを得ないもの以外、外せるものは少しづつ外しているのが実情。
マイナーなので症状でググっても、最近はヒットしないケースが殆んど。
既存でやむを得ないもの以外、外せるものは少しづつ外しているのが実情。
672デフォルトの名無しさん (アウアウウー 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 を使いな。
あまり新しいのにすると、各モジュールが動かないかも
バージョンが違うのに
漏れは、Windows 10, WSL2, Ubuntu 18.04 で、
日本人が作った、多言語バージョンマネージャーのanyenv で、
ruby, node.js を入れているけど、同様のツールに、asdf もある。
anyenvでは、nodenv, pyenv, rbenv などを使う
他には、Docker を使う
君は、どのバージョンマネージャーを使っている?
そもそも、fedora は素人向きじゃない。
テスト環境用。まともに動かないだろ
Ubuntuの安定版、20.04/22.04 を使いな。
あまり新しいのにすると、各モジュールが動かないかも
673デフォルトの名無しさん (ブーイモ MMb9-fG05)
2023/06/09(金) 20:19:39.14ID:2LAkUH9UM どっちも so.3 にシンボリックリンクされてるな
674デフォルトの名無しさん (ワッチョイ cf05-IPSQ)
2023/08/01(火) 17:59:14.06ID:gmCvkwam0 独学の初心者です
どのクラスでも使う汎用的なメソッドを作りたいんですが
こういう時ってクラス外で定義して関数にするのか
それともモジュールにするのとどちらが良いのでしょうか?
というかモジュールの使い処がいまいち理解できていません
どのクラスでも使う汎用的なメソッドを作りたいんですが
こういう時ってクラス外で定義して関数にするのか
それともモジュールにするのとどちらが良いのでしょうか?
というかモジュールの使い処がいまいち理解できていません
675デフォルトの名無しさん (アウアウウー Sa1f-dFKk)
2023/08/01(火) 19:15:09.38ID:0t0I81Pra 理想的にはMathやFileUtilsを参考にmodule_function
クラス名を名前空間的に使ったクラスメソッドなんかも悪くはない
クラス名を名前空間的に使ったクラスメソッドなんかも悪くはない
676デフォルトの名無しさん (アウアウウー Sa1f-IPSQ)
2023/08/02(水) 09:23:39.40ID:4pI1Wfnva mix-in
677デフォルトの名無しさん (ワッチョイ cf05-IPSQ)
2023/08/03(木) 00:48:30.43ID:xJtx41VE0 ありがとうございます
どちらも試しましたが取りあえずmix-inの方でやっていく事にしました
どちらも試しましたが取りあえずmix-inの方でやっていく事にしました
678デフォルトの名無しさん (ワッチョイ e348-7tt+)
2023/09/02(土) 00:26:36.73ID:z/gB7JNN0 rubyで、あるファイルのファイル名を取得したいとき、
そのファイル名がUTF-8-MACの場合どうすればいいですか?
そのファイル名がUTF-8-MACの場合どうすればいいですか?
679デフォルトの名無しさん (ワッチョイ b35f-3GEm)
2023/09/02(土) 09:19:28.34ID:B59+Sgxx0 脳内ではつながってるんだろうけど質問になってない
680デフォルトの名無しさん (アウアウウー Sae7-fXI3)
2023/09/02(土) 14:46:55.42ID:mCX3wjBNa どうもしなくて良いのでは
681デフォルトの名無しさん (アウアウウー 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)
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)
682デフォルトの名無しさん (ワッチョイ a37d-+GqY)
2023/09/03(日) 04:30:11.51ID:viellF9f0 MAC からその他の環境であれば String#unicode_normalize() で NFC に変換しても良いでしょうけど
MAC から MAC であればそのまま何もしない方が良いと思う
MAC から MAC であればそのまま何もしない方が良いと思う
683デフォルトの名無しさん (ワッチョイ dee6-dtHc)
2023/09/23(土) 00:31:38.96ID:aQUNS12d0 rubyでOCRAを使って感動していましたが、
最近はOCRAでもエラーばかりです。
exe化の良い方法を教えてください。(教えて君ではなくおじいさんになってしまった。)
最近はOCRAでもエラーばかりです。
exe化の良い方法を教えてください。(教えて君ではなくおじいさんになってしまった。)
684デフォルトの名無しさん (ワッチョイ 6384-O3vA)
2023/09/23(土) 00:54:25.92ID:1rf3sz5t0 >>683
Neriでも使えばよいのでは?
Neriでも使えばよいのでは?
685デフォルトの名無しさん (ワッチョイ 6de6-lHjV)
2023/10/09(月) 08:07:49.09ID:2tIVtmSa0 Rubyって面白そうなのに
日経ソフトウェアで一度も特集されませんね。
日経ソフトウェアで一度も特集されませんね。
686デフォルトの名無しさん (ワッチョイ 6de6-lHjV)
2023/10/09(月) 08:09:27.02ID:2tIVtmSa0 今からRubyを勉強するぞ・・・
止めるなら今のうちだ。
それとも負けずに教えてください。
目標は欲しいツールを自分で作れるようになることです。
止めるなら今のうちだ。
それとも負けずに教えてください。
目標は欲しいツールを自分で作れるようになることです。
687デフォルトの名無しさん (ワッチョイ 6de6-lHjV)
2023/10/09(月) 08:11:52.40ID:2tIVtmSa0 たのしいRubyと独習Rubyを購入
5chのこれ、アクセスできなかった。
>>Rubyist Magazine - るびま
>>http://jp.rubyist.net/magazine/
正しくは、これかな、「https://magazine.rubyist.net/」
5chのこれ、アクセスできなかった。
>>Rubyist Magazine - るびま
>>http://jp.rubyist.net/magazine/
正しくは、これかな、「https://magazine.rubyist.net/」
688デフォルトの名無しさん (ワッチョイ 0a7a-lHjV)
2023/10/09(月) 10:53:42.22ID:5XBl3KCR0689デフォルトの名無しさん (ワッチョイ 0a7a-lHjV)
2023/10/09(月) 11:15:26.24ID:5XBl3KCR0 しかしこのスレではあまり話もできないわ
なんせエロCMで気が散ってしまうものw
なんせエロCMで気が散ってしまうものw
690デフォルトの名無しさん (ワッチョイ 6de6-lHjV)
2023/10/09(月) 12:12:55.62ID:2tIVtmSa0691デフォルトの名無しさん (ワッチョイ 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 のメソッドは、よく見ておいた方が良い。
パズルに使えるから
Ruby, Java はバックエンド技術者だから、プロや転職情報。
Linux, AWS を使う。
Ruby on Rails は、モダンなスタートアップ企業でフルリモート
一方、Javaは、SIer で客先、インターネット禁止。
中抜き・多重請負構造の土方。
家電量販店のバイトまでさせられる、イメージ
たのしいRuby・独習Rubyの次は、マネーフォワードの逆引きを読めばよい。
改訂2版 パーフェクトRubyもある
それ以降は、Railsになる。
筑波大学も使っている、Railsチュートリアル日本語版の古いRails 5 なら、無料で読める
これをスラスラ読むために、有名YouTuber が習得技術ロードマップを作っている。
雑食系エンジニア・KENTA とか、Rails専門学校・RUNTEQ の菊本とか。
Deanin はRailsの第一人者
最初はファイル・文字列処理と、
プログラミングのお題みたいな、ちょっとしたパズルを解くのが良い
Enumerable のメソッドは、よく見ておいた方が良い。
パズルに使えるから
692デフォルトの名無しさん (ワッチョイ 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 のメソッドは、よく見ておいた方が良い。
パズルに使えるから
Ruby, Java はバックエンド技術者だから、プロや転職情報。
Linux, AWS を使う。
Ruby on Rails は、モダンなスタートアップ企業でフルリモート
一方、Javaは、SIer で客先、インターネット禁止。
中抜き・多重請負構造の土方。
家電量販店のバイトまでさせられる、イメージ
たのしいRuby・独習Rubyの次は、マネーフォワードの逆引きを読めばよい。
改訂2版 パーフェクトRubyもある
それ以降は、Railsになる。
筑波大学も使っている、Railsチュートリアル日本語版の古いRails 5 なら、無料で読める
これをスラスラ読むために、有名YouTuber が習得技術ロードマップを作っている。
雑食系エンジニア・KENTA とか、Rails専門学校・RUNTEQ の菊本とか。
Deanin はRailsの第一人者
最初はファイル・文字列処理と、
プログラミングのお題みたいな、ちょっとしたパズルを解くのが良い
Enumerable のメソッドは、よく見ておいた方が良い。
パズルに使えるから
693691 (ワッチョイ 5ada-STj1)
2023/10/10(火) 05:55:23.51ID:1udEdqxq0 05:48:38.93
05:49:02.13
1クリックで2回も書き込んで、23秒もずれるなんて、
サーバー時間が狂いすぎ。めちゃめちゃ
05:49:02.13
1クリックで2回も書き込んで、23秒もずれるなんて、
サーバー時間が狂いすぎ。めちゃめちゃ
694デフォルトの名無しさん (ワッチョイ b671-lHjV)
2023/10/10(火) 07:23:24.95ID:BDsbHemP0 >>690
ワイはRubyでスレ読みすることにしたわ
ワイはRubyでスレ読みすることにしたわ
695691 (ワッチョイ 09fd-STj1)
2023/10/10(火) 13:14:18.71ID:tBEWn+zw0 データを取得してから、
ERB で、<% 〜 %>, <%= 〜 %> を使って、
または、Nokogiri を使って、HTML を作るとか、
Selenium Webdriver で、ブラウザを自動操作するなども出来る
ERB で、<% 〜 %>, <%= 〜 %> を使って、
または、Nokogiri を使って、HTML を作るとか、
Selenium Webdriver で、ブラウザを自動操作するなども出来る
696デフォルトの名無しさん (JP 0H66-HrfX)
2023/11/23(木) 14:41:35.50ID:3EANAdRCH プログラミング入門にピッタリなビジュアル言語「Pickcode」が登場
https://gigazine.net/news/20231122-pickcode/
PickRubyを作って利用者を増やそう
https://gigazine.net/news/20231122-pickcode/
PickRubyを作って利用者を増やそう
697デフォルトの名無しさん (ワッチョイ 87da-zwhO)
2024/01/23(火) 06:17:44.25ID:bl4lyV110 まっつん意外と趣味いいな
特にCAにはかなりこだわりがあるようだ
女性セレクト指示書
・松本の要望
ユニクロ
マクドナルド
スタバ店員
中学高校教師
弁護士
広報女性
人妻(子供なし)
CA(ANA、JAL)
・松本のNG
茶髪
モデル
飲み屋
美容師
アパレル
CA(LCC)
特にCAにはかなりこだわりがあるようだ
女性セレクト指示書
・松本の要望
ユニクロ
マクドナルド
スタバ店員
中学高校教師
弁護士
広報女性
人妻(子供なし)
CA(ANA、JAL)
・松本のNG
茶髪
モデル
飲み屋
美容師
アパレル
CA(LCC)
698デフォルトの名無しさん (ワッチョイ 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 コースなどもあるけど、これらはどうでしょう?
https://www.theodinproject.com
High quality coding education maintained by an open source community.
ウェブ開発者用で、無料のRuby on Rails, React コースなどもあるけど、これらはどうでしょう?
699デフォルトの名無しさん (ワッチョイ 65cb-0PBQ)
2024/03/31(日) 10:31:26.61ID:WiLTOmZx0700デフォルトの名無しさん (ワッチョイ 6531-snun)
2024/04/01(月) 16:21:53.67ID:K9bDc1jK0 ツール類で使われてたりする
最近のはPython/JS/Go/Rust製が大半だけども
最近のはPython/JS/Go/Rust製が大半だけども
701デフォルトの名無しさん (ワッチョイ 0d52-3Rlo)
2024/04/02(火) 18:22:15.63ID:X7j2yPVL0 インフラ系のツールは一昔前はRuby製多かったよね
最近ではその辺はみんなからGoかRustに行っちゃって絶滅危惧種だけど
最近ではその辺はみんなからGoかRustに行っちゃって絶滅危惧種だけど
702デフォルトの名無しさん (ワッチョイ 656c-0PBQ)
2024/04/03(水) 15:58:20.98ID:eNgZCM350 RubyはWeb開発だとしばらくは使われると思うけど、そのうち消えていくんだろうなあ。
Pythonの文法はあまり好きではないけど、一度主流になるとなかなかなくならない。
Pythonの文法はあまり好きではないけど、一度主流になるとなかなかなくならない。
703デフォルトの名無しさん (ワッチョイ 0db7-uvhZ)
2024/04/05(金) 00:26:53.75ID:zfuNjquS0 The Ruby on Rails Resurgence - DevOps.com
BY: JIM REMSIK ON APRIL 2, 2024
ttps://devops.com/the-ruby-on-rails-resurgence/
BY: JIM REMSIK ON APRIL 2, 2024
ttps://devops.com/the-ruby-on-rails-resurgence/
704デフォルトの名無しさん (JP 0H8f-cRB4)
2024/04/18(木) 12:30:57.95ID:ZlKVVvZaH a=",,,,".split(".")
と
a=",,,, ".split(".")
で
a[0]が違うのがやりにくい
と
a=",,,, ".split(".")
で
a[0]が違うのがやりにくい
705デフォルトの名無しさん (ワッチョイ 578b-EG7K)
2024/04/18(木) 14:22:14.91ID:KvlRtiX30 https://docs.ruby-lang.org/ja/latest/method/String/i/split.html
limit == 0 分割個数制限はなしで、配列末尾の空文字列を取り除く
limit < 0 分割個数の制限はなし
アホな仕様やな
limit == 0 分割個数制限はなしで、配列末尾の空文字列を取り除く
limit < 0 分割個数の制限はなし
アホな仕様やな
706デフォルトの名無しさん (ワッチョイ 7701-ynB1)
2024/04/18(木) 14:38:53.85ID:+9RZR0TW0 >>704
違う文字列だしsplitされないんだから結果も違って当然では?
違う文字列だしsplitされないんだから結果も違って当然では?
707デフォルトの名無しさん (ワッチョイ 093a-hIEc)
2024/08/17(土) 08:14:57.02ID:9Uz9N2V10 誰か、以下の間違いを文書係に伝えてください!
漏れは、やり方がわからないので
class CSV::Row - Ruby 3.3
https://docs.ruby-lang.org/ja/latest/class/CSV=3a=3aRow.html
field, delete の引数は、
header_or_index, minimum_index = 0
なのに、
self[header_or_index] = value
self[header, offset] = value
の引数は、なぜ2つに分けたのか?
self[header_or_index, minimum_index = 0] = value
と書けば良かったのでは?
それと、
self[header, offset] = value
のコード例が、
self[header_or_index] = value
の所に書いてあるのも間違い
それと、
fields(*headers_and_or_indices) -> Array
push(*args) -> self
のコード例に、Copy ボタンが無い
漏れは、やり方がわからないので
class CSV::Row - Ruby 3.3
https://docs.ruby-lang.org/ja/latest/class/CSV=3a=3aRow.html
field, delete の引数は、
header_or_index, minimum_index = 0
なのに、
self[header_or_index] = value
self[header, offset] = value
の引数は、なぜ2つに分けたのか?
self[header_or_index, minimum_index = 0] = value
と書けば良かったのでは?
それと、
self[header, offset] = value
のコード例が、
self[header_or_index] = value
の所に書いてあるのも間違い
それと、
fields(*headers_and_or_indices) -> Array
push(*args) -> self
のコード例に、Copy ボタンが無い
708デフォルトの名無しさん (ワッチョイ c195-Xp5Y)
2024/08/17(土) 11:44:54.96ID:xfy35KhQ0709707 (ワッチョイ 1fba-CjR1)
2024/08/20(火) 03:22:49.15ID:c93yCXJ/0 fields(*headers_and_or_indices) -> Array
values_at(*headers_and_or_indices) -> Array
与えられた引数に対応する値の、配列を返します。
要素の探索に、CSV::Row.field を使用しています。
[PARAM] headers_and_or_indices:
ヘッダの名前かインデックスか、Range のインスタンスか、
第 1 要素がヘッダの名前で、第 2 要素がオフセットになっている、
2 要素の配列をいくつでも指定します。
混在することができます。
[RETURN]
引数を与えなかった場合は、全ての要素を返します。
これも、オフセットを指定した場合は、
このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。
みたいに書くべきでは?
require "csv"
csv = CSV.new( "a,b,a,a\n1,2,3,4", headers: true )
table = csv.read
row_3 = table.first
p row_3.values_at( ["a", 3], "a", 1, ["a", 1], 3..4 )
# => ["4", "1", "2", "3", "4", nil]
>>708
誰か、漏れの代わりに文書係に伝えてください!
values_at(*headers_and_or_indices) -> Array
与えられた引数に対応する値の、配列を返します。
要素の探索に、CSV::Row.field を使用しています。
[PARAM] headers_and_or_indices:
ヘッダの名前かインデックスか、Range のインスタンスか、
第 1 要素がヘッダの名前で、第 2 要素がオフセットになっている、
2 要素の配列をいくつでも指定します。
混在することができます。
[RETURN]
引数を与えなかった場合は、全ての要素を返します。
これも、オフセットを指定した場合は、
このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。
みたいに書くべきでは?
require "csv"
csv = CSV.new( "a,b,a,a\n1,2,3,4", headers: true )
table = csv.read
row_3 = table.first
p row_3.values_at( ["a", 3], "a", 1, ["a", 1], 3..4 )
# => ["4", "1", "2", "3", "4", nil]
>>708
誰か、漏れの代わりに文書係に伝えてください!
710デフォルトの名無しさん (ワッチョイ 7f17-b/nf)
2024/08/24(土) 07:53:23.51ID:Jdsx7bDK0 コードのドキュメントを作るとき選択肢はRDocかYRADだけど、
どっちもデザインがいけてないしそもそも見づらくない?
YARDはテンプレートで変えられるみたいだけど公開されてるのが全然見つからないし
何とかならんのか
どっちもデザインがいけてないしそもそも見づらくない?
YARDはテンプレートで変えられるみたいだけど公開されてるのが全然見つからないし
何とかならんのか
711デフォルトの名無しさん (ワッチョイ 82f6-EMgm)
2024/08/30(金) 15:15:25.99ID:bL2sRbri0 漏れは、YARD を使っている
RDoc は古いから
RDoc は古いから
712デフォルトの名無しさん (ワッチョイ c67f-zLmf)
2024/09/24(火) 00:09:46.32ID:GmU0hAi20 perlは作り直したからダメになったんじゃねーよw
自然言語の性質をより多く取り込もうとしてパンクしたんだよ
メクラ
自然言語の性質をより多く取り込もうとしてパンクしたんだよ
メクラ
713デフォルトの名無しさん (アウアウエー Sa3f-mL/d)
2024/10/16(水) 16:27:37.73ID:KmdrWIoqa Ruby の仕様に、破壊的な変更が、2.0 以降、入っていないのは、
Python・Perlの言語開発者による独善的な?変更での失敗に学んで
いる から、だと思います。)
https://qiita.com/asip2k25/items/729d3426c1efa802f336
Python・Perlの言語開発者による独善的な?変更での失敗に学んで
いる から、だと思います。)
https://qiita.com/asip2k25/items/729d3426c1efa802f336
714デフォルトの名無しさん (ワッチョイ 4f3b-C5qv)
2024/10/16(水) 18:15:17.46ID:Ied0HKdA0 噛み合って無いね
わかってないだろうけど
わかってないだろうけど
715デフォルトの名無しさん (ワッチョイ 9f8c-lB4s)
2024/10/16(水) 19:22:38.15ID:c9nG6uvq0 何かをオワコンって言う奴は10年前の知識で話していて最新情報を追ってないのは確か
今までの経験では100%そうで、追ってる人や俺が話すと驚くかむすっと黙る
今までの経験では100%そうで、追ってる人や俺が話すと驚くかむすっと黙る
716デフォルトの名無しさん (ワッチョイ 8bda-KVDU)
2024/10/17(木) 01:03:41.63ID:WrCN832N0717デフォルトの名無しさん (ワッチョイ 4f92-C5qv)
2024/10/17(木) 14:45:08.02ID:jj0dHZW60718デフォルトの名無しさん (ワッチョイ fbb4-8XhU)
2024/10/17(木) 14:51:09.32ID:Bk2Ct1mh0719デフォルトの名無しさん (ワッチョイ 4fb2-C5qv)
2024/10/18(金) 11:48:33.77ID:HiJ5KVmO0 ITエンジニアが文化面語る時はかなり眉唾ではある
720デフォルトの名無しさん (スフッ Sdbf-l2+s)
2024/10/18(金) 21:19:11.55ID:jHxEOeuid 今年が2024年だということも判らなくなった痴呆老人なんだろう
721デフォルトの名無しさん (ワッチョイ 8bda-KVDU)
2024/10/18(金) 22:15:03.40ID:VQpP6XIE0 計算機科学とかは詳しくないが、そういう意味じゃRuby技術者認定試験とか暗記中心であれ持っててもプログラマーとして優秀とは言えないんだよなぁ。
言語仕様オタクを欲しいわけじゃないんだっての。
まだ基本情報技術者試験の方がプログラミング能力を測ってる。
言語仕様オタクを欲しいわけじゃないんだっての。
まだ基本情報技術者試験の方がプログラミング能力を測ってる。
722デフォルトの名無しさん (アウアウエー Sa3f-mL/d)
2024/10/19(土) 05:06:07.35ID:pGZZ/Z6Da 応用は?
723デフォルトの名無しさん (ワッチョイ 2101-mxqR)
2024/10/23(水) 21:40:40.15ID:eLjuv7c90 文系は応用のほうが受かる
724デフォルトの名無しさん (ワッチョイ 13de-0KS1)
2024/10/28(月) 00:35:24.93ID:7/XJVIz/0 >>716
奇数バージョンはちょっと……
奇数バージョンはちょっと……
725デフォルトの名無しさん (オッペケ Sr63-ADQg)
2025/02/05(水) 19:49:31.02ID:zszEGBd4r 本質的にrubyの話ではないかもしれませんが、
あるディレクトリを移動したい(別の名前に変更したい)と思います。
変更先のディレクトリが存在する場合、連番の次のディレクトリ名にしたいと思います。
(adir_1が使われてたらadir_2に)
これをatomicに行う方法はありますでしょうか。
adir_1が存在してたら失敗して、リトライするイメージです。
ロックファイルで制御するのは、ちょっと面倒かな、と思います
あるディレクトリを移動したい(別の名前に変更したい)と思います。
変更先のディレクトリが存在する場合、連番の次のディレクトリ名にしたいと思います。
(adir_1が使われてたらadir_2に)
これをatomicに行う方法はありますでしょうか。
adir_1が存在してたら失敗して、リトライするイメージです。
ロックファイルで制御するのは、ちょっと面倒かな、と思います
726デフォルトの名無しさん (ワッチョイ 3f00-9y6F)
2025/02/05(水) 20:28:56.97ID:Nxt5VJAz0 #!ruby
i=1
while FileTest.directory?("adir_#{i}")
i+=1
end
File.rename("hoge","adir_#{i}")
i=1
while FileTest.directory?("adir_#{i}")
i+=1
end
File.rename("hoge","adir_#{i}")
727デフォルトの名無しさん (ワッチョイ 8f01-80a/)
2025/02/06(木) 00:20:43.41ID:PcE8t6O40 >>725
どこまでアトミックにやりたいかによるんじゃないかな
ある名前で存在チェックをしてから
その名前でディレクトリを作成するまでの間に
先に同じ名前でディレクトリが作成されるのを防ぐ
というだけであればmkdirで可
(後続のrenameが必要なのでそこまで含めるとアトミックではない)
上書きのrename単体で見るとPOSIXではアトミックなのが保証されてる
windowsの場合(MoveFileExW + MOVEFILE_REPLACE_EXISTING)は
NTFSならアトミックだと言われている(非公式)
どこまでアトミックにやりたいかによるんじゃないかな
ある名前で存在チェックをしてから
その名前でディレクトリを作成するまでの間に
先に同じ名前でディレクトリが作成されるのを防ぐ
というだけであればmkdirで可
(後続のrenameが必要なのでそこまで含めるとアトミックではない)
上書きのrename単体で見るとPOSIXではアトミックなのが保証されてる
windowsの場合(MoveFileExW + MOVEFILE_REPLACE_EXISTING)は
NTFSならアトミックだと言われている(非公式)
728デフォルトの名無しさん (アウアウエー Sabf-J/8e)
2025/02/06(木) 10:03:45.63ID:GcFYqCgfa RubyOnWindowsではファイルロックの代わりにmkdirするのが常識
729725 (オッペケ Sr63-ADQg)
2025/02/06(木) 12:58:02.68ID:w5SuLeKbr ありがとうございます。
mkdirしたいと思います
mkdirしたいと思います
730デフォルトの名無しさん (アウアウウー Sa05-nY3F)
2025/04/12(土) 12:58:54.16ID:54aHIZAIaレスを投稿する
ニュース
- 【文春】永野芽郁(25)&田中圭(40)燃え上がる不倫LINE ★16 [Ailuropoda melanoleuca★]
- 刃物を持った人物暴れた けが人の情報も”東京メトロ南北線 [少考さん★]
- 永野芽郁「一部報道にあるやり取りはしていない」所属事務所が「本人に確認」改めて「交際等の事実はない」★5 [muffin★]
- 【米】スーパーのコメ価格、4233円 17週連続値上がり 前年同期比で2145円高く [ぐれ★]
- 【インバウンド】「日本はチープ、チープ。安いんです」と嬉しい表情 京都の観光地は外国人観光客で混雑 土産代に6万円かける人も★2 [ぐれ★]
- 【埼玉県警】「産後うつが辛かった」生後4か月の長男を水に沈め殺害したとして母親(38)を逮捕 長男抱えた状態でJR戸田駅構内で発見 [ぐれ★]
- 【実況】博衣こよりのえちえちロックマンX4🧪
- 【速報】東大前駅でジョーカー発生 [382895459]
- 【悲報】ドコモ「値上げします」au「じゃあうちも」ソフトバンク「ならうちも」各社揃い踏みで値上げ [566475398]
- 【速報】週刊文春、LINEトークのスクショさえ掲載していないと判明wwwwwwwwwwwwwwこれ許されたらもうなんでもアリだろ [606757419]
- 募集からスレタイ選ばないガイジは建てるな🏡
- 「知名度の高い市町村が一番多い都道府県」←どこやと思う? ★2